YouTubeの音声入れ替え(2)
以前、flv形式の動画の音声入れ替えについてのメモを書いたが、もう少し楽な別の方法のメモ。
以前のメモでは、いったんflvからmpgに変換して入れ替える方法を記したが、最近のyoutube等のflv動画の中身(エンコード)がH.264になっていることが多い。
H.264のflvから.mpgファイル(mpeg1/mpeg2)に再エンコードするのは画質も良くないし、時間も無駄なので、映像はさわらず、そのまま音を入れ替えることにする。
使うツール
FLV Extractで映像と音声の取り出し
Extractのところで videoとAudioにチェックを入れ、「Drop FLV files here」の所にFlvファイルをドロップする。もとのFlvファイルと同じフォルダに映像/音声が取り出される。 映像は.264という拡張子、音声は.aacのファイルができていた。(これらの拡張子は元のflvが、どう作成されたかによって変わる)
音声の同期
音声の入れ替えで面倒なのが、映像と新しい音声の同期。特に口の動きのあるものは、なかなか同期が難しい。
方法として、古い音声と新しい音声を、重ねてタイミングをとった後に古い音声を消す。
同期を取るために、音声編集ソフトaudacityを使う。audacityのバージョン1.3からは、ffmpegを呼び出すことににより、.aacも扱えるようになっている。
まず、もともとの音声を読み込む。(この音声トラックは映像と同期している)。
注:読み込んだ音声が、明らかに短かったり長すぎる時は、指定されているサンプルレートが異なっている可能性がある。Audacityトラックのサンプルレートが表示されている箇所の上側にある三角印をクリック->Set Rate から正しいサンプルレートを指定する。
つづけて、新しい音声を読む込む。 別のトラックで表示され。音の大きさがグラフで表示されているので、タイミングがずれがわかりやすい。この場合約5秒早い