[FFmpeg-trac] #9201(undetermined:reopened): -c:v mpeg2video ignoring -qmin+qmax
FFmpeg
trac at avcodec.org
Fri Sep 5 06:09:43 EEST 2025
#9201: -c:v mpeg2video ignoring -qmin+qmax
-------------------------------------+-------------------------------------
Reporter: Warren | Owner: (none)
Young |
Type: defect | Status: reopened
Priority: normal | Component:
| undetermined
Version: unspecified | Resolution:
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Comment (by IvanDSM):
To aid in debugging this, I've come up with a minimal reproducible example
using public domain footage, with a much simpler set of command line
arguments.
First, download the public domain 1903 film of Alice in Wonderland from
Wikimedia Commons at the following link:
https://upload.wikimedia.org/wikipedia/commons/b/bb/Alice_in_Wonderland_%281903%29.ogv
Then, run the following command in the directory where you downloaded the
film:
{{{ffmpeg -i "Alice_in_Wonderland_(1903).ogv" -c:v mpeg2video -b:v 1024k
-maxrate:v 1575k -bufsize:v 921.6k -qmin:v 4 -qmax:v 20 -an alice.mkv}}}
The resulting output will show the non-working qmin/qmax problem:
{{{ Stream #0:0: Video: mpeg2video (Main) (mpg2 / 0x3267706D),
yuv420p(tv, progressive), 480x360 [SAR 1:1 DAR 4:3], q=2-31, 1024 kb/s,
29.97 fps, 1k tbn}}}
The live updating line at the bottom will also show values of q under 4
being used extremely often.
Adding -loglevel debug shows that the options are supposedly being
correctly parsed:
{{{
Splitting the commandline.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging
level) with argument 'debug'.
Reading option '-i' ... matched as input url with argument
'Alice_in_Wonderland_(1903).ogv'.
Reading option '-c:v' ... matched as option 'c' (select encoder/decoder
('copy' to copy stream without reencoding)) with argument 'mpeg2video'.
Reading option '-b:v' ... matched as option 'b' (video bitrate (please use
-b:v)) with argument '1024k'.
Reading option '-maxrate:v' ... matched as AVOption 'maxrate:v' with
argument '1575k'.
Reading option '-bufsize:v' ... matched as AVOption 'bufsize:v' with
argument '921.6k'.
Reading option '-qmin:v' ... matched as AVOption 'qmin:v' with argument
'4'.
Reading option '-qmax:v' ... matched as AVOption 'qmax:v' with argument
'20'.
Reading option '-an' ... matched as option 'an' (disable audio) with
argument '1'.
Reading option 'alice.mkv' ... matched as output url.
Finished splitting the commandline.
}}}
Please note that although I've opted to use {{{-qmin:v}}} and
{{{-qmax:v}}} in this example, removing the {{{:v}}} suffix makes no
difference.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/9201#comment:5>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list