Como instalar o FFmpeg no Linux
FFmpeg é um dos melhores frameworks multimídia que contém diversas ferramentas para diferentes tarefas. Por exemplo, o ffplay é um reprodutor de mídia portátil que pode ser usado para reproduzir arquivos de áudio/vídeo, o ffmpeg pode converter entre diferentes formatos de arquivo, o ffserver > pode ser usado para transmitir transmissões ao vivo e ffprobe é capaz de analisar fluxo multimídia.
Este framework é realmente poderoso devido à diversidade de ferramentas disponíveis, que proporcionam a melhor solução técnica para o usuário. De acordo com a descrição do FFmpeg no site oficial, a razão de ter um framework multimídia tão bom é a combinação das melhores opções de software livre disponíveis.
O framework FFmpeg oferece alta segurança e a razão para isso é a seriedade dos desenvolvedores na hora de revisar o código, isso sempre é feito pensando na segurança.
Tenho certeza de que você achará esta estrutura muito útil quando quiser fazer streaming ou gravação de áudio e vídeo digital. Há muitas outras coisas práticas que você pode fazer com a ajuda da estrutura FFmpeg, como converter seu arquivo wav em mp3, codificar e decodificar seus vídeos ou até mesmo dimensioná-los.
Segundo o site oficial, o FFmpeg é capaz de fazer o seguinte.
- decodificar arquivos multimídia
- codificar arquivos multimídia
- transcodificar arquivos multimídia
- arquivos multimídia mux
- arquivos multimídia demux
- transmitir arquivos multimídia
- filtrar arquivos multimídia
- reproduzir arquivos multimídia
Deixe-me dar um exemplo, muito simples. O comando a seguir converterá seu arquivo mp4 em um arquivo avi, simples assim.
ffmpeg -i Lone_Ranger.mp4 Lone_Ranger.avi
O comando acima é útil apenas para explicação, não é recomendado para uso na prática porque o codec, taxa de bits e outras especificações não são declarados.
Na próxima parte, praticaremos com algumas das ferramentas do framework multimídia FFmpeg, mas antes de fazer isso temos que instalá-las em nossa caixa Linux.
Como instalar o FFmpeg Multimedia Framework no Linux
Já os pacotes FFmpeg são oferecidos para as distribuições Linux mais utilizadas e a instalação será relativamente fácil. Vamos começar com a instalação do framework FFmpeg em distribuições baseadas em Ubuntu.
Instale FFmpeg no Ubuntu e Linux Mint
Instalarei o FFmpeg a partir dos repositórios padrão. Abra um novo terminal (CTRL+ALT+T) e execute os seguintes comandos.
sudo apt update
sudo apt install ffmpeg
ffmpeg -version
Instale o FFmpeg no Debian
O pacote FFmpeg está incluído nos repositórios oficiais do Debian e pode ser instalado usando o gerenciador de pacotes conforme mostrado.
sudo apt update
sudo apt install ffmpeg
ffmpeg -version
Instale FFmpeg no CentOS e RHEL
Para instalar o FFmpeg nas distribuições CentOS e RHEL, você precisa ativar o EPEL e o RPM Fusion no sistema usando os seguintes comandos.
Para instalar e ativar o EPEL, use o seguinte comando.
yum install epel-release
Para instalar e ativar o RPM Fusion, use o seguinte comando na sua versão de distribuição.
-------------- 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
Após habilitar os repositórios, execute o seguinte comando para instalar o FFmpeg:
yum install ffmpeg ffmpeg-devel
ffmpeg -version
Instale o FFmpeg no Fedora
No Fedora, você precisa instalar e ativar o RPM Fusion para instalar o FFmpeg conforme mostrado.
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
Instale o FFmpeg no Arch Linux
sudo pacman -S ffmpeg
yay -S ffmpeg-git
yay -S ffmpeg-full-git
ffmpeg -version
Instale o FFmpeg no 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
Compilando FFmpeg da fonte
Compilar software a partir de uma fonte não é a coisa mais fácil do mundo, mas com as instruções certas seremos capazes de fazê-lo. Primeiro, certifique-se de que seu sistema atenda a todas as dependências. A instalação dessas dependências pode ser feita com o auxílio dos seguintes comandos.
Primeiro, diga ao sistema para baixar os pacotes mais recentes.
sudo apt-get update
Instale as dependências com o seguinte comando.
-------------- 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
Em seguida, use o seguinte comando para criar um novo diretório para as fontes do FFmpeg. Este é o diretório onde os arquivos de origem serão baixados.
mkdir ~/ffmpeg_sources
Agora compile e instale o assembler yasm usado pelo FFmpeg executando os seguintes comandos.
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"
Depois de instalar com sucesso o montador yasm, é hora de instalar vários codificadores que serão usados com as ferramentas específicas do FFmpeg. Use os comandos a seguir para instalar o codificador de vídeo 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
Outro codificador útil e interessante é o codificador de áudio 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
Instale o decodificador e codificador de áudio 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
Agora é hora de instalar o ffmpeg da fonte.
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
Nota: Se você não instalou determinados codificadores, certifique-se de remover '–enable-encoder_name' do ' acima. /configure' para que a instalação seja feita sem problemas.
Existem muitos codificadores que você pode instalar, mas para o propósito deste artigo não irei instalar todos eles, mas você pode instalá-los usando os seguintes guias oficiais.
- Guia de compilação FFmpeg para Ubuntu
- Guia de compilação FFmpeg para CentOS
Conclusão
Nesta primeira parte atualizamos nossos leitores com as últimas novidades do framework multimídia FFmpeg e mostramos como instalá-lo em suas máquinas Linux. A próxima parte será totalmente sobre aprender como usar as ferramentas incríveis desta estrutura multimídia líder.
Atualização: a Parte 2 desta série FFmpeg foi publicada, mostrando alguns usos úteis da linha de comando do ffmpeg para executar vários áudio, vídeo e procedimentos de conversão de imagem: 15 comandos 'FFmpeg' úteis para conversão de vídeo, áudio e imagem no Linux.