[Libav-user] qmin qmax settings for libx265 (HEVC) not functional
Taha Ansari
mtaha.ansari at gmail.com
Fri Jun 6 07:50:58 CEST 2014
Ping:
On Thu, Jun 5, 2014 at 4:43 PM, Taha Ansari <mtaha.ansari at gmail.com> wrote:
>
> Hi,
>
>
>
>> First some background - I can use following command:
>>
>> ffmpeg -i temp.mp4 -c:v libx264 -qmin 40 -qmax 51 -y output.mp4
>>
>> to generate output.mp4 file in H264 format; with variance in qmin and
>> qmax parameters; the output is as expected: with different values of
>> qmin/qmax, resultant output file is of different size 'and' quality.
>>
>> So we apply same principle to libx265, using this command line:
>>
>> ffmpeg -i temp.mp4 -c:v libx265 -qmin 40 -qmax 41 -y output.mp4
>>
>> we can see there is no complaining about any wrong parameters, but what's
>> observed is: no matter what value we select for qmin/qmax, resultant output
>> quality 'and' size are always the same.
>>
>> Does anyone know why? Are these settings currently not supported or do we
>> need to add more parameters in command line to make it work?
>>
>> Just for reference, here is output for "ffmpeg -i temp.mp4 -c:v libx264
>> -qmin 40 -qmax 51 -y output.mp4 " (which works as expected):
>>
>>
>> *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
>> C:\Users\Admin\Desktop\Demo Videos>ffmpeg -i temp.mp4 -c:v libx264 -qmin
>> 40 -qma
>> x 51 -y output.mp4
>> ffmpeg version N-63439-g96470ca Copyright (c) 2000-2014 the FFmpeg
>> developers
>> built on May 25 2014 22:05:32 with gcc 4.8.2 (GCC)
>> configuration: --disable-static --enable-shared --enable-gpl
>> --enable-version3
>> --disable-w32threads --enable-avisynth --enable-bzlib
>> --enable-fontconfig --ena
>> ble-frei0r --enable-gnutls --enable-iconv --enable-libass
>> --enable-libbluray --e
>> nable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm
>> --enable-libi
>> lbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb
>> --enable-
>> libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp
>> --enabl
>> e-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora
>> --enable
>> -libtwolame --enable-libvidstab --enable-libvo-aacenc
>> --enable-libvo-amrwbenc --
>> enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp
>> --enable-l
>> ibx264 --enable-libx265 --enable-libxavs --enable-libxvid
>> --enable-decklink --en
>> able-zlib
>> libavutil 52. 86.100 / 52. 86.100
>> libavcodec 55. 65.100 / 55. 65.100
>> libavformat 55. 41.100 / 55. 41.100
>> libavdevice 55. 13.101 / 55. 13.101
>> libavfilter 4. 5.100 / 4. 5.100
>> libswscale 2. 6.100 / 2. 6.100
>> libswresample 0. 19.100 / 0. 19.100
>> libpostproc 52. 3.100 / 52. 3.100
>> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'temp.mp4':
>> Metadata:
>> major_brand : mp42
>> minor_version : 1
>> compatible_brands: M4V mp42isom
>> creation_time : 2014-06-03 08:00:14
>> Duration: 00:00:03.97, start: 0.000000, bitrate: 433 kb/s
>> Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv,
>> smpte1
>> 70m), 640x360 [SAR 1:1 DAR 16:9], 372 kb/s, 30 fps, 30 tbr, 30k tbn, 60
>> tbc (def
>> ault)
>> Metadata:
>> creation_time : 2014-06-03 08:00:14
>> handler_name : Video Media Handler
>> encoder : AVC Coding
>> Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo,
>> fltp, 53
>> kb/s (default)
>> Metadata:
>> creation_time : 2014-06-03 08:00:14
>> handler_name : Sound Media Handler
>> [libx264 @ 02ef8940] using SAR=1/1
>> [libx264 @ 02ef8940] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
>> AVX
>> [libx264 @ 02ef8940] profile High, level 3.0
>> [libx264 @ 02ef8940] 264 - core 142 r2431 ac76440 - H.264/MPEG-4 AVC
>> codec - Cop
>> yleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=1
>> ref=3 deb
>> lock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00
>> mixed_ref=1 m
>> e_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11
>> fast_pskip=1 chro
>> ma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0
>> decimate=1 i
>> nterlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2
>> b_adapt=1
>> b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25
>> scenec
>> ut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60
>> qpmin=
>> 40 qpmax=51 qpstep=4 ip_ratio=1.40 aq=1:1.00
>> Output #0, mp4, to 'output.mp4':
>> Metadata:
>> major_brand : mp42
>> minor_version : 1
>> compatible_brands: M4V mp42isom
>> encoder : Lavf55.41.100
>> Stream #0:0(eng): Video: h264 (libx264) ([33][0][0][0] / 0x0021),
>> yuv420p, 6
>> 40x360 [SAR 1:1 DAR 16:9], q=40-51, 30 fps, 15360 tbn, 30 tbc (default)
>> Metadata:
>> creation_time : 2014-06-03 08:00:14
>> handler_name : Video Media Handler
>> encoder : Lavc55.65.100 libx264
>> Stream #0:1(eng): Audio: aac (libvo_aacenc) ([64][0][0][0] / 0x0040),
>> 44100
>> Hz, stereo, s16, 128 kb/s (default)
>> Metadata:
>> creation_time : 2014-06-03 08:00:14
>> handler_name : Sound Media Handler
>> encoder : Lavc55.65.100 libvo_aacenc
>> Stream mapping:
>> Stream #0:0 -> #0:0 (h264 -> libx264)
>> Stream #0:1 -> #0:1 (aac -> libvo_aacenc)
>> Press [q] to stop, [?] for help
>> frame= 118 fps=0.0 q=-1.0 Lsize= 113kB time=00:00:03.98 bitrate=
>> 233.5kbits
>> /s
>> video:46kB audio:63kB subtitle:0kB other streams:0kB global headers:0kB
>> muxing o
>> verhead: 4.585273%
>> [libx264 @ 02ef8940] frame I:2 Avg QP:40.03 size: 918
>> [libx264 @ 02ef8940] frame P:83 Avg QP:40.24 size: 472
>> [libx264 @ 02ef8940] frame B:33 Avg QP:40.31 size: 153
>> [libx264 @ 02ef8940] consecutive B-frames: 60.2% 6.8% 2.5% 30.5%
>> [libx264 @ 02ef8940] mb I I16..4: 9.8% 88.7% 1.5%
>> [libx264 @ 02ef8940] mb P I16..4: 4.6% 8.5% 0.2% P16..4: 7.7%
>> 0.8% 0.2%
>> 0.0% 0.0% skip:78.0%
>> [libx264 @ 02ef8940] mb B I16..4: 0.1% 0.1% 0.0% B16..8: 10.2%
>> 0.3% 0.0%
>> direct: 0.0% skip:89.3% L0:45.4% L1:54.1% BI: 0.4%
>> [libx264 @ 02ef8940] 8x8 transform intra:67.5% inter:91.4%
>> [libx264 @ 02ef8940] coded y,uvDC,uvAC intra: 11.1% 11.0% 0.5% inter:
>> 0.9% 0.2%
>> 0.0%
>> [libx264 @ 02ef8940] i16 v,h,dc,p: 43% 29% 10% 18%
>> [libx264 @ 02ef8940] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 10% 9% 60% 2% 5%
>> 2% 8%
>> 2% 2%
>> [libx264 @ 02ef8940] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 12% 19% 25% 6% 12%
>> 3% 17%
>> 3% 3%
>> [libx264 @ 02ef8940] i8c dc,h,v,p: 95% 2% 2% 1%
>> [libx264 @ 02ef8940] Weighted P-Frames: Y:4.8% UV:3.6%
>> [libx264 @ 02ef8940] ref P L0: 69.1% 15.5% 10.9% 4.5% 0.0%
>> [libx264 @ 02ef8940] ref B L0: 86.6% 12.8% 0.6%
>> [libx264 @ 02ef8940] ref B L1: 92.2% 7.8%
>> [libx264 @ 02ef8940] kb/s:93.79
>>
>> C:\Users\Admin\Desktop\Demo Videos>
>>
>>
>> *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
>>
>> Here is complete console output for: "ffmpeg -i temp.mp4 -c:v libx265
>> -qmin 40 -qmax 41 -y output.mp4 " (which does not work as expected):
>>
>>
>> *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
>> C:\Users\Admin\Desktop\Demo Videos>ffmpeg -i temp.mp4 -c:v libx265 -qmin
>> 40 -qma
>> x 41 -y output.mp4
>> ffmpeg version N-63439-g96470ca Copyright (c) 2000-2014 the FFmpeg
>> developers
>> built on May 25 2014 22:05:32 with gcc 4.8.2 (GCC)
>> configuration: --disable-static --enable-shared --enable-gpl
>> --enable-version3
>> --disable-w32threads --enable-avisynth --enable-bzlib
>> --enable-fontconfig --ena
>> ble-frei0r --enable-gnutls --enable-iconv --enable-libass
>> --enable-libbluray --e
>> nable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm
>> --enable-libi
>> lbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb
>> --enable-
>> libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp
>> --enabl
>> e-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora
>> --enable
>> -libtwolame --enable-libvidstab --enable-libvo-aacenc
>> --enable-libvo-amrwbenc --
>> enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp
>> --enable-l
>> ibx264 --enable-libx265 --enable-libxavs --enable-libxvid
>> --enable-decklink --en
>> able-zlib
>> libavutil 52. 86.100 / 52. 86.100
>> libavcodec 55. 65.100 / 55. 65.100
>> libavformat 55. 41.100 / 55. 41.100
>> libavdevice 55. 13.101 / 55. 13.101
>> libavfilter 4. 5.100 / 4. 5.100
>> libswscale 2. 6.100 / 2. 6.100
>> libswresample 0. 19.100 / 0. 19.100
>> libpostproc 52. 3.100 / 52. 3.100
>> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'temp.mp4':
>> Metadata:
>> major_brand : mp42
>> minor_version : 1
>> compatible_brands: M4V mp42isom
>> creation_time : 2014-06-03 08:00:14
>> Duration: 00:00:03.97, start: 0.000000, bitrate: 433 kb/s
>> Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv,
>> smpte1
>> 70m), 640x360 [SAR 1:1 DAR 16:9], 372 kb/s, 30 fps, 30 tbr, 30k tbn, 60
>> tbc (def
>> ault)
>> Metadata:
>> creation_time : 2014-06-03 08:00:14
>> handler_name : Video Media Handler
>> encoder : AVC Coding
>> Stream #0:1(eng): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo,
>> fltp, 53
>> kb/s (default)
>> Metadata:
>> creation_time : 2014-06-03 08:00:14
>> handler_name : Sound Media Handler
>> x265 [info]: HEVC encoder version 1.0+38-d0acf82a77f9
>> x265 [info]: build info [Windows][GCC 4.8.2][32 bit] 8bpp
>> x265 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
>> x265 [info]: WPP streams / pool / frames : 6 / 4 / 2
>> x265 [info]: Main profile, Level-2.1 (Main tier)
>> x265 [info]: CU size : 64
>> x265 [info]: Max RQT depth inter / intra : 1 / 1
>> x265 [info]: ME / range / subpel / merge : hex / 57 / 2 / 2
>> x265 [info]: Keyframe min / max / scenecut : 25 / 250 / 40
>> x265 [info]: Lookahead / bframes / badapt : 20 / 4 / 2
>> x265 [info]: b-pyramid / weightp / weightb / refs: 1 / 1 / 0 / 3
>> x265 [info]: Rate Control / AQ-Strength / CUTree : ABR-200 kbps / 1.0 / 1
>> x265 [info]: tools: rect amp rd=3 lft sao-lcu signhide
>> Output #0, mp4, to 'output.mp4':
>> Metadata:
>> major_brand : mp42
>> minor_version : 1
>> compatible_brands: M4V mp42isom
>> encoder : Lavf55.41.100
>> Stream #0:0(eng): Video: hevc (libx265) ([35][0][0][0] / 0x0023),
>> yuv420p, 6
>> 40x360 [SAR 1:1 DAR 16:9], q=40-41, 200 kb/s, 30 fps, 15360 tbn, 30 tbc
>> (default
>> )
>> Metadata:
>> creation_time : 2014-06-03 08:00:14
>> handler_name : Video Media Handler
>> encoder : Lavc55.65.100 libx265
>> Stream #0:1(eng): Audio: aac (libvo_aacenc) ([64][0][0][0] / 0x0040),
>> 44100
>> Hz, stereo, s16, 128 kb/s (default)
>> Metadata:
>> creation_time : 2014-06-03 08:00:14
>> handler_name : Sound Media Handler
>> encoder : Lavc55.65.100 libvo_aacenc
>> Stream mapping:
>> Stream #0:0 -> #0:0 (h264 -> libx265)
>> Stream #0:1 -> #0:1 (aac -> libvo_aacenc)
>> Press [q] to stop, [?] for help
>> frame= 28 fps=0.0 q=0.0 size= 7kB time=00:00:00.98 bitrate=
>> 60.9kbits/s
>> frame= 41 fps= 39 q=0.0 size= 18kB time=00:00:01.31 bitrate=
>> 110.1kbits/s
>> frame= 51 fps= 32 q=0.0 size= 36kB time=00:00:01.63 bitrate=
>> 181.6kbits/s
>> frame= 60 fps= 28 q=0.0 size= 51kB time=00:00:01.98 bitrate=
>> 211.9kbits/s
>> frame= 69 fps= 26 q=0.0 size= 65kB time=00:00:02.30 bitrate=
>> 229.1kbits/s
>> frame= 82 fps= 26 q=0.0 size= 78kB time=00:00:02.63 bitrate=
>> 241.8kbits/s
>> frame= 93 fps= 25 q=0.0 size= 96kB time=00:00:02.98 bitrate=
>> 264.7kbits/s
>> frame= 104 fps= 24 q=0.0 size= 108kB time=00:00:03.30 bitrate=
>> 268.2kbits/s
>> frame= 114 fps= 24 q=0.0 size= 124kB time=00:00:03.65 bitrate=
>> 278.6kbits/s
>> frame= 118 fps= 20 q=0.0 Lsize= 171kB time=00:00:03.98 bitrate=
>> 352.1kbits/
>> s
>> video:103kB audio:63kB subtitle:0kB other streams:0kB global headers:0kB
>> muxing
>> overhead: 3.282767%
>> x265 [info]: frame I: 1 Avg QP:27.52 kb/s: 395.28
>> x265 [info]: frame P: 44 Avg QP:23.07 kb/s: 335.29
>> x265 [info]: frame B: 73 Avg QP:25.62 kb/s: 137.24
>> x265 [info]: global : 118 Avg QP:24.69 kb/s: 213.27
>> x265 [info]: Weighted P-Frames: Y:0.0% UV:0.0%
>> x265 [info]: consecutive B-frames: 35.6% 17.8% 11.1% 20.0% 15.6%
>>
>> C:\Users\Admin\Desktop\Demo Videos>
>>
>> *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
>>
>> Thanks in advance for any guidance/support!
>>
>
>
> Does anyone has any information about this problem?
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://ffmpeg.org/pipermail/libav-user/attachments/20140606/4078f153/attachment.html>
More information about the Libav-user
mailing list