今回のターゲットは、AVI形式のMPEG-4 AVC(H264+AAC) という形式。
・映像は、 MPEG-4 AVC (=実質的にH.264と同じ)
・音声は、 AAC
AVIなんだけど、MovieOperator602 や VirtualDubMod では
そもそも読み込めなかったので、
・映像音声分離後に、音声のボリュームを上げて結合
・音声の入れ替え
が出来ず、別の方法を探していた。
最初は、avidemux2 でエンコードしながらボリュームを上げていたが、
やはり映像の画質が落ちるのがイマイチで、・・・それに変換に時間がかかる!
映像を無変換のままボリュームを上げる方法を探すことになった。
そのため、約1年前に経験した技術を読み返し、
MKV形式上でなら、実現できそうだと気がついた。
そこから描ける解決のストーリーはこうだ:
①まず、avidemux2 で(映像、音声)を(コピー、コピー)でMKV形式に
無変換で書き出す
②そのMKV形式から、映像と音声を分離する
・分離には、MKVtoolnix + MKVExtractGUI-2 を使った。
③音声部分を(どこかから)抽出し、Pazera_Free_Audio_Extractor を使って
ボリュームを上げる (念のため、128kbps→160kbpsにしておいた)
④映像と音声を、MKV形式に結合する
・結合には、MKVtoolnix を使った。
・①で音声が-33ms遅れて出来ていたので、映像が1コマ分欠落
した?のかと思い、(←過去の経験から)結合時に-33ms遅らせた。
※この辺の正確な情報は持っていない。
・fpsを指定してやらないといけないことに注意。29.970=30000/1001
・参考: MKVExtractGUI の方で出来たタイムコードを指定したら、
映像と音声がズレてしまった! ?? 故に、タイムコードは中止。
これらすべて、フリーソフトで出来るところがうれしいね!
特にエンコードはしていないので、作業時間もごくわずかだ。
念のため、出来上がりのコーデック等の情報と、会話部分等で音がずれて
いないかチェックし、問題無しを確認したら作業完了だ。
----
23:01 追加。
その後、映像と音声のズレをチェックしてみた。
・映像: どうも、コマのズレは無いみたいに見える
・音声: MKV形式から抽出したデータを使って上記設定で結合したものでは、
オリジナルより22ミリ秒早いが、10ミリ秒のディレイが設定されている
のでトータル12ミリ秒早いのかな? (=検証できていない)
オリジナルから直接抽出したデータを使ってディレイ無しで結合した
ものでは、今度は22ミリ秒遅くなった!
気のせいかもしれんが、なんとなく前者(=上記①~④の処理結果)
の方が、オリジナルの波形に近いような気がする。わずかだが。
ここで、音声の位置のチェックは、すべてMP3形式に変換後に、
Wave editor でチェックした。