Reputation: 59
I've been studying methods in reducing temporal redundancies in video compression and about the main concepts in MPEG video compression. I understand that I-frames are stored in similar way as JPEG compression and P-frames are computed as predicted motion vectors and the prediction error between the frame to be compressed and the motion predicted version of the frame.
My question is: how B-frames are computed and stored? Every search that I've made describes it as "motion vectors and transform coefficients" and they are "predicted or interpolated from an earlier and/or later frame". I know that two motion vectors are computed for each macroblock, but how I use them? Are these vectors coded and transmitted as in the case of a P-frame? The prediction error of the b-frame is between which estimatives?
Upvotes: 4
Views: 1173
Reputation: 2444
The B-frames are both, forward predicted and backward predicted from the last/next I-frame or P-frame
The following picture describe how it going to predict.
Upvotes: 3