Die NVIDIA-Header wurden aus der FFmpeg-Codebase in ein eigenständiges Repository im Commit 27cbbbb verschoben . Aus der Commit-Nachricht:
Externe Header sind in der ffmpeg-Codebase nicht mehr erwünscht, da sie den Wartungsaufwand erhöhen. Im Fall von NVidia benötigen die Vanilla-Header jedoch einige Modifikationen, damit sie in ffmpeg verwendet werden können. Daher stellen wir sie weiterhin zur Verfügung, jedoch in einem separaten Repository.
Auch aus FFmpeg Wiki: HWAccelIntro :
FFmpeg verwendet jetzt einen eigenen, leicht modifizierten Laufzeitladeprogramm für die CUDA / nvenc / nvdec-Bibliotheken von nvidias. Wenn Sie einen Fehler von configure erhalten beschwerte sich über ffnvcodec fehlt, das ist das, was Sie brauchen.
Es arbeitet
Makefile
mit einem Installationsziel:make install PREFIX=/usr
FFmpeg sucht nach seiner
pkg-config
Datei, genanntffnvcodec.pc
. Stellen Sie sicher, dass es in Ihrem istPKG_CONFIG_PATH
.
So kompilieren Sie die FFmpeg-NVIDIA-Header ("ffnvcodec"):
git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git make sudo make install
Jetzt ffmpeg
wie gewohnt kompilieren . Die Header sollten automatisch erkannt werden. Wenn nicht, dann erklären, die PKG_CONFIG_PATH
zeigt auf den Pfad, wo ffnvcodec.pc
befindet sich beim Laufen configure
für FFmpeg. Zum Beispiel:
PKG_CONFIG_PATH="/path/to/lib/pkgconfig" ./configure