ウェブサイト検索

Linux に FFmpeg をインストールする方法


FFmpeg は、さまざまなタスクのためのさまざまなツールが含まれる最高のマルチメディア フレームワークの 1 つです。たとえば、ffplay はオーディオ/ビデオ ファイルの再生に使用できるポータブル メディア プレーヤーです。ffmpeg はさまざまなファイル形式間で変換でき、ffserver はさまざまなファイル形式に変換できます。 > はライブ ブロードキャストのストリーミングに使用でき、ffprobe はマルチメディア ストリームを分析できます。

このフレームワークは、ユーザーに最適な技術ソリューションを提供する利用可能なツールが多様であるため、非常に強力です。公式ウェブサイトのFFmpeg の説明によると、このような優れたマルチメディア フレームワークを備えている理由は、利用可能な最高のフリー ソフトウェア オプションを組み合わせているためです。

FFmpeg フレームワークは高いセキュリティを提供します。その理由は、開発者がコードをレビューするときの真剣さです。常にセキュリティを念頭に置いて行われます。

デジタル オーディオやビデオのストリーミングや録音を行う場合、このフレームワークが非常に役立つことがわかると思います。 FFmpeg フレームワークを利用すると、wav ファイルを mp3 ファイルに変換したり、ビデオをエンコードおよびデコードしたり、拡大縮小したりするなど、他にも多くの実用的なことができます。

公式サイトによると、FFmpegでは以下のことができるようです。

  • マルチメディアファイルをデコードする
  • マルチメディアファイルをエンコードする
  • マルチメディア ファイルをトランスコードする
  • マルチメディア ファイルを多重化する
  • マルチメディアファイルを多重化解除する
  • マルチメディア ファイルをストリームする
  • マルチメディア ファイルをフィルタリングする
  • マルチメディアファイルを再生する

非常に単純な例を見てみましょう。次のコマンドは、mp4 ファイルを avi ファイルに簡単に変換します。

ffmpeg -i Lone_Ranger.mp4 Lone_Ranger.avi

上記のコマンドは説明のためにのみ役立ちます。コーデック、ビットレート、その他の詳細が宣言されていないため、実際に使用することはお勧めできません。

次のパートでは、いくつかの FFmpeg マルチメディア フレームワーク ツールを使用して練習しますが、その前に、それらを Linux ボックスにインストールする必要があります。

Linux に FFmpeg マルチメディア フレームワークをインストールする方法

FFmpeg パッケージは最もよく使用されている Linux ディストリビューション用に提供されているため、インストールは比較的簡単です。 Ubuntu ベースのディストリビューションに FFmpeg フレームワークをインストールすることから始めましょう。

Ubuntu と Linux Mint に FFmpeg をインストールする

デフォルトのリポジトリからFFmpeg をインストールします。新しいターミナルを開き (CTRL+ALT+T)、次のコマンドを実行します。

sudo apt update
sudo apt install ffmpeg
ffmpeg -version

Debian に FFmpeg をインストールする

FFmpeg パッケージは公式 Debian リポジトリに含まれており、示されているようにパッケージ マネージャーを使用してインストールできます。

sudo apt update
sudo apt install ffmpeg
ffmpeg -version

CentOS と RHEL に FFmpeg をインストールする

CentOS および RHEL ディストリビューションに FFmpeg をインストールするには、EPELRPM Fusion を有効にする必要があります。次のコマンドを使用して、システム上のstrong>リポジトリに移動します。

EPEL をインストールして有効にするには、次のコマンドを使用します。

yum install epel-release

RPM Fusion をインストールして有効にするには、ディストリビューション バージョンで次のコマンドを使用します。

-------------- 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

リポジトリを有効にした後、次のコマンドを実行してFFmpeg をインストールします。

yum install ffmpeg ffmpeg-devel
ffmpeg -version

Fedora に FFmpeg をインストールする

Fedora では、図に示すように FFmpeg をインストールするには、RPM Fusion をインストールして有効にする必要があります。

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

Arch Linux に FFmpeg をインストールする

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

openSUSE に FFmpeg をインストールする

-------------- 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

FFmpeg ソースからコンパイルする

ソースからソフトウェアをコンパイルすることは世界で最も簡単なことではありませんが、適切な指示があればそれを行うことができます。まず、システムがすべての依存関係を満たしていることを確認してください。これらの依存関係のインストールは、次のコマンドを使用して実行できます。

まず、最新のパッケージをプルダウンするようにシステムに指示します。

sudo apt-get update

次のコマンドを使用して依存関係をインストールします。

-------------- 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

次に、次のコマンドを使用して、FFmpeg ソース用の新しいディレクトリを作成します。これは、ソース ファイルがダウンロードされるディレクトリです。

mkdir ~/ffmpeg_sources

次に、次のコマンドを実行して、FFmpeg で使用されるyasm アセンブラをコンパイルしてインストールします。

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"

yasm アセンブラを正常にインストールしたら、特定の FFmpeg ツールで使用されるさまざまなエンコーダをインストールします。次のコマンドを使用して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

もう 1 つの便利なエンコーダは、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

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

次に、ffmpeg をソースからインストールします。

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

: 特定のエンコーダをインストールしていない場合は、上記の「」から「–enable-encoder_name」を必ず削除してください。 /configure' コマンドを実行すると、インストールは問題なく完了します。

インストールできるエンコーダーは多数ありますが、この記事の目的からすべてをインストールするつもりはありませんが、次の公式ガイドを使用してインストールできます。

  1. Ubuntu 用 FFmpeg コンパイル ガイド
  2. CentOS 用 FFmpeg コンパイル ガイド

結論

この最初のパートでは、FFmpeg マルチメディア フレームワークに基づいた最新ニュースを読者に更新し、Linux マシンにそれをインストールする方法を示しました。次のパートでは、この主要なマルチメディア フレームワーク内の素晴らしいツールの使用方法を学習します。

更新: この FFmpeg シリーズのパート 2 が公開されました。この記事では、さまざまなオーディオ、ビデオ、およびビデオを実行するための便利な ffmpeg コマンドラインの使用方法が示されています。画像変換手順: Linux でビデオ、オーディオ、画像を変換するための 15 の便利な「FFmpeg」コマンド。