Closed alexdns1 closed 6 months ago
As far as I understand how libvmaf handles CUDA, that's impossible. It links directly against CUDA, making an installed Nvidia-Driver a requirement to run the binaries. This is unacceptable for hopefully obvious reasons.
Plus, it needs the CUDA SDK to build, which would just like that more than triple the size of every single build image.
Please correct me if I'm wrong and there is some way to make it dynamically load the library and build without the full SDK.
You are 100% right thank you
Can you please add support for libvmaf_cuda in the builds ?
https://github.com/FFmpeg/FFmpeg/commit/7f685d0f493bbfa44cf1b3b65f9347291e23872b https://github.com/search?q=repo%3AFFmpeg%2FFFmpeg+libvmaf_cuda&type=code
ffmpeg -filters|grep vmaf ffmpeg version N-113111-g4fee63b241-20231226 Copyright (c) 2000-2023 the FFmpeg developers built with gcc 13.2.0 (crosstool-NG 1.25.0.232_c175b21) configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-ffbuild-linux-gnu- --arch=x86_64 --target-os=linux --enable-gpl --enable-version3 --disable-debug --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-openssl --enable-lzma --enable-fontconfig --enable-libharfbuzz --enable-libvorbis --enable-opencl --enable-libpulse --enable-libvmaf --enable-libxcb --enable-xlib --enable-amf --enable-libaom --enable-libaribb24 --enable-avisynth --enable-chromaprint --enable-libdav1d --enable-libdavs2 --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libgme --enable-libkvazaar --enable-libaribcaption --enable-libass --enable-libbluray --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librist --enable-libssh --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libvpl --enable-openal --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-librav1e --enable-librubberband --disable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libdrm --enable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc --enable-libplacebo --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-ldexeflags=-pie --extra-libs='-ldl -lgomp' --extra-version=20231226 libavutil 58. 36.100 / 58. 36.100 libavcodec 60. 36.100 / 60. 36.100 libavformat 60. 20.100 / 60. 20.100 libavdevice 60. 4.100 / 60. 4.100 libavfilter 9. 14.101 / 9. 14.101 libswscale 7. 6.100 / 7. 6.100 libswresample 4. 13.100 / 4. 13.100 libpostproc 57. 4.100 / 57. 4.100 ... libvmaf VV->V Calculate the VMAF between two video streams. ... vmafmotion V->V Calculate the VMAF Motion score.