Bu belgede nvidia NVENC için destek görüyorum, ancak kafa karıştırıcı görünüyor, adım adım? veya ubuntu için ffmpeg-nvenc ile PPA?
Bu belgede nvidia NVENC için destek görüyorum, ancak kafa karıştırıcı görünüyor, adım adım? veya ubuntu için ffmpeg-nvenc ile PPA?
Yanıtlar:
Her zaman olduğu gibi FFmpeg'in sürekli gelişimi, kale direklerini birçok kez kaydırır ve bu kesinlikle nvenc ve FFmpeg için geçerlidir. 3 aşama olmuştur:
İki adım gereklidir:
1. nv-codec-headers paketini kurun :
Aşağıdaki Terminal komutları gibi bir şey yeterli olmalıdır:
sudo apt-get install make git
mkdir $HOME/nv-codec-headers_build && cd $HOME/nv-codec-headers_build
git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git
cd nv-codec-headers
make && sudo make install
Herhangi bir nedenle fikrinizi değiştirirseniz ve yüklü dosyaları ve derleme dizinini tamamen kaldırmak istiyorsanız , aşağıdaki iki Terminal komutunu çalıştırın:
sudo rm -v /usr/local/{lib/pkgconfig/ffnvcodec.pc,include/ffnvcodec/*.h}
rm -rfv $HOME/nv-codec-headers_build
Ve sisteminiz temizlendi. Ancak devam etmek istiyorsanız aşağıdaki adımı kullanın:
2. FFmpeg'i derleyin :
Bu çok iyi test edilmiş kılavuzu kullanın:
Otomatik nv-codec-headers
olarak tanınır (ekstra ./configure
seçenek gerekmez) ve nvenc başarıyla oluşturulacaktır.
Test yapmak:
Bunu Bionic Beaver LTS'de test ettim ve sonuçlar:
andrew@ilium:~$ ffmpeg -encoders 2>/dev/null | grep nvenc
V..... h264_nvenc NVIDIA NVENC H.264 encoder (codec h264)
V..... nvenc NVIDIA NVENC H.264 encoder (codec h264)
V..... nvenc_h264 NVIDIA NVENC H.264 encoder (codec h264)
V..... nvenc_hevc NVIDIA NVENC hevc encoder (codec hevc)
V..... hevc_nvenc NVIDIA NVENC hevc encoder (codec hevc)
andrew@ilium:~$
Ve yukarıdaki gibi benzer bir resim görürseniz ve desteklenen bir grafik kartınız varsa, gitmeye haklısınız :)
Notlar:
@ andrew.46 yanıtınız harika, teşekkür ederim. İtibarım, bunu bir yorum olarak göndermek için eşiğin altında. Mümkünse, yanıtınızı aşağıdaki bilgilerle genişletin.
Uygulamasının önceki bir sürümüne dönmeniz gerekiyorsa nv-codec-headers
, https://github.com/FFmpeg/nv-codec-headers/releases adresinden daha eski bir sürümü indirin ve derleyin .
ffmpeg
En yeni nv-codec-headers
sürümlere karşı derleme yapmanız gerekiyorsa , ancak grafik sürücünüz henüz gerekli minimum CUDA API sürümünü işlemeyen bir sürüme sahiptir nv-codec-headers
. Belirti, ffmpeg
video akışlarının kod dönüştürmesinde başarısız olacaktır. Benim durumumda nv-codec-headers
CUDA API 9.1 gerekliyken, nvidia-driver
dağıtımım (testler) için en son 9.0 kullanan bir versiyondaydı.
Daha eski bir nv-codec-headers
sürücüye geri dönmek , muhtemelen en son sürücüyü doğrudan Nvidia'dan indirip dağıtımınızın güncelleme mekanizmasının dışında oluşturmaktan daha güvenlidir.