View Full Version : Does B-Frames degrade quality?
I'm sorry if this question is dumb but after encoding with XviD for a while, I realized that a clip with b-frames always has higher average quantizer (afaik this means lower quality) than a clip without b-frames at the same file size...So is right to conclude that using b-frames will degrade quality? :confused:
I dont think anyone else will bother answering this, since you should use the search function for this, but I am in a good mood.
B-frames can use a higher quantizer, since they dont affect the following frames. These saved bits can then be used to allow for lower quantizers on P-frames or I-frames, where they do more good.
So, at least in theory, using B-frames should allow for a higher average/total quality at a given bit-budget when compared to not using B-frames. Of course this all depends on how the codec handles B-frames, how many in a row, how high the quantizers etc.
I suggest you use the search funtion to find out more about this, as it has been discussed extensively.
Ok, thanks for your answer and sorry for asking a question which was discussed before.
sungey
5th May 2003, 00:37
hmm if u want to see how much bframe "degrade" quality ... you can try this ...
Use 1 pass constant quant encoding
1) encode a clip using no bframe
2) encode the same clip using bframe settings u like to use .. eg
2 150 100
3) encode the same clip using bframe settings 2 500 200 or higher
Using vdub..
Open the clip produced in Step 3 ... u can see bad part of the video .. that's where bframe are used. Remember the location and frame number.
Open the clip produced in Step 1 and 2 in 2 separate vdub. Goto the frame number .. and compare...
Cheers ^^
Prettz
5th May 2003, 06:33
Originally posted by sungey
hmm if u want to see how much bframe "degrade" quality ... you can try this ...
Use 1 pass constant quant encoding
1) encode a clip using no bframe
2) encode the same clip using bframe settings u like to use .. eg
2 150 100
3) encode the same clip using bframe settings 2 500 200 or higher
Using vdub..
Open the clip produced in Step 3 ... u can see bad part of the video .. that's where bframe are used. Remember the location and frame number.
Open the clip produced in Step 1 and 2 in 2 separate vdub. Goto the frame number .. and compare...
Cheers ^^
You can also make an avisynth script that opens the three clips and combines them on a frame-by-frame basis using the Interleave() function. I find that works the best.
edit: forgot to mention that you need to open the avs script in virtualdub, not in a video player. And I think if you need it resized, you should do it virtualdub with a precise bicubic (or might there be a problem with doing that?)
Or use ffdshow for viewing. In options turn OSD on, and choose "frame type" or similar, also choose "frame mean quantizer".
Now You get frame type and mean quantizer information on the top of the video. And if You use latest version of bsplayer (maybe some other player will work also) it is possible to decrease playback speed. Now every frame can be seen with corresponding information, becasue the slowed down video. This way it is easy to see artifacts and compare quality.
HarryM
5th May 2003, 12:27
Using of b-frames degrade the quality, of course. But only absolutely.
But... b-frames make higher compressibility of video -> overall quality is higher :D
kastro68
5th May 2003, 16:16
I think if -h was still here this is what he would probably say about b-frames.
-What's important is not what each frame looks like individually, but how the video looks during playback.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.