2013/06/25

ffmpeg で aacplus を使えるようにする

自分でコンパイルすれば可能なことは分かっていたけど、面倒くさくて放置していた案件。つか、以前に一度、やったはずなのに実行形式がどこかに行っちゃってたもの。

再度ここに、その手順をばメモメモ。


# Compile FFmpeg on Ubuntu, Debian, or Mint
# https://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuide
#
# Compilation & Installation
#
# One advantage to compiling is that you can build ffmpeg to your liking. If
# you do not require certain encoders you may skip the relevant section and
# then remove the appropriate ./configure option in FFmpeg. For example, if
# libopus is not needed, then skip that section and then remove
# --enable-libopus from the Install FFmpeg section.
#
# ここでは HE-AAC を必要とする人が fdk-aac enabled な ffmpeg を
# どうやってコンパイル+インストールするかが紹介されている
#
# ffmpeg コンパイル時に追加指定するライブラリのうち
# libfdk-aac libx264 はこの中でインストール
# libmp3lame libtheora libvorbis はインストール済みという前提
# 上記 URL にはアップデートの方法も示されている

sudo apt-get update
sudo apt-get -y install autoconf automake build-essential git libass-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
mkdir ~/ffmpeg_sources 
# yasm
# Minimum version is yasm-1.2.0
cd ~/ffmpeg_sources
wget http://www.tortall.net/projects/yasm/releases/yasm-1.2.0.tar.gz
tar xzvf yasm-1.2.0.tar.gz
cd yasm-1.2.0
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install
make distclean
. ~/.profile

# H.264
cd ~/ffmpeg_sources
git clone --depth 1 git://git.videolan.org/x264.git
cd x264
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static
make
make install
make distclean

# fdk-aac
cd ~/ffmpeg_sources
git clone --depth 1 git://github.com/mstorsjo/fdk-aac.git
cd fdk-aac
autoreconf -fiv
./configure --prefix="$HOME/ffmpeg_build" --disable-shared
make
make install
make distclean

# ----------------------------------------
# 以下は使わなかった
# これだけならインストールすればよかったか
# ----------------------------------------
#
# LAME
# 通常はコンパイルせずリポジトリから
# 今回はインストール済みだった
#
# sudo apt-get install libmp3lame-dev
#
#
# libopus
# 通常はコンパイルせずリポジトリから
# 不要と判断
#
# sudo apt-get install libopus-dev
#
#
# libvpx
# 通常はコンパイルせずリポジトリから
# 不要と判断
#
# sudo apt-get install libvpx-dev
#
# ----------------------------------------
# ここまで使わなかった
# ----------------------------------------

# ffmpeg
# --enable-libopus removed.
# --enable-libvpx removed.
# それから
# Server users should remove --enable-x11grab from the following 
command:
cd ~/ffmpeg_sources
git clone --depth 1 git://source.ffmpeg.org/ffmpeg
cd ffmpeg
./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-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-nonfree --enable-x11grab
make
make install
make distclean
hash -r 
# インストールされたかチェック
# ffmpeg version git-2013-05-18-5918b7a Copyright (c) 2000-2013...
# のように表示されたら成功 
echo "----------------------------------------"
ffmpeg 2>&1 | head -n1
echo "----------------------------------------" 
# うちでは次のような表示になった
#
# $ ffmpeg 2>&1 | head -n1
# ffmpeg version git-2013-06-17-96b33dd Copyright (c) 2000-2013...
#
# 普通にほかのディレクトリでやったら今までと同じだったので
# 探したら(笑) ~/bin に格納されていた
上記のコードはすべてコピペです。当該ブログエントリーから不要なものを省いただけで、中身は特にいじっていません。それにしても、偉大なる先人の偉業に感謝です。

----
(Jun.25, 2013)

0 件のコメント:

楽天モバイルを台湾で使ってみた

GWに、久しぶりに台湾に赴きました。コロナ禍の間に延命していた台湾大哥大と中華電信の回線のうち中華電信の方を失効させてしまい(なぜ中華電信だけ失効したんだろう)、今回の滞在は台湾大哥大と楽天モバイルの2回線で賄うことにしました。テザリングでAndroidスマホ1台とiPad、Ma...