From: Scott S. <sco...@gm...> - 2006-01-23 18:43:11
|
On 1/23/06, Andrew Stevens <and...@mn...> wrote: > Hi Scott, > > I've seen several commercial DVD's with closed GOP's that have actual > > B frames preceding the I frame. > > > I must assume (though I have no way of testing) that these B frames > > comprise only of forward predictors. > > If the B-frames *precede* the I frame they must belong (if it is legal MP= EG) > to the previous GOP. Sounds like they're simply being 'mis-placed' in the > VOBU of the closed GOP by the multiplexer. What are their temporal refere= nces > vs that of the I frame? they are temporally before the I frame. I=3D2, B=3D0, B=3D1, P=3D5, etc Heck on Bullitt the first GOP has preceding B frames! And the GOP is marked closed. > This basically mildly bonkers. A GOP with n initial B frames starts eith= er: > > I(0)P(n+1)B(1)...B(n) (Closed GOP) or > > I(n)B(0)...B(n-1)P(n+1) (Open GOP) choice 3: I(2)B(0)B(1)P(5) (Closed GOP) :-) me likey dvd The only logical conclusion I can come up with is that the B frames only contain forward predictors, not backward or bidrectional predictors. It seems they really like B frames. I've decided that B frames are not to enhance compression, but instead to assist in FF/REW and seeking. You can FF by only showing P frames, and it doesn't require any extra decoding power over what is already necessary to decode a movie. Same for REW, except you need to be able to buffer all the P frames for a GOP (and thus be decoding 1 GOP behind what you're displaying). Seeking is enhanced because you only have to decode the P frames to get to the middle of a GOP. Oh and of course there is less DCT error when you use B frames. It matches that Steven has seen -- that B frames don't really save you any space. Sure they're smaller but then the P frames are larger -- it's all a tradeoff. The bigger thing is that by using B frames you can have larger GOPs (because of the seeking and DCT error cases that I noted above), and larger GOP's generally mean better compression. -- Scott |