Hlavičky NVIDIA byly přesunuty z kódové základny FFmpeg do samostatného úložiště v commit 27cbbbb. Ze zprávy odevzdání:
Externí hlavičky již nejsou v kódové základně ffmpeg vítány, protože zvyšují zátěž údržby. Nicméně v případě NVidia potřebují vanilla hlavičky nějaké úpravy, aby byly použitelné v ffmpeg, proto je stále poskytujeme, ale v samostatném úložišti.
Také z FFmpeg Wiki:HWAccelIntro:
FFmpeg nyní používá svůj vlastní mírně upravený runtime-loader pro knihovny související s nvidiasCUDA/nvenc/nvdec. Pokud se při konfiguraci stížnosti zobrazí chyba o chybějícím kodeku ffnvcodec, potřebujete toto.
Má funkční
Makefile
s cílem instalace:make install PREFIX=/usr
FFmpeg vyhledá svůj
pkg-config
soubor s názvemffnvcodec.pc
. Ujistěte se, že je ve vašemPKG_CONFIG_PATH
.
Pro kompilaci FFmpeg NVIDIA záhlaví ("ffnvcodec"):
git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git
cd nv-codec-headers
make
sudo make install
Nyní zkompilujte ffmpeg
jako obvykle. Záhlaví by měla být detekována automaticky. Pokud ne, deklarujte PKG_CONFIG_PATH
ukazující na cestu, kde je ffnvcodec.pc
se nachází při spuštění configure
pro FFmpeg. Například:
PKG_CONFIG_PATH="/path/to/lib/pkgconfig" ./configure
Narazil jsem na podobnou chybu, ale ukázalo se, že to bylo způsobeno chybějící konfigurací balíčku nástrojů. Na Ubuntu 16.04 můžete spustit
apt-get install pkgconf
a zkontrolujte, zda chybějící balíček skutečně chybí:
pkgconf --list-all | grep package-name