1

This question has no practical importance for a regular video production pipeline, but nonetheless it's something I find fascinating because it would imply video codecs use temporal sub-sampling methods in order to reduce bitrate, and those methods are controlled by the frame rate at encode time. So, here it goes:

Suppose I have a set of lossless images (like scanned frames on a film strip) I want to encode with a certain video compression algorithm, such as H.264. Assuming that the frames inside the newly compressed video stream will be later decompressed and played back at their correct speed by means of extracting the raw frames and not playing them back over a regular player, the specified framerate in which I encode those images shouldn't matter at all to overall quality of every individual frame, given a constant quality setting. Or, is it?

It makes sense to think that modern codecs would use some form of coarser temporal estimation when frame rates are higher, due to the fact that the jitter effect of the motion compensation could be smoothed out over several frames, as opposed to a low framerate video where motion and quantization artifacts would become much more noticeable.

Were this false, this would also imply that, if I wanted to convey more data / higher quality over a bitrate-constrained medium, such as YouTube, I could simply re-encode my video with half the framerate and ask users to play it back at twice the speed, since the bitrate limit would then be doubled over the regular speed video (minus any audio issues).

I haven't done any scientific tests yet, but before digging into the data analysis (and trying to find a lossless video corpus to do so), I'd like to ask the community if any experiments have been made about this.

2

This depends on the specific encoder, and the compression standard, by itself, may not have anything to say about it.

x264, which encodes to H.264, takes frame duration, into account, in its ratecontrol algorithm.

From the source code (my emphasis):

Ratecontrol lowers relative quality at higher framerates and the reverse at lower framerates; this serves as the center of the curve.

where this refers to the frame duration for the default fps of 25.

This is further compounded by the setting of buffer sizes, important for network streaming or hardware players, and which are defined in terms of media duration, not frame count.

  • So there is correlation between framerate and individual frame quality, at least in x264's case. Does the H.264 standard has nothing to say on the subject and this decision is entirely left up to encoder implementations, or is this even prescribed on older (MPEG-2) or newer (H.265, VP9) standards? – MVittiS Oct 4 '17 at 16:35
  • 1
    The H264/5 standards are primarily concerned with bitstream syntax, which is relevant for parsers and decoders. Encoding algorithms are not addressed. I suspect the same is true of VPx codecs as well. – Gyan Oct 4 '17 at 17:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.