Header NVIDIA dipindahkan dari basis kode FFmpeg ke repositori mandiri di komit 27cbbbb. Dari pesan komit:
Header eksternal tidak lagi diterima di basis kode ffmpeg karena menambah beban pemeliharaan. Namun, dalam kasus NVidia, header vanilla memerlukan beberapa modifikasi agar dapat digunakan di ffmpegoleh karena itu kami tetap menyediakannya, tetapi dalam repositori terpisah.
Juga, dari FFmpeg Wiki:HWAccelIntro:
FFmpeg sekarang menggunakan runtime-loadernya sendiri yang sedikit dimodifikasi untuk pustaka terkait nvidiasCUDA/nvenc/nvdec. Jika Anda mendapatkan kesalahan dari configurecomplaining tentang hilang ffnvcodec, inilah yang Anda butuhkan.
Ini memiliki
Makefile
yang berfungsi dengan target pemasangan:make install PREFIX=/usr
FFmpeg akan mencari
pkg-config
nya file, disebutffnvcodec.pc
. Pastikan itu ada diPKG_CONFIG_PATH
Anda .
Untuk mengompilasi FFmpeg NVIDIA header ("ffnvcodec"):
git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git
cd nv-codec-headers
make
sudo make install
Sekarang kompilasi ffmpeg
seperti biasanya. Header harus dideteksi secara otomatis. Jika tidak maka nyatakan PKG_CONFIG_PATH
menunjuk ke jalur tempat ffnvcodec.pc
terletak saat menjalankan configure
untuk FFmpeg. Misalnya:
PKG_CONFIG_PATH="/path/to/lib/pkgconfig" ./configure
Saya mengalami kesalahan serupa tetapi ternyata, itu disebabkan oleh konfigurasi paket alat yang hilang. Di Ubuntu 16.04 Anda dapat menjalankan
apt-get install pkgconf
dan periksa apakah paket yang hilang benar-benar terlewatkan atau tidak:
pkgconf --list-all | grep package-name