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
Makefileyang berfungsi dengan target pemasangan:make install PREFIX=/usrFFmpeg akan mencari
pkg-confignya file, disebutffnvcodec.pc. Pastikan itu ada diPKG_CONFIG_PATHAnda .
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