Я пытаюсь скомпилировать FFMPEG с поддержкой Nvidia Cuda на Debian 9.3. Параметры, что я использую:
--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 с драйверами установлены. Когда я пытаюсь настроить ffmpeg, он говорит:
ERROR: cuvid requested, but not all dependencies are satisfied: cuda
Более новый ffmpeg покажет похожее переформулированное сообщение:
ERROR: cuda requested, but not all dependencies are satisfied: ffnvcodec
Я абсолютно не знаю, почему у меня такая проблема, потому что я компилирую ffmpeg
на всех наших серверах транскодирования.
Ответы:
Заголовки NVIDIA были перемещены из кодовой базы FFmpeg в автономный репозиторий в коммите 27cbbbb . Из сообщения фиксации:
Также из FFmpeg Wiki: HWAccelIntro :
Чтобы скомпилировать заголовки FFmpeg NVIDIA ("ffnvcodec"):
Теперь скомпилируйте
ffmpeg
как обычно. Заголовки должны быть автоматически обнаружены. Если нет, то объявитеPKG_CONFIG_PATH
указатель на путь, гдеffnvcodec.pc
находится при запускеconfigure
для FFmpeg. Например:источник
Я столкнулся с подобной ошибкой, но, как оказалось, она была вызвана отсутствием конфигурации пакета инструментов. На Ubuntu 16.04 вы можете запустить
и проверьте, действительно ли пропущенный пакет пропущен или нет:
источник
https://github.com/FFmpeg/FFmpeg/commit/27cbbbb33f259de7c795d2b75edf7b240f0f82e6
Я обнаружил, что этот код коммита произошла ошибка. Использовать код предыдущего коммита
git clone https://github.com/FFmpeg/FFmpeg.git
git checkout 7414d0bda7763f9bd69c26c068e482ab297c1c96
git reset --hard
источник
7414d0b
неопределенный срок. Просто скачайте и установите заголовки NVIDIA перед компиляциейffmpeg
.