[FFmpeg-trac] #10150(undetermined:open): Variable framerate with a maximum value

FFmpeg trac at avcodec.org
Wed Jul 31 10:09:45 EEST 2024


#10150: Variable framerate with a maximum value
-------------------------------------+-------------------------------------
             Reporter:  Zoont        |                    Owner:  (none)
                 Type:  defect       |                   Status:  open
             Priority:  important    |                Component:
                                     |  undetermined
              Version:  git-master   |               Resolution:
             Keywords:  fps          |               Blocked By:
  framerate vfr cfr vsync            |
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
Comment (by Tynach):

 Replying to [comment:5 Gyan]:
 > There's another side-effect of disallowing `-r` in VFR mode. Some
 encoders (most notably x264) modulate their ratecontrol based on the set
 framerate. Higher the rate, lower the quality. This could earlier be used
 to encode sparse slideshow streams while controlling output stream size.
 Now ffmpeg is limited to using the input probed frame rate if VFR is to be
 maintained. And the wrapper sets the rate based on the avctx framerate.

 I did some more digging, and found that 'GyanD' wrote the original code.
 Am I correct in assuming that's you? The commit message explicitly
 mentions that `-fpsmax` is meant for ''clamping'' the framerate, but that
 wasn't clearly stated in the documentation (commit
 d99cc1782563672bcdb46fb5ec51135847db8c99). If it had been, perhaps Elenril
 wouldn't have thought it was contradictory. As it is, `-fpsmax` is now
 basically identical to `-r`, which defeats the entire purpose.

 I'm getting kinda tired of having to use an old build of ffmpeg to make
 sure this works, and am tempted to just put in the work to get this re-
 added myself.. But I don't know much about how this code is organized, and
 I don't even understand the tests.

 If everyone else is stretched too thin, I understand, but would appreciate
 at least some guidance on this. If it'd be more effort to get someone new
 caught up with everything than to just make the changes (after all, the
 code was there, even if it ''has'' been rearranged a bit since it was
 originally written), then it's probably best to do that instead.
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/10150#comment:6>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list