Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
27th October 2006, 10:57 | #1 | Link |
Registered User
Join Date: Feb 2003
Location: The world is not enough...
Posts: 19
|
HC: resulting average bitrate
When I used HC to encode an SVCD-destination file, I noticed that the resulting file was way smaller than what I expected. You know, I like to fill up the CDs with as much bits as possible...
Having experienced this, I let the two encodes mentioned in the attached log file run. Please note that both come from the same input file, but the first encode used av/max of 4000/8000, whilst the second one used 2200/2470. The resulting average bitrate in the first encode was 3999, close enough to what I expected ;-) But the second one did not come out with the expected 2200; it only yielded 2118, resulting in a too small file and, as much as I understand about it, a smaller amount of precious bandwidth used than possible. Switching to *PROFILE best did not really change anything. So, what I would like to ask is: What can I do to increase the accuracy of the resulting average bitrate? Is it something I have in my hands, or is it a glitch in the encoder? ====================================== Here goes the logfile: ====================================== ----------------------------------------- | HCenc - MPEG2 encoder - rel. 0.19.0.0 | ----------------------------------------- input: f:\threemin.d2v output: F:\8000_4000.m2v -------------------- | encoder settings | -------------------- profile: NORMAL frames: 0 5021 framerate: 25.00 aspect ratio: 4:3 bitrate Kb/s: 4000 max. bitrate Kb/s: 8000 pulldown: no closed gops: no VBV check: yes scene change det.: yes interlaced: no goplen,B-pic: AUTO dc_precision: 9 scan method: ZIGZAG bias: 0 chapter frames: 0 time code: 0 0 0 0 CPU: SSE2 matrix: MPEG -------------------- | source stats | -------------------- nr. of frames in source: 5022 width*height: 720*576 fps: 25.00 nr. of frames to encode: 5022 frames to encode: 0 - 5021 --------------------- | encoding - pass 1 | --------------------- pass 1 encoding time: 0:04:02 (242 s) average fps: 20.8 -------------------------------- | encoding - intermediate pass | -------------------------------- bitrate set to: 4000000 b/s est. outfile length: 98086 kB intermediate encoding time: 0.0 s --------------------- | encoding - pass 2 | --------------------- pass 2 encoding time: 0:02:42 (162 s) average fps: 31.1 ------------------ | encoding stats | ------------------ total encoding time: 0:06:45 (405 s) intra matrix used 8 16 19 22 26 27 29 34 16 16 22 24 27 29 34 37 19 22 26 27 29 34 34 38 22 22 26 27 29 34 37 40 22 26 27 29 32 35 40 48 26 27 29 32 35 40 48 58 26 27 29 34 38 46 56 69 27 29 35 38 46 56 69 83 non-intra matrix used 16 17 18 19 20 21 22 23 17 18 19 20 21 22 23 24 18 19 20 21 22 23 24 25 19 20 21 22 23 24 26 27 20 21 22 23 25 26 27 28 21 22 23 24 26 27 28 30 22 23 24 26 27 28 30 31 23 24 25 27 28 30 31 33 nr. of gops: 350 nr. of frames: 5022 nr. of I-frames: 350 nr. of P-frames: 1396 nr. of B-frames: 3276 average quant (non linear): 4.393 VBV underflows detected: 0 VBV underflows fixed: 0 minimum bitrate: 2625 maximum bitrate: 7923 average bitrate: 3999 ================================================== ================================================== ----------------------------------------- | HCenc - MPEG2 encoder - rel. 0.19.0.0 | ----------------------------------------- input: f:\threemin.d2v output: F:\2470_2200.m2v -------------------- | encoder settings | -------------------- profile: NORMAL frames: 0 5021 framerate: 25.00 aspect ratio: 4:3 bitrate Kb/s: 2200 max. bitrate Kb/s: 2470 pulldown: no closed gops: no VBV check: yes scene change det.: yes interlaced: no goplen,B-pic: AUTO dc_precision: 9 scan method: ZIGZAG bias: 0 chapter frames: 0 time code: 0 0 0 0 CPU: SSE2 matrix: MPEG -------------------- | source stats | -------------------- nr. of frames in source: 5022 width*height: 720*576 fps: 25.00 nr. of frames to encode: 5022 frames to encode: 0 - 5021 --------------------- | encoding - pass 1 | --------------------- pass 1 encoding time: 0:04:04 (244 s) average fps: 20.6 -------------------------------- | encoding - intermediate pass | -------------------------------- bitrate set to: 2200000 b/s est. outfile length: 53947 kB intermediate encoding time: 0.0 s --------------------- | encoding - pass 2 | --------------------- pass 2 encoding time: 0:02:39 (159 s) average fps: 31.6 ------------------ | encoding stats | ------------------ total encoding time: 0:06:44 (404 s) intra matrix used 8 16 19 22 26 27 29 34 16 16 22 24 27 29 34 37 19 22 26 27 29 34 34 38 22 22 26 27 29 34 37 40 22 26 27 29 32 35 40 48 26 27 29 32 35 40 48 58 26 27 29 34 38 46 56 69 27 29 35 38 46 56 69 83 non-intra matrix used 16 17 18 19 20 21 22 23 17 18 19 20 21 22 23 24 18 19 20 21 22 23 24 25 19 20 21 22 23 24 26 27 20 21 22 23 25 26 27 28 21 22 23 24 26 27 28 30 22 23 24 26 27 28 30 31 23 24 25 27 28 30 31 33 nr. of gops: 350 nr. of frames: 5022 nr. of I-frames: 350 nr. of P-frames: 1396 nr. of B-frames: 3276 average quant (non linear): 7.769 VBV underflows detected: 0 VBV underflows fixed: 0 minimum bitrate: 1605 maximum bitrate: 2466 average bitrate: 2118 |
27th October 2006, 20:02 | #2 | Link |
HCenc author
Join Date: Nov 2003
Location: Netherlands
Posts: 570
|
In the first encode (4000/8000) there's a large difference between average/maximum bitrate so the VBR bitrate control works OK.
The second encode is almost like CBR because there's only a small difference between the average and maximum bitrate. HCenc can't do real CBR so it's harder to keep the avarage bitrate, setting *BIAS 100 might help in this case.
__________________
HCenc at: http://hank315.nl |
1st November 2006, 10:48 | #3 | Link |
Registered User
Join Date: Feb 2003
Location: The world is not enough...
Posts: 19
|
I also thought about the tight difference in max/ave for SVCD, because an 8000/2200 encode came out with exactly 2200 average for the given input.
Further tests showed that a difference of approx 1000 kBit/s appears to be sufficient, at least for the given source. But I'm a little afraid about using a too high max. bitrate for an SVCD which might then not be able to be played correctly in a stand-alone DVD player... And, as we are at it, the *BIAS parameter does not seem to have too much of an effect at all, at least with my 5000 frames PAL source encoded at the given rates (see logs below). Furthermore, HCenc complains about not being able to find the MPEG2 decoder when fed with -ini *INFILE f:\threemin.d2v *OUTFILE F:\3100_2200.m2v *LOGFILE F:\3100_2200.log *BITRATE 2200 *MAXBITRATE 3100 *FRAMES 0 5021 *ASPECT 4:3 *MATRIX mpeg while HCgui does not feel any of these problems using the same ini. And here are the *BIAS log infos, shortened for the more related parts: ----------------------------------------- | HCenc - MPEG2 encoder - rel. 0.19.0.0 | ----------------------------------------- input: f:\threemin.d2v output: F:\2590_2200_BIAS.m2v -------------------- | encoder settings | -------------------- profile: NORMAL frames: 0 5021 framerate: 25.00 aspect ratio: 4:3 bitrate Kb/s: 2200 max. bitrate Kb/s: 2590 pulldown: no closed gops: no VBV check: yes scene change det.: yes interlaced: no goplen,B-pic: AUTO dc_precision: 9 scan method: ZIGZAG bias: 90 <...> minimum bitrate: 1790 maximum bitrate: 2588 average bitrate: 2125 ================================================== ================================================== ----------------------------------------- | HCenc - MPEG2 encoder - rel. 0.19.0.0 | ----------------------------------------- input: f:\threemin.d2v output: F:\2590_2200_BIAS.m2v -------------------- | encoder settings | -------------------- profile: NORMAL frames: 0 5021 framerate: 25.00 aspect ratio: 4:3 bitrate Kb/s: 2200 max. bitrate Kb/s: 2590 pulldown: no closed gops: no VBV check: yes scene change det.: yes interlaced: no goplen,B-pic: AUTO dc_precision: 9 scan method: ZIGZAG bias: 95 <...> minimum bitrate: 1737 maximum bitrate: 2589 average bitrate: 2124 ================================================== ================================================== ----------------------------------------- | HCenc - MPEG2 encoder - rel. 0.19.0.0 | ----------------------------------------- input: f:\threemin.d2v output: F:\2590_2200_BIAS.m2v -------------------- | encoder settings | -------------------- profile: NORMAL frames: 0 5021 framerate: 25.00 aspect ratio: 4:3 bitrate Kb/s: 2200 max. bitrate Kb/s: 2590 pulldown: no closed gops: no VBV check: yes scene change det.: yes interlaced: no goplen,B-pic: AUTO dc_precision: 9 scan method: ZIGZAG bias: 100 <...> minimum bitrate: 1740 maximum bitrate: 2589 average bitrate: 2124 ================================================== ================================================== ----------------------------------------- | HCenc - MPEG2 encoder - rel. 0.19.0.0 | ----------------------------------------- input: f:\threemin.d2v output: F:\2590_2200_BIAS.m2v -------------------- | encoder settings | -------------------- profile: NORMAL frames: 0 5021 framerate: 25.00 aspect ratio: 4:3 bitrate Kb/s: 2200 max. bitrate Kb/s: 2590 pulldown: no closed gops: no VBV check: yes scene change det.: yes interlaced: no goplen,B-pic: AUTO dc_precision: 9 scan method: ZIGZAG bias: 50 <...> minimum bitrate: 1701 maximum bitrate: 2588 average bitrate: 2117 ================================================== ================================================== ----------------------------------------- | HCenc - MPEG2 encoder - rel. 0.19.0.0 | ----------------------------------------- input: f:\threemin.d2v output: F:\2590_2200_BIAS.m2v -------------------- | encoder settings | -------------------- profile: NORMAL frames: 0 5021 framerate: 25.00 aspect ratio: 4:3 bitrate Kb/s: 2200 max. bitrate Kb/s: 2590 pulldown: no closed gops: no VBV check: yes scene change det.: yes interlaced: no goplen,B-pic: AUTO dc_precision: 9 scan method: ZIGZAG bias: 5 <...> minimum bitrate: 1562 maximum bitrate: 2588 average bitrate: 2084 |
2nd November 2006, 00:46 | #4 | Link | |
HCenc author
Join Date: Nov 2003
Location: Netherlands
Posts: 570
|
Quote:
The GUI reads the D2V file to find out which DLL is needed, then it copies the right DLL into the HC directory as DGDecode.dll.
__________________
HCenc at: http://hank315.nl |
|
|
|