[Mp4-tech] Smallest Possible (Skipped) Frame?
nick hunter
doropantis gmail.com
Fri May 16 13:33:56 EDT 2008
Hi,
I would like to understand the size of the smallest possible encoded
frame and am not sure if I understand all parameters involved:
- For CAVLC the skip_run entry could be set to the number of
macroblocks in the frame in order to skip all blocks.
- For CABAC the mb_skip_flag is set for all block and the CABAC
encoding should aggregate several blocks to one bit, depending on the
cabac_init_idc, _not_ depending on previous slices. The resulting size
is a function of the frame size and the CABAC coding. Is there an easy
way to look up that value?
When using JM 13.0 code (VC6 or VC2005) on IDENTICAL frames, there is
1 MBlk that is not skipped (SD, more on HD).
When I look at the encoder trace, the bitcounter marked with @ in the
start of the line indicate that there are only 10 cabac bits used to
encode the skip_flags, while the B frame is 200 bits in size according
to the screen output.
Any hints for the following questions are appreciated:
- Do the @ positions in the encoding trace really indicate how many
bits have been used at encoding?
- How can I determine the theoretical minimum of the frame for CABAC / CAVLC?
- I assume there is a maximum number of skipped mb that can be encoded
with a single CABAC symbol / bit, where can I find that?
- Is it a codec limitation that there is a non skipped block when an
identical b frame is encoded or is it a JM imprecision?
- Is the minimum frame size indeed smaller using CAVLC (using
skip_run) than CABAC (skipping all blocks)?
Thank you!
Nick
More information about the Mp4-tech
mailing list