The ffmpeg è un software di conversione video gratuito e open source per sistemi Linux e Unix. Tuttavia, su Ubuntu/Debian Linux e altre distribuzioni, la codifica basata su hardware NVIDIA è disabilitata in fase di compilazione. Quindi, naturalmente, è necessario supportare la GPU NVIDIA. A parte questo, sarebbe meglio se avessi il supporto CUDA installato con i compilatori GNU. Vediamo come installare tutto uno per uno su un server o desktop alimentato da Ubuntu o Debian Linux.
Ho testato le seguenti istruzioni su Ubuntu Linux 20.04 LTS. Ho installato il driver NVIDIA versione 460 e CUDA versione 10.1. La mia GPU è GeForce GTX 1650. Vediamo come installare FFmpeg con supporto per l’accelerazione hardware della GPU NVIDIA su Linux.
Dettagli tutorial
Livello di difficoltà
Intermedio
Privilegi di root
sì
Requisiti
Debian/Ubuntu Linux
Est. momento della lettura
3 minuti
Installazione di FFmpeg con l’accelerazione hardware della GPU NVIDIA su Linux
Innanzitutto, assicurati che il driver Nvidia (ultimo driver proprietario) sia installato su Ubuntu o Debian. Per esempio:sudo apt install nvidia-driver-460
Riavvia il sistema Linux:sudo reboot
Successivamente è necessario installare il kit di strumenti CUDA su Debian o Ubuntu Linux utilizzando il comando apt o il comando apt-get:sudo apt install nvidia-cuda-toolkit
Installazione del toolkit CUDA (fare clic per ingrandire)
Per compilare ffmpeg con NVIDIA abbiamo bisogno anche di ffnvcodec. Clona repository git:mkdir ~/nvidia/ && cd ~/nvidia/ git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git
Installa ffnvcodec su Ubuntu o Debian:cd nv-codec-headers && sudo make install
Ottieni il codice sorgente di ffmpeg, esegui:cd ~/nvidia/ git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg/
Installa la raccolta e le librerie del compilatore GNU gcc, esegui:sudo apt install build-essential yasm cmake libtool libc6 libc6-dev unzip wget libnuma1 libnuma-dev
Configura ffmpeg con il supporto per GPU NVIDIA:cd ~/nvidia/ffmpeg/ ./configure --enable-nonfree --enable-cuda-nvcc --enable-libnpp --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64
Compilalo, esegui:make -j $(nproc)
Verifica eseguibile:ls -l ffmpeg ./ffmpeg
Installazione di ffmpeg con supporto NVIDIA e verifica dell’installazione (fare clic per ingrandire)
Ora puoi usare -hwaccel cuda interruttore per la codifica. Ad esempio:ffmpeg -y -hwaccel cuda -i input.file output.file
Come visualizzare le statistiche della GPU NVIDIA e caricare durante l’utilizzo di ffmpeg
Utilizzare uno dei seguenti comandi: nvidia-smi Assicurati di provare nvtop. È un visualizzatore di stato GPU basato su ncurses per GPU NVIDIA: nvtop
clicca per ingrandire
Correlati: I 7 migliori strumenti della riga dei comandi di diagnostica e monitoraggio della GPU Linux
Risultato
In questo esempio, sto convertendo input.mkv in out.mp4 come segue senza utilizzare l’accelerazione GPU: time /bin/ffmpeg -y -i /tmp/input.mkv /tmp/out.mp4 Uscite comando tempo con CPU utilizzata:
E ora lo stesso file con l’accelerazione GPU NVIDIA (nota il percorso, sto chiamando il versione compilata): time ~/ffmpeg/ffmpeg-hwaccel cuda -y -i /tmp/input.mkv /tmp/out.mp4 Output del comando Time con GPU utilizzata:
Solo guide per i sostenitori di Patreon ????
Nessuna pubblicità e tracciamento
Guide approfondite per sviluppatori e amministratori di sistema su Opensourceflare✨
Unisciti al mio Patreon per supportare i creatori di contenuti indipendenti e iniziare a leggere le ultime guide:
La mia è una GPU di livello consumer, ma senza dubbio il data center o la GPU NVIDIA di livello professionale offrono prestazioni ancora migliori. Assicurati di leggere le seguenti pagine man usando il comando man: man ffmpeg man nvtop man nvdia-smi
Riassumendo
Hai imparato come installare FFmpeg con il supporto hardware di accelerazione GPU NVIDIA su Debian o Ubuntu Linux per accelerare la codifica con il comando ffmpeg. Per ulteriori informazioni, consultare la documentazione NVIDIA e la pagina wiki di ffmpeg. In breve, per abilitare il supporto per la codifica assistita da GPU con una GPU NVIDIA per ffmpeg, è necessario:
ANNUNCIO
Ti e piaciuto questo articolo?
Supporta il mio lavoro, facendo una donazione!
Questo sito utilizza i cookie per migliorare servizi ed esperienza dei lettori. Se decidi di continuare la navigazione senza blocchi premi su Accetto, oppure continua tranquillamente la navigazione, nessun dato sulla tua navigazione verrà raccolto.
Quando visiti un sito Web, esso può archiviare o recuperare informazioni sul tuo browser, principalmente sotto forma di cookies. Controlla qui i tuoi servizi di cookie personali.