[FFmpeg-trac] #10598(undetermined:new): vaapi_hevc outputs extremely low quality if global quality option set

FFmpeg trac at avcodec.org
Thu Sep 28 06:03:30 EEST 2023


#10598: vaapi_hevc outputs extremely low quality if global quality option set
-------------------------------------+-------------------------------------
             Reporter:  Ace          |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:
  undetermined                       |  unspecified
             Keywords:               |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 If the `-q` option is set at all when encoding with hevc_vaapi, the
 resulting stream output will be very low - regardless of the quality
 factor set. Additionally, when running without the `-q` option, a warning
 is presented:

 `[hevc_vaapi @ 0x555f0574f640] No quality level set; using default (25).`

 however the video quality is substantially higher.

 Command used for capture:
 {{{
 ffmpeg \
     -f x11grab -thread_queue_size 1024 -probesize 64M -framerate 60
 -video_size ${w}x${h} -i $DISPLAY+$x,$y \
     -thread_queue_size 1024 -f pulse -i $audio_source \
     -t 00:01:00 \
     -vaapi_device /dev/dri/renderD128 \
     -vf 'format=nv12,hwupload' \
     -c:v hevc_vaapi -maxrate 120M -q 25 -compression_level 2 \
     -c:a flac \
     ~/test.mp4
 }}}


 FFmpeg version info:
 {{{
 $ ffmpeg -version
 ffmpeg version 6.0 Copyright (c) 2000-2023 the FFmpeg developers
 built with gcc 13 (GCC)
 configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg
 --docdir=/usr/share/doc/ffmpeg --incdir=/usr/include/ffmpeg
 --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64 --optflags='-O2
 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe
 -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3
 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1
 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1
 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection
 -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer'
 --extra-ldflags='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now
 -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat
 /redhat-annobin-cc1 -Wl,--build-id=sha1 ' --extra-cflags='
 -I/usr/include/rav1e' --enable-libopencore-amrnb --enable-libopencore-
 amrwb --enable-libvo-amrwbenc --enable-version3 --enable-bzlib --enable-
 chromaprint --disable-crystalhd --enable-fontconfig --enable-frei0r
 --enable-gcrypt --enable-gnutls --enable-ladspa --enable-libaom --enable-
 libdav1d --enable-libass --enable-libbluray --enable-libbs2b --enable-
 libcdio --enable-libdrm --enable-libjack --enable-libjxl --enable-
 libfreetype --enable-libfribidi --enable-libgsm --enable-libilbc --enable-
 libmp3lame --enable-libmysofa --enable-nvenc --enable-openal --enable-
 opencl --enable-opengl --enable-libopenh264 --enable-libopenjpeg --enable-
 libopenmpt --enable-libopus --enable-libpulse --enable-libplacebo
 --enable-librsvg --enable-librav1e --enable-librubberband --enable-
 libsmbclient --enable-version3 --enable-libsnappy --enable-libsoxr
 --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1
 --enable-libtesseract --enable-libtheora --enable-libtwolame --enable-
 libvorbis --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-
 version3 --enable-vapoursynth --enable-libvpx --enable-vulkan --enable-
 libshaderc --enable-libwebp --enable-libx264 --enable-libx265 --enable-
 libxvid --enable-libxml2 --enable-libzimg --enable-libzmq --enable-libzvbi
 --enable-lv2 --enable-avfilter --enable-libmodplug --enable-postproc
 --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-
 debug --disable-stripping --shlibdir=/usr/lib64 --enable-lto --enable-
 libvpl --enable-runtime-cpudetect
 libavutil      58.  2.100 / 58.  2.100
 libavcodec     60.  3.100 / 60.  3.100
 libavformat    60.  3.100 / 60.  3.100
 libavdevice    60.  1.100 / 60.  1.100
 libavfilter     9.  3.100 /  9.  3.100
 libswscale      7.  1.100 /  7.  1.100
 libswresample   4. 10.100 /  4. 10.100
 libpostproc    57.  1.100 / 57.  1.100
 }}}

 Running on Fedora Linux 38, and the GPU is an Radeon RX 6900XT
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/10598>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list