ERROR: solicitó cuvid, pero no todas las dependencias están satisfechas: cuda / ffnvcodec


18

Estoy tratando de compilar FFMPEG con soporte de Nvidia Cuda, en Debian 9.3. Parámetros, lo que estoy usando:

--enable-cuda --enable-cuvid --enable-nvenc --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64 --enable-gpl --enable-libx264 --disable-x86asm --enable-libx265 --enable-libfdk-aac --enable-nonfree

Nvidia Cuda con controladores están instalados. Cuando intento configurar ffmpeg, dice:

ERROR: cuvid requested, but not all dependencies are satisfied: cuda

El ffmpeg más nuevo mostrará un mensaje similar redactado de nuevo:

ERROR: cuda requested, but not all dependencies are satisfied: ffnvcodec

No sé por qué estoy teniendo este problema, porque estoy compilando ffmpegen todos nuestros servidores de transcodificación.


¿Qué dice config.log hacia el final? Estará en ffbuild /
Gyan

Respuestas:


49

Los encabezados NVIDIA se movieron fuera de la base de código FFmpeg a un repositorio independiente en commit 27cbbbb . Del mensaje de confirmación:

Los encabezados externos ya no son bienvenidos en la base de código ffmpeg porque aumentan la carga de mantenimiento. Sin embargo, en el caso de NVidia, los encabezados de vainilla necesitan algunas modificaciones para poder usarse en ffmpeg, por lo tanto, todavía los proporcionamos, pero en un repositorio separado.

Además, de FFmpeg Wiki: HWAccelIntro :

FFmpeg ahora usa su propio cargador de tiempo de ejecución ligeramente modificado para las bibliotecas relacionadas con nvidias CUDA / nvenc / nvdec. Si recibe un error de configuración quejándose de la falta de ffnvcodec, esto es lo que necesita.

Tiene un trabajo Makefilecon un objetivo de instalación:

make install PREFIX=/usr

FFmpeg buscará su pkg-configarchivo, llamado ffnvcodec.pc. Asegúrate de que esté en tu PKG_CONFIG_PATH.

Para compilar los encabezados FFmpeg NVIDIA ("ffnvcodec"):

git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git
cd nv-codec-headers
make
sudo make install

Ahora compila ffmpegcomo de costumbre. Los encabezados deben ser autodetectados. Si no es así, declare el PKG_CONFIG_PATHapuntar a la ruta donde ffnvcodec.pcse encuentra cuando se ejecuta configurepara FFmpeg. Por ejemplo:

PKG_CONFIG_PATH="/path/to/lib/pkgconfig" ./configure

4

Encontré un error similar pero resulta que fue causado por la falta de la configuración del paquete de herramientas. En Ubuntu 16.04 puedes ejecutar

apt-get install pkgconf

y verifique si el paquete faltante realmente se perdió o no:

pkgconf --list-all | grep package-name

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.