Log in

View Full Version : how xvid control bitrate?


tim__huang
29th June 2004, 04:58
hi..

i try to use xvid,and i test it used xvid_encraw.

i finded that

i always set bitrate 300.

if i set pass module the quant of every frame is 2,and compress ratio is approximate 4.

if i set signle module the quant of back frame is always 31,and comparess ratio is approximate 40.

so i couldn't know how xvid control bitrate.

lordadmira
29th June 2004, 14:13
Hi. Are u trying to do a 2-pass encode? On the first pass the quantizer for every frame will be 2 and Xvid will record the frame sizes in a statistics file. Then u have to do the second pass. This time when u put 300 kbps in for the bitrate, Xvid will use the statistics from the first pass to make this second pass come out at about 300 kbps. If u are getting quantizer 31's it could be that 300 kbps is too low for ur video. That is a very low bitrate and is only good for small simple videos. It all depends on what ur trying to encode. Try around 1000 kbps.

Here's a good FAQ for u to read. http://www.vslcatena.nl/~ronald/docs/xvidfaq.html

LA

sysKin
29th June 2004, 14:17
In other words, xvid_encraw is just a simple example of how to use xvidcore. It's definitely not an encoding application.

tim__huang
30th June 2004, 02:31
i have try two pass mode,and the result is same.

below is my test result:
E:\test\xvid>xvid_encraw -i bus_cif.yuv -type 0 -w 352 -h 288 -o 1000kbps_bus.xvid -framerate 25.0 -bitrate 1000 -pass1 1000kbps.pass1 -pass2 1000kbps.pass2 -quality 2 -asm -max_bframes 1

xvid_encraw - raw mpeg4 bitstream encoder written by Christoph Lampert 2002-2003


0: key=2, time= 15, len= 43321
1: key=0, time= 0, len= 0
2: key=0, time= 16, len= 33841 | type=I, quant= 2, len= 43321
3: key=0, time= 16, len= 7589 | type=B, quant= 4, len= 7589
4: key=0, time= 15, len= 29888 | type=P, quant= 2, len= 33841
5: key=0, time= 16, len= 8441 | type=B, quant= 4, len= 8441
6: key=0, time= 0, len= 29206 | type=P, quant= 2, len= 29888
7: key=0, time= 0, len= 7615 | type=B, quant= 4, len= 7615
8: key=0, time= 0, len= 29204 | type=P, quant= 2, len= 29206
9: key=0, time= 0, len= 7143 | type=B, quant= 4, len= 7143
10: key=0, time= 0, len= 28222 | type=P, quant= 2, len= 29204

E:\test\xvid>xvid_encraw -i bus_cif.yuv -type 0 -w 352 -h 288 -o
1000kbps_bus.xvid -framerate 25.0 -bitrate 1000 -pass1 1000kbps.pass1 -pass2 1000kbps.pass2 -quality 2 -asm -max_bframes 0

xvid_encraw - raw mpeg4 bitstream encoder written by Christoph Lampert 2002-2003


0: key=2, time= 0, len= 43321 | type=I, quant= 2, len= 43321
1: key=0, time= 16, len= 32196 | type=P, quant= 2, len= 32196
2: key=0, time= 16, len= 26795 | type=P, quant= 2, len= 26795
3: key=0, time= 15, len= 26361 | type=P, quant= 2, len= 26361
4: key=0, time= 16, len= 26382 | type=P, quant= 2, len= 26382
5: key=0, time= 16, len= 25938 | type=P, quant= 2, len= 25938
6: key=0, time= 15, len= 26538 | type=P, quant= 2, len= 26538
7: key=0, time= 0, len= 26668 | type=P, quant= 2, len= 26668
8: key=0, time= 0, len= 26189 | type=P, quant= 2, len= 26189
9: key=0, time= 0, len= 25842 | type=P, quant= 2, len= 25842
10: key=0, time= 0, len= 25402 | type=P, quant= 2, len= 25402

E:\test\xvid>xvid_encraw -i bus_cif.yuv -type 0 -w 352 -h 288 -o
500kbps_bus.xvid -framerate 25.0 -bitrate 500 -pass1 500kbps.pass1 -pass2 500kbps.pass2 -quality 2 -asm -max_bframes 0

xvid_encraw - raw mpeg4 bitstream encoder written by Christoph Lampert 2002-2003

0: key=2, time= 0, len= 43321 | type=I, quant= 2, len= 43321
1: key=0, time= 16, len= 32196 | type=P, quant= 2, len= 32196
2: key=0, time= 16, len= 26795 | type=P, quant= 2, len= 26795

E:\test\xvid>xvid_encraw -i bus_cif.yuv -type 0 -w 352 -h 288 -o
500kbps_bus.xvid -framerate 25.0 -bitrate 500 -pass1 500kbps.pass1 -pass2 500kbps.pass2 -quality 2 -asm -max_bframes 1

xvid_encraw - raw mpeg4 bitstream encoder written by Christoph Lampert 2002-2003


0: key=2, time= 16, len= 43321
1: key=0, time= 0, len= 0
2: key=0, time= 15, len= 33841 | type=I, quant= 2, len= 43321
3: key=0, time= 0, len= 7589 | type=B, quant= 4, len= 7589