[XviD-devel] xvid bframe encoder question
chn at kbw.ch
Fri Dec 26 16:06:11 CET 2003
I have a question about using the encoder with b-frames.
If I like to encode a movie, I set up the encoder and then give it
frame by frame.
Let's say the encoder choses to encode following:
I B B P B B P ...
Then the first time I call xvid_encore(...), I got the I frame back.
The next time, the encoder stores the frame in the b-frame queue, right?
What if the encoder choses that my last frame is a b frame?
Then the frame get stuck in the bitstream and I have no data.
How can I get the data back?
And the following about decoding such a sequence:
For the pattern above, I get for my test sequence the following data
frame 1: 22519 bytes
frame 2: 0 bytes
frame 3: 0 bytes
frame 4: 23035 bytes
with debugging information enabled, the following from the encoder (if
this helps you answering my questions):
*** XXXXXX bf: head=0 tail=0 queue: head=1 tail=1 size=0
*** IFRAME bf: head=0 tail=0 queue: head=1 tail=1 size=0
*** BFRAME (store) bf: head=0 tail=0 queue: head=2 tail=2 size=0
*** BFRAME (store) bf: head=0 tail=1 queue: head=3 tail=3 size=0
*** XXXXXX bf: head=0 tail=2 queue: head=4 tail=4 size=0
*** PFRAME bf: head=0 tail=2 queue: head=4 tail=4 size=0
decoding this, (please correct my if something's wrong):
If I like to decode the first frame, then I give it the 22519 bytes to
And what if I like to decode the second frame? I got no data from this
Any help would be appreciated.
More information about the XviD-devel