ほぼ半年ぶりにffmpegを触ってみる。
先日ver2.2がリリースされて、hevcのエンコードに対応したようです。
ということで、久しぶりにコンパイル。
今回はマックで。
すでに、homebrewは2.2に対応済みでした。
brew install ffmpeg
これだけで、ffmpegがコンパイルできてしまった。
(かなりショック。半年前にcentosにインストールしたときは、結構苦労した記憶が。。。)
ただし、もう少しオプションを付けて、コンパイルしてやる必要があります。
brew info ffmpeg
brew options ffmpeg
これで、make時のオプションを確認できます。
(h264オプションはあるが、h265(hevc)の記述がない。。。)
とりあえず、このオプション設定でやり直してみる。
brew install ffmpeg --with-libvpx --with-libvorbis --with-openjpeg --with-ffplay --with-tools
ffmpeg を実行
以下結果の表示
------------------------------------------------------------------------------------------------
ffmpeg version 2.2 Copyright (c) 2000-2014 the FFmpeg developers
built on Apr 3 2014 08:52:57 with Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
configuration: --prefix=/usr/local/Cellar/ffmpeg/2.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --enable-vda --cc=clang --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid --enable-libvorbis --enable-libvpx --enable-ffplay --enable-libopenjpeg --extra-cflags='-I/usr/local/Cellar/openjpeg/1.5.1_1/include/openjpeg-1.5 '
libavutil 52. 66.100 / 52. 66.100
libavcodec 55. 52.102 / 55. 52.102
libavformat 55. 33.100 / 55. 33.100
libavdevice 55. 10.100 / 55. 10.100
libavfilter 4. 2.100 / 4. 2.100
libavresample 1. 2. 0 / 1. 2. 0
libswscale 2. 5.102 / 2. 5.102
libswresample 0. 18.100 / 0. 18.100
libpostproc 52. 3.100 / 52. 3.100
------------------------------------------------------------------------------------------------
やはり、h265に対応できていない。
ということで、hevcエンコードを試すには、
・x265 or openhevc の用意(自前でmake?)
・ffmpeg にリンク(configure, makeオプション?)
が必要になる。
brewはmakeオプションは付加できるようだけど、configureオプションは付けられないようなので、以下を直接編集。
/usr/local/Library/Formula/ffmpeg.rb
(brew edit で対応するようだが、今回は勢いにまかせて、よくわからないまま、viで直接編集してしまった。)
264をキーワードに同じ感じで265を追加。(以下3行を適切に!) option "without-x265", "Disable H.265 encoder"
depends_on 'x265' => :recommended
args << "--enable-libx265" if build.with? 'x265'
(h264と同じようにデフォルトでリンクされるようにした)
次にh265エンコーダーの本体を用意。
openhevc か、x265かわからないけど、自前で用意しなきゃと思いながらも、
brew search x265
と打ってみたら、用意されている。早速インストール。
brew install x265
で、ffmpegを、もう一度インストール。
brew install ffmpeg --with-libvpx --with-libvorbis --with-openjpeg --with-ffplay --with-tools
ffmpegコマンドで確認。
------------------------------------------------------------------------------------------------
ffmpeg version 2.2 Copyright (c) 2000-2014 the FFmpeg developers
built on Apr 3 2014 09:39:57 with Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
configuration: --prefix=/usr/local/Cellar/ffmpeg/2.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --enable-vda --cc=clang --host-cflags= --host-ldflags= --enable-libx264 --enable-libx265 --enable-libfaac --enable-libmp3lame --enable-libxvid --enable-libvorbis --enable-libvpx --enable-ffplay --enable-libopenjpeg --extra-cflags='-I/usr/local/Cellar/openjpeg/1.5.1_1/include/openjpeg-1.5 '
libavutil 52. 66.100 / 52. 66.100
libavcodec 55. 52.102 / 55. 52.102
libavformat 55. 33.100 / 55. 33.100
libavdevice 55. 10.100 / 55. 10.100
libavfilter 4. 2.100 / 4. 2.100
libavresample 1. 2. 0 / 1. 2. 0
libswscale 2. 5.102 / 2. 5.102
libswresample 0. 18.100 / 0. 18.100
libpostproc 52. 3.100 / 52. 3.100
Hyper fast Audio and Video encoder ------------------------------------------------------------------------------------------------
一応、libx265がリンクされている。
今日は、ここまで。
念のために。
今回変更したファイル
/usr/local/Library/Formula/ffmpeg.rb
これは、homebrewのファイルで、gitで管理されています。
なので、 /usr/local に移動して、
git add Library/Formula/ffmpeg.rb
git commit -m "h265のオレオレ対応"
としておいてください。
でないと、これ以降の brew update で、commit しろとメッセージが出て、そこで止まってしまうので。
0 件のコメント:
コメントを投稿