原子番号26

2712月/120

ffmpeg でH264に変換済みの動画とmp3の音声を結合させる


Avi→mp4への変換を行ってたら

何故かAviutlでは動画のH264へのエンコードはうまくいくのに音声の変換がうまくできないファイルがあったのでその時の対処法をメモ。

1. aviファイルから音声を抜き出す

まず音声をFree Audio Exractorを使い "Same format as original"で出力します。

2. ffmepgでaacに変換する

こんな感じに変換する。
ffmpeg.exe -y -i hoge.mp3 -vn -ac 2 -vol 256 -ab 112k hoge.m4a

ビットレートは112kで低めなのでもうちょっと高くしたい人は256kとか好きな値を入れましょう。

3. ffmpegで動画と音声を結合する

こんな感じで結合
ffmpeg -i hoge.mp4 -i hoge.m4a -vcodec copy -acodec copy output.mp4

-vcodec, -acodec, でcopyを指定するば再圧縮せずに結合だけしてくれる。

ffmpegについてよく知らなかったけど、知れば知るほど何でもできますね、このツール…。

気をつけること

ffmpegのバージョンが古いと
Estimating duration from bitrate, this may be inaccurate
というエラーメッセージが出ました。

-analyzeduration とかのオプションを付けてみましたが解決しませんでしたが、新しめのffmpegをダウンロードしてきたら変換出来ました。

参考サイト

CLI to mux/merge MP4 video and AAC audio?
http://forum.videohelp.com/threads/300841-CLI-to-mux-merge-MP4-video-and-AAC-audio

ffmpeg | 銀メモ -SilveryMemo-
http://silverymemo.wordpress.com/category/pc/%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2/ffmpeg/

Filed under: CUI, 動画 No Comments