Frames

<Dark_Shikari> I-frame == intra frame, no reference to previous frames (Standalone image)

<Dark_Shikari> P-frame == references previous frames

<Dark_Shikari> B-frame == references both future and past frames

<Dark_Shikari> so for example PBBP is written to the bitstream as PPBB

<Dark_Shikari> so the BBs can reference data in *either* P-frame

<Dark_Shikari> disadvantage: P-frames are farther apart, so the residual is larger in the second P-frame in that example

<Dark_Shikari> advantage: the B-frames are more efficiently coded

<Dark_Shikari> the optimal number of B-frames in a given section of the video is that which gives the best tradeoff between those two

also see: http://en.wikipedia.org/wiki/B-frame#Bi-directional_predicted_frames_.28or_slices.2C.29_a.k.a._B_pictures