Observations regarding empty P-frames in 24N mode

dasbin

Active member
I noticed something that I haven't seen discussed before.

With 24 Native checked, it is possible to get more than the usual "one at the end of GOP" 192-byte P-frame per GOP. In fact, I was able to get more empty frames than real ones using an extreme ratio of very low bitrate combined with very high Overall bitrate.
This makes me wonder: perhaps the encoder inserts these empty frames when it believes that it will exceed a specific bitrate in a specific GOP. It leaves the rest of the GOP empty in order to not exceed the bitrate.

This should also mean it's possible to minimize the appearance of empty frames by using a high bitrate.

Capture.jpg
 
Last edited:
While the Stream Parser chart you posted shows an extreme case, I've seen multiple empty 192-byte P-frames in numerous test videos of my own. These files may appear to play back normally, but the empty P-frames will make the video appear to pause briefly for their duration.
 
That's interesting. Can you repeat it at will? Are you convinced that this happens because of the high Overall Bitrate? Could you possibly run the same test with different Overall Bitrates but everything else the same and see if the pattern changes? This would be a good thing to know.

Chris
 
Yes it is easily repeatable. I think that the high Overall bitrate definitely exacerbates the problems by allowing very large individual frames. I'm still not completely certain what exactly Overall does, but I think a component of its function is to say "this is very approximately how big I could conceivably make any single frame." (edit: I should note that this appears to be a sort of 'soft limit' and can be exceeded by forcing tons of detail and motion at the encoder, it just makes it harder to do for more frames with a lower Overall). When this is much higher than the bitrate, this means that the overall BPS is "used up" much earlier than it should be within a GOP, so the encoder inserts empty frames rather than risk exceeding bitrate (and I guess therefore exceed possible write speed or something - the only real explanation for why it would 'want' to behave this way rather than it being a bug).
I will try to confirm later by using different Overall settings to see how it affects this.
 
Very weird that you got this pattern. I have shot the start chart at least 50 times with an FSH of 48 mill and an overall of 86mill and have never gotten anything like your pattern. My I frame sizes will shoot up to 710 (class 10 card), I'll get a lot of 192s (on the star chart) and sometimes the GOP will completely break down and I'll get a GOP of 6 or 7 instead of the usual 4 I've set it to, but your errors are extreme. I would think if the Overall was something that could trash the codec I would get your same error pattern everytime and I never do. I'll add that I shoot all day long with these settings in 24N and only get errors on static grass shots or rustling leaves frames. My action, whip pans, hand held and tracking shots all come out great. If you're willing to live with intermittent write errors (usually predictable if you know what scenes will trigger it) shooting 24P native has been great. Extremely filmic and easy to edit with. But action looks unacceptable unless the GOp is lowered to 5 or 4 (I'm at 4).

Yes it is easily repeatable. I think that the high Overall bitrate definitely exacerbates the problems by allowing very large individual frames. I'm still not completely certain what exactly Overall does, but I think a component of its function is to say "this is very approximately how big I could conceivably make any single frame." (edit: I should note that this appears to be a sort of 'soft limit' and can be exceeded by forcing tons of detail and motion at the encoder, it just makes it harder to do for more frames with a lower Overall). .
 
Very weird that you got this pattern. I have shot the start chart at least 50 times with an FSH of 48 mill and an overall of 86mill and have never gotten anything like your pattern.

That's because my FSH was set at 10 mill (that's less than the default GH1 bitrate even) and overall 110 mill.

Would never actually shoot like that obviously. I was trying to figure out what was causing the empty frames, and found it by doing this, I think.
 
Back
Top