Support for zscale in ffmpeg

Top Page

Reply to this message
Author: John M Lang
Date:  
To: dmo-discussion
Subject: Support for zscale in ffmpeg
II'm attempting to convert a video from HDR colorspace to SDR
colorspace using the zscale filter as suggested in this guide [1]. My
commandline and ffmpeg output are attached.

FFmpeg is exiting with the error: "No such filter: 'zscale'"
According to [2], "To enable compilation of this filter, you need to
configure FFmpeg with --enable-libzimg."

Is ffmpeg compiled with zscale support? If not, could you compile it
with zscale support?

My ffmpeg and libzimg2 versions:
ffmpeg                            10:3.4.6-dmo1~bpo9+1
libzimg2                          2.8-dmo1~bpo9+1


It's possible I'm doing something stupid here, so any advice is appreciated.

Thanks,
~John

[1] https://stevens.li/guides/video/converting-hdr-to-sdr-with-ffmpeg/
[2] https://ffmpeg.org/ffmpeg-filters.html#zscale-1
$ ffmpeg -i input.ts -vf select=gte(n\,360) -vf scale=-1:1080 -sws_flags fast_bilinear -vf zscale=t=linear:npl=100,format=gbrpf32le,zscale=p=bt709,tonemap=tonemap=hable:desat=0,zscale=t=bt709:m=bt709:r=tv,format=yuv420p -frames:v 1 out.png

ffmpeg version 3.4.6 Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
  configuration: --disable-decoder=amrnb --disable-decoder=libopenjpeg --disable-mips32r2 --disable-mips32r6 --disable-mips64r6 --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu --disable-msa --disable-libopencv --disable-podpages --disable-stripping --enable-avfilter --enable-avresample --enable-gcrypt --enable-gnutls --enable-gpl --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libkvazaar --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx265 --enable-libxvid --enable-libzvbi --enable-nonfree --enable-opengl --enable-openssl --enable-postproc --enable-pthreads --enable-shared --enable-version3 --enable-libwebp --incdir=/usr/include/x86_64-linux-gnu --libdir=/usr/lib/x86_64-linux-gnu --prefix=/usr --toolchain=hardened --enable-frei0r --enable-chromaprint --enable-libx264 --enable-libiec61883 --enable-libdc1394 --enable-vaapi --disable-opencl --enable-libmfx --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
  libavutil      55. 78.100 / 55. 78.100
  libavcodec     57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter     6.107.100 /  6.107.100
  libavresample   3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample   2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100
[mpegts @ 0x55b0efabf4c0] PES packet size mismatch
Input #0, mpegts, from 'source.ts':
  Duration: 02:45:52.48, start: 5.000000, bitrate: 24362 kb/s
  Program 28396 
    Metadata:
      service_name    : DVR-UHD  
      service_provider: HS    
    Stream #0:0[0x65]: Video: hevc (Main 10) ([36][0][0][0] / 0x0024), yuv420p10le(tv, bt2020nc/bt2020/arib-std-b67), 3840x2160 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 90k tbn, 50 tbc
    Stream #0:1[0x66](ger): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, stereo, s16p, 192 kb/s (clean effects)
Stream mapping:
  Stream #0:0 -> #0:0 (hevc (native) -> png (native))
Press [q] to stop, [?] for help
[AVFilterGraph @ 0x55b0efbfae20] No such filter: 'zscale'bitrate=N/A speed=N/A    
Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument
Error while processing the decoded data for stream #0:0
Conversion failed!