[FFmpeg-user] x264 decimate modifier

Sebastian Iglesias cartero33 at yahoo.com
Tue Mar 15 14:22:18 CET 2016


Hello,
I'm using the following command line to generate an h264 1920x1080 rendition. I need to deliver with specific x264 opts/params. Until now all the modifiers worked fine, but there is an issue while trying to use the "no-dct-decimate" flag.
This is the command line and the resulting x264 options without using the "no-dct-decimate" flag. (decimate=1)
ffmpeg -threads "24" -i "$2" $DURATION -r 25/1 -g 50 -keyint_min 23 -crf 19 -threads 24 -me_range 32 -me_method umh -subq 10 -sc_threshold 0 -refs 4 -bf 3 -s $FC_PARAM_extra3 -f mp4 -c:v libx264 -x264-params psy-rd=1.00,0.15:b-pyramid=0:b-adapt=2:8x8dct=1:direct=auto:weightb=1:weightp=2:mbtree=1:qcomp=0.75:qpmin=10:qpmax=51:aq-mode=1:aq-strength=0.80:partitions=p8x8+b8x8+i8x8+i4x4:lookahead-threads=6:subme=10:trellis=2:fast-pskip=1 -rc-lookahead 50 -flags +loop -deblock 0:0 -b:v $FC_PARAM_extra4"k" -maxrate $FC_PARAM_extra4"k" -bufsize $FC_PARAM_extra5"k" -level "$FC_PARAM_extra2" -profile:v "$FC_PARAM_extra1" -movflags +write_colr+faststart -c:a libfaac -ac 2 -ab 128k -ar 48000 -cutoff 18000 -pix_fmt yuv420p -vf "[in]yadif=0:-1:0[cc]"$CROP";[cc]scale="$FC_PARAM_extra3[out] $TARGETASPECTRATIO -y "$3"ffmpeg version N-70392-g618021e Copyright (c) 2000-2015 the FFmpeg developersbuilt with gcc 4.8.2 (GCC) 20140120 (Red Hat 4.8.2-16)configuration: --disable-static --enable-gpl --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvpx --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libx265 --enable-libxvid --disable-ffplay --enable-shared --enable-gpl --enable-postproc --enable-nonfree --enable-avfilter --enable-pthreads --enable-libfreetype --extra-cflags=-fPIClibavutil 54. 19.100 / 54. 19.100libavcodec 56. 26.100 / 56. 26.100libavformat 56. 24.100 / 56. 24.100libavdevice 56. 4.100 / 56. 4.100libavfilter 5. 11.102 / 5. 11.102libswscale 3. 1.101 / 3. 1.101libswresample 1. 1.100 / 1. 1.100libpostproc 53. 3.100 / 53. 3.100Guessed Channel Layout for Input Stream #0.1 : stereoInput #0, mxf, from '/home/databasecontent/mxf/ABC375985_11.mxf':Metadata:application_platform: Linux 3.10.0-327.4.5.el7.x86_64 x86_64uid : c0fb24e6-e548-11e5-8567-00259067016egeneration_uid : c0fb2658-e548-11e5-8567-00259067016ecompany_name : OpenCubeproduct_name : MXFTk Advancedproduct_uid : 109c5440-d21d-b211-8029-001111ebc476product_version : 2.5.6.20130611modification_date: 2016-03-08 17:23:26material_package_umid: 0x060A2B340101010501010D2013000000C0F88F60E54811E5856700259067016Etimecode : 00:00:00:00LOGGER: set frames to 7600Duration: 00:05:04.64, start: 0.000000, bitrate: 52387 kb/sStream #0:0: Video: mpeg2video (4:2:2), yuv422p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 50000 kb/s, 25 fps, 25 tbr, 25 tbn, 50 tbcMetadata:file_package_umid: 0x060A2B340101010501010D2013000000C0F81E18E54811E5856700259067016EStream #0:1: Audio: pcm_s24le, 48000 Hz, 2 channels, s32 (24 bit), 2304 kb/sMetadata:file_package_umid: 0x060A2B340101010501010D2013000000C0F81E18E54811E5856700259067016E[libx264 @ 0x147dfc0] Application has requested 24 threads. Using a thread count greater than 16 is not recommended.[libx264 @ 0x147dfc0] using SAR=1/1[libx264 @ 0x147dfc0] using cpu capabilities: none![libx264 @ 0x147dfc0] profile High, level 4.0[libx264 @ 0x147dfc0] 264 - core 144 r2525 40bb568 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=1 ref=4 deblock=1:0:0 analyse=0x3:0x113 me=umh subme=10 psy=1 psy_rd=1.00:0.15 mixed_ref=1 me_range=32 chroma_me=1 trellis=2 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-3 threads=24 lookahead_threads=6 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=0 b_adapt=2 b_bias=0 direct=3 weightb=1 open_gop=0 weightp=2 keyint=50 keyint_min=23 scenecut=0 intra_refresh=0 rc_lookahead=50 rc=crf mbtree=1 crf=19.0 qcomp=0.75 qpmin=10 qpmax=51 qpstep=4 vbv_maxrate=5000 vbv_bufsize=10000 crf_max=0.0 nal_hrd=none filler=0 ip_ratio=1.40 aq=1:0.80[mpeg2video @ 0x144f000] Application has requested 24 threads. Using a thread count greater than 16 is not recommended.Output #0, mp4, to '/home/databasecontent/other/ABC375985_11_24_2.mxf.mp4':Metadata:application_platform: Linux 3.10.0-327.4.5.el7.x86_64 x86_64uid : c0fb24e6-e548-11e5-8567-00259067016egeneration_uid : c0fb2658-e548-11e5-8567-00259067016ecompany_name : OpenCubeproduct_name : MXFTk Advancedproduct_uid : 109c5440-d21d-b211-8029-001111ebc476product_version : 2.5.6.20130611modification_date: 2016-03-08 17:23:26material_package_umid: 0x060A2B340101010501010D2013000000C0F88F60E54811E5856700259067016Etimecode : 00:00:00:00encoder : Lavf56.24.100Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, 5000 kb/s, 25 fps, 12800 tbn, 25 tbcMetadata:file_package_umid: 0x060A2B340101010501010D2013000000C0F81E18E54811E5856700259067016Eencoder : Lavc56.26.100 libx264Stream #0:1: Audio: aac (libfaac) ([64][0][0][0] / 0x0040), 48000 Hz, stereo, s16 (24 bit), 128 kb/sMetadata:file_package_umid: 0x060A2B340101010501010D2013000000C0F81E18E54811E5856700259067016Eencoder : Lavc56.26.100 libfaacStream mapping:Stream #0:0 -> #0:0 (mpeg2video (native) -> h264 (libx264))Stream #0:1 -> #0:1 (pcm_s24le (native) -> aac (libfaac))Press [q] to stop, [?] for help
And this is the variation while trying to activate the "no-dct-decimate" flag and its results:
ffmpeg -threads "24" -i "$2" $DURATION -r 25/1 -g 50 -keyint_min 23 -crf 19 -threads 24 -me_range 32 -me_method umh -subq 10 -sc_threshold 0 -refs 4 -bf 3 -s $FC_PARAM_extra3 -f mp4 -c:v libx264 -x264-params psy-rd=1.00,0.15:b-pyramid=0:b-adapt=2:8x8dct=1:direct=auto:weightb=1:weightp=2:mbtree=1:qcomp=0.75:qpmin=10:qpmax=51:aq-mode=1:aq-strength=0.80:partitions=p8x8+b8x8+i8x8+i4x4:lookahead-threads=6:subme=10:trellis=2:fast-pskip=1:no-dct-decimate -rc-lookahead 50 -flags +loop -deblock 0:0 -b:v $FC_PARAM_extra4"k" -maxrate $FC_PARAM_extra4"k" -bufsize $FC_PARAM_extra5"k" -level "$FC_PARAM_extra2" -profile:v "$FC_PARAM_extra1" -c:a libfaac -ac 2 -ab 128k -ar 48000 -cutoff 18000 -pix_fmt yuv420p -vf "[in]yadif=0:-1:0[cc]"$CROP";[cc]scale="$FC_PARAM_extra3[out] $TARGETASPECTRATIO -y "$3"ffmpeg version N-70392-g618021e Copyright (c) 2000-2015 the FFmpeg developersbuilt with gcc 4.8.2 (GCC) 20140120 (Red Hat 4.8.2-16)configuration: --disable-static --enable-gpl --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvpx --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libx265 --enable-libxvid --disable-ffplay --enable-shared --enable-gpl --enable-postproc --enable-nonfree --enable-avfilter --enable-pthreads --enable-libfreetype --extra-cflags=-fPIClibavutil 54. 19.100 / 54. 19.100libavcodec 56. 26.100 / 56. 26.100libavformat 56. 24.100 / 56. 24.100libavdevice 56. 4.100 / 56. 4.100libavfilter 5. 11.102 / 5. 11.102libswscale 3. 1.101 / 3. 1.101libswresample 1. 1.100 / 1. 1.100libpostproc 53. 3.100 / 53. 3.100Guessed Channel Layout for Input Stream #0.1 : stereoInput #0, mxf, from '/home/databasecontent/mxf/ABC375985_11.mxf':Metadata:application_platform: Linux 3.10.0-327.4.5.el7.x86_64 x86_64uid : c0fb24e6-e548-11e5-8567-00259067016egeneration_uid : c0fb2658-e548-11e5-8567-00259067016ecompany_name : OpenCubeproduct_name : MXFTk Advancedproduct_uid : 109c5440-d21d-b211-8029-001111ebc476product_version : 2.5.6.20130611modification_date: 2016-03-08 17:23:26material_package_umid: 0x060A2B340101010501010D2013000000C0F88F60E54811E5856700259067016Etimecode : 00:00:00:00LOGGER: set frames to 7600Duration: 00:05:04.64, start: 0.000000, bitrate: 52387 kb/sStream #0:0: Video: mpeg2video (4:2:2), yuv422p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 50000 kb/s, 25 fps, 25 tbr, 25 tbn, 50 tbcMetadata:file_package_umid: 0x060A2B340101010501010D2013000000C0F81E18E54811E5856700259067016EStream #0:1: Audio: pcm_s24le, 48000 Hz, 2 channels, s32 (24 bit), 2304 kb/sMetadata:file_package_umid: 0x060A2B340101010501010D2013000000C0F81E18E54811E5856700259067016E[libx264 @ 0x835320] Application has requested 24 threads. Using a thread count greater than 16 is not recommended.[libx264 @ 0x835320] using SAR=1/1[libx264 @ 0x835320] using cpu capabilities: none![libx264 @ 0x835320] profile High, level 4.0[libx264 @ 0x835320] 264 - core 144 r2525 40bb568 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=1 ref=4 deblock=1:0:0 analyse=0x3:0x113 me=umh subme=9 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=32 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=24 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=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=50 keyint_min=23 scenecut=0 intra_refresh=0 rc_lookahead=50 rc=crf mbtree=1 crf=19.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 vbv_maxrate=5000 vbv_bufsize=10000 crf_max=0.0 nal_hrd=none filler=0 ip_ratio=1.40 aq=1:1.00[mpeg2video @ 0x8068c0] Application has requested 24 threads. Using a thread count greater than 16 is not recommended.Output #0, mp4, to '/home/databasecontent/other/ABC375985_11_67_1.mxf.mp4':Metadata:application_platform: Linux 3.10.0-327.4.5.el7.x86_64 x86_64uid : c0fb24e6-e548-11e5-8567-00259067016egeneration_uid : c0fb2658-e548-11e5-8567-00259067016ecompany_name : OpenCubeproduct_name : MXFTk Advancedproduct_uid : 109c5440-d21d-b211-8029-001111ebc476product_version : 2.5.6.20130611modification_date: 2016-03-08 17:23:26material_package_umid: 0x060A2B340101010501010D2013000000C0F88F60E54811E5856700259067016Etimecode : 00:00:00:00encoder : Lavf56.24.100Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, 5000 kb/s, 25 fps, 12800 tbn, 25 tbcMetadata:file_package_umid: 0x060A2B340101010501010D2013000000C0F81E18E54811E5856700259067016Eencoder : Lavc56.26.100 libx264Stream #0:1: Audio: aac (libfaac) ([64][0][0][0] / 0x0040), 48000 Hz, stereo, s16 (24 bit), 128 kb/sMetadata:file_package_umid: 0x060A2B340101010501010D2013000000C0F81E18E54811E5856700259067016Eencoder : Lavc56.26.100 libfaacStream mapping:
As you can see, even while using the flag/modifier. The decimate value stays as "decimate=1" and it also alters other enconding parameters as "qcomp, qpmin, qpmax, aq, etc"
Do you know why is this happening, Do I have another flag which alters the use of theĀ "no-dct-decimate" modifier?
Thanks for your help,


More information about the ffmpeg-user mailing list