Cum se instalează FFmpeg în Linux


FFmpeg este unul dintre cele mai bune cadre multimedia care conține diverse instrumente pentru diferite sarcini. De exemplu, ffplay este un player media portabil care poate fi folosit pentru a reda fișiere audio/video, ffmpeg poate converti între diferite formate de fișiere, ffserver > poate fi folosit pentru a transmite transmisii live și ffprobe este capabil să analizeze fluxul multimedia.

Acest cadru este cu adevărat puternic datorită diversității instrumentelor disponibile, care oferă cea mai bună soluție tehnică pentru utilizator. Conform descrierii FFmpeg de pe site-ul oficial, motivul pentru care aveți un cadru multimedia atât de grozav este combinația celor mai bune opțiuni de software gratuit disponibile.

Cadrul FFmpeg oferă securitate ridicată, iar motivul pentru aceasta este seriozitatea dezvoltatorilor atunci când revizuiesc codul, se face întotdeauna cu securitatea în minte.

Sunt foarte sigur că veți găsi acest cadru foarte util atunci când doriți să faceți niște streaming sau înregistrare audio și video digitală. Există multe alte lucruri practice pe care le puteți face cu ajutorul cadrului FFmpeg, cum ar fi conversia fișierului wav într-unul mp3, codificarea și decodarea videoclipurilor sau chiar scalarea acestora.

Conform site-ului oficial, FFmpeg poate face următoarele.

  • decoda fisiere multimedia
  • codificarea fișierelor multimedia
  • transcodează fișierele multimedia
  • mux fișiere multimedia
  • demux fișiere multimedia
  • transmite în flux fișiere multimedia
  • filtrarea fișierelor multimedia
  • reda fișiere multimedia

Să iau un exemplu, unul foarte simplu. Următoarea comandă vă va converti fișierul mp4 într-un fișier avi, atât de simplu.

ffmpeg -i Lone_Ranger.mp4 Lone_Ranger.avi

Comanda de mai sus este utilă doar pentru explicație, nu este recomandat să fie folosită în practică deoarece codec-ul, bitrate și alte specificații nu sunt declarate.

În următoarea parte, vom exersa cu unele dintre instrumentele cadru multimedia FFmpeg, dar înainte de a face asta trebuie să le instalăm în caseta noastră Linux.

Cum se instalează FFmpeg Multimedia Framework în Linux

Deoarece pachetele FFmpeg sunt oferite pentru cele mai utilizate distribuții Linux și instalarea va fi relativ ușoară. Să începem cu instalarea cadrului FFmpeg în distribuțiile bazate pe Ubuntu.

Instalați FFmpeg pe Ubuntu și Linux Mint

Voi instala FFmpeg din depozitele implicite. Deschideți un nou terminal (CTRL+ALT+T) și apoi executați următoarele comenzi.

sudo apt update
sudo apt install ffmpeg
ffmpeg -version

Instalați FFmpeg pe Debian

Pachetul FFmpeg este inclus în depozitele oficiale Debian și poate fi instalat folosind managerul de pachete, așa cum se arată.

sudo apt update
sudo apt install ffmpeg
ffmpeg -version

Instalați FFmpeg pe CentOS și RHEL

Pentru a instala FFmpeg pe distribuțiile CentOS și RHEL, trebuie să activați EPEL și RPM Fusion de pe sistem utilizând următoarele comenzi.

Pentru a instala și a activa EPEL, utilizați următoarea comandă.

yum install epel-release

Pentru a instala și a activa RPM Fusion, utilizați următoarea comandă pe versiunea dvs. de distribuție.

-------------- On CentOS & RHEL 8.x -------------- 
yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-8.noarch.rpm

-------------- On CentOS & RHEL 7.x -------------- 
yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-7.noarch.rpm

-------------- On CentOS & RHEL 6.x --------------
yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-6.noarch.rpm https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-6.noarch.rpm

După activarea depozitelor, rulați următoarea comandă pentru a instala FFmpeg:

yum install ffmpeg ffmpeg-devel
ffmpeg -version

Instalați FFmpeg pe Fedora

Pe Fedora, trebuie să instalați și să activați RPM Fusion pentru a instala FFmpeg așa cum se arată.

sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install ffmpeg ffmpeg-devel
ffmpeg -version

Instalați FFmpeg pe Arch Linux

sudo pacman -S ffmpeg
yay -S ffmpeg-git
yay -S ffmpeg-full-git
ffmpeg -version

Instalați FFmpeg pe openSUSE

-------------- On openSUSE Tumbleweed --------------
sudo zypper addrepo -cfp 90 'https://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Tumbleweed/' packman
sudo zypper refresh
sudo zypper install --from packman ffmpeg
ffmpeg -version

-------------- On openSUSE Leap --------------
sudo zypper addrepo -cfp 90 'https://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Leap_$releasever/' packman
sudo zypper refresh
sudo zypper install --from packman ffmpeg
ffmpeg -version

Compilarea FFmpeg din sursă

Compilarea software-ului dintr-o sursă nu este cel mai ușor lucru din lume, dar cu instrucțiunile potrivite, o vom putea face. În primul rând, asigurați-vă că sistemul dvs. îndeplinește toate dependențele. Instalarea acestor dependențe se poate face cu ajutorul următoarelor comenzi.

În primul rând, spuneți sistemului să tragă în jos cele mai recente pachete.

sudo apt-get update

Instalați dependențele cu următoarea comandă.

-------------- On Debian & Ubuntu --------------
sudo apt-get -y install autoconf automake build-essential libass-dev libfreetype6-dev libgpac-dev \
libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libx11-dev \
libxext-dev libxfixes-dev pkg-config texi2html zlib1g-dev
-------------- On CentOS and RHEL --------------
yum install glibc gcc gcc-c++ autoconf automake libtool git make nasm pkgconfig SDL-devel \
a52dec a52dec-devel alsa-lib-devel faac faac-devel faad2 faad2-devel freetype-devel giflib gsm gsm-devel \
imlib2 imlib2-devel lame lame-devel libICE-devel libSM-devel libX11-devel libXau-devel libXdmcp-devel \
libXext-devel libXrandr-devel libXrender-devel libXt-devel libogg libvorbis vorbis-tools mesa-libGL-devel \
mesa-libGLU-devel xorg-x11-proto-devel zlib-devel libtheora theora-tools ncurses-devel libdc1394 libdc1394-devel \
amrnb-devel amrwb-devel opencore-amr-devel

Apoi utilizați următoarea comandă pentru a crea un director nou pentru sursele FFmpeg. Acesta este directorul de unde vor fi descărcate fișierele sursă.

mkdir ~/ffmpeg_sources

Acum compilați și instalați asamblatorul yasm folosit de FFmpeg rulând următoarele comenzi.

cd ~/ffmpeg_sources
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar xzvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install
make distclean
export "PATH=$PATH:$HOME/bin"

După ce ați instalat cu succes asamblatorul yasm, este timpul să instalați diverse codificatoare care vor fi utilizate cu instrumentele specifice FFmpeg. Utilizați următoarele comenzi pentru a instala codificatorul video H.264.

cd ~/ffmpeg_sources
wget http://download.videolan.org/pub/x264/snapshots/last_x264.tar.bz2
tar xjvf last_x264.tar.bz2
cd x264-snapshot*
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static
make
make install
make distclean

Un alt codificator frumos util este codificatorul audio libfdk-aac AAC.

cd ~/ffmpeg_sources
wget -O fdk-aac.zip https://github.com/mstorsjo/fdk-aac/zipball/master
unzip fdk-aac.zip
cd mstorsjo-fdk-aac*
autoreconf -fiv
$./configure --prefix="$HOME/ffmpeg_build" --disable-shared
make
make install
make distclean

Instalați decodorul și codificatorul audio libopus.

cd ~/ffmpeg_sources
wget http://downloads.xiph.org/releases/opus/opus-1.1.tar.gz
tar xzvf opus-1.1.tar.gz
cd opus-1.1
./configure --prefix="$HOME/ffmpeg_build" --disable-shared
make
make install
make distclean

Acum, este timpul să instalați ffmpeg din sursă.

cd ~/ffmpeg_sources
wget http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2
tar xjvf ffmpeg-snapshot.tar.bz2
cd ffmpeg
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig"
export PKG_CONFIG_PATH
./configure --prefix="$HOME/ffmpeg_build" --extra-cflags="-I$HOME/ffmpeg_build/include" \
   --extra-ldflags="-L$HOME/ffmpeg_build/lib" --bindir="$HOME/bin" --extra-libs="-ldl" --enable-gpl \
   --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus \
   --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-x11grab
make
make install
make distclean
hash -r

Notă: dacă nu ați instalat anumite codificatoare, asigurați-vă că ați eliminat „–enable-encoder_name” din „ de mai sus. comanda /configure, astfel încât instalarea se face fără nicio problemă.

Există multe codificatoare pe care le puteți instala, dar în scopul acestui articol nu le voi instala pe toate, dar le puteți instala folosind următoarele ghiduri oficiale.

  1. Ghid de compilare FFmpeg pentru Ubuntu
  2. Ghid de compilare FFmpeg pentru CentOS

Concluzie

În această primă parte, am actualizat cititorii noștri cu cele mai recente știri conform cadrului multimedia FFmpeg și le-am arătat cum să îl instaleze pe mașinile lor Linux. Următoarea parte va fi în totalitate despre a învăța cum să folosești instrumentele uimitoare din acest cadru multimedia de vârf.

Actualizare: este publicată Partea a 2-a a acestei serii FFmpeg, care arată unele utilizări utile ale liniei de comandă ffmpeg pentru a efectua diverse materiale audio, video și Proceduri de conversie a imaginilor: 15 comenzi „FFmpeg” utile pentru conversia video, audio și imagini în Linux.