音ずれについて †音ずれには -async オプションをつければ解決するものや wmvからの変換で起きるものなどありますが、ここでは 元の動画が23.976fpsであった場合に生じる音ずれについて説明します。 症状としては 「はじめは問題ないのにだんだんズレが大きくなってくる」というものです。 wmvからの変換ではないのにこの症状になる人は 以下を読めば解決するかもしれません (wmv等の変換については4.を見てください。) 1.動画のフレームレートを調べる †はじめに変換したい動画のフレームレート(fps)を見ておきます 2.動画を調節する †どうやらffmpegは小数第3位を計算しないようなので 元の動画をffmpegが正しく読めるようにあらかじめ調節してやればいいのです。 自分はVirtualDubを使いましたが 他のソフトでもいいと思います まずVirtualDubをダウンロード。 解凍後、VirtualDub.exeをダブルクリックで起動。左上の ファイル→開く か、ドラッグ&ドロップで変換したいファイルを読み込みます。 映像フレームレートコントロールの画面がでますので次のようにしてください。 ffmpegが正しく読めるならどんな値でもいいと思いますが できるだけ近いほうが違和感もないだろうということで 23.98fpsにします。 最後に 映像→ストリームの直接コピー を選びます。あとは ファイル→名前をつけて保存 として 適当なところへ保存してください。 3.そのほか †自分は -async 100 オプションをつけています。効果があるのかしりませんが →Q. 音声がずれるんですけど… A. Trancoding.iniをメモ帳などで開いていただき、ffmpegの設定の中に 「-async 1000」など任意の数値を加えてみてください。 (「-async 1」はオーディオストリームの開始が修正される特殊なケースです) ごく稀に音声がビブラートがかかったみたい(テレビでよくある「音声は変えています」 みたいな音)になることがありますが、その場合は「-async」の数値を変えて試してみてください。 また、PCで確認するときはQTなどで見るのがいいです。 自分はMediaPlayerClassicで見てたのですが どうもまだ0.1秒ずれると思ったら このプレイヤーのせいでした(笑) QTで見たところ全くずれてませんでした。 avisynthのConvertFPSなどを使えば再圧縮なしで変換できるかもしれません。 以上 暇な上によくわからなかったのでページを作成しましたが 参考になればと思います。書く場所違ったら移動、削除などしてください。 4.WMVファイルなどで音がずれる場合 †詳しくはAvisynthを使用して読み込むを参照してください。 AVS_Skelton.avsの中を DirectShowSource("<%InputFile%>",convertfps=true) と修正して読み込ませることで、音ズレが起きなくなる可能性があります。 また、それでも駄目な場合、 DirectShowSource("<%InputFile%>",fps=23.976,convertfps=true) と修正して読み込ませることで、音ズレが起きなくなる可能性があります。 (23.976の部分はソースに合わせること) コメント †最新の10件を表示しています。 コメントページを参照 |