FFmpeg Cookbook
FFmpegで変換後に音ズレする原因と解決法(コピー・VFR・リマックス)
FFmpegで変換した後にだけ音と映像がズレる問題を解決します。ストリームコピーが壊れたタイムスタンプをそのまま引き継ぐ理由、VFRソースが音ズレを起こす理由を解説し、再エンコード・+gentpsでのタイムスタンプ再生成・aresampleでの補正・固定フレームレート化で直します。
FFmpegで音ズレが徐々に進行する問題を直す(ドリフト対策)
最初は合っているのに終わりに近づくほど音がズレる——それは一定のオフセットではなくドリフトです。クロックの不一致やVFRソースが原因となる理由、-itsoffsetでドリフトが直せない理由を解説し、FFmpegのaresample asyncで補正したうえで、固定サンプルレートやCFRで標準化します。
FFmpegで可変フレームレート(VFR)を固定(CFR)に変換する方法
FFmpegで可変フレームレート(VFR)動画を固定フレームレート(CFR)に変換します。ffprobeでr_frame_rateとavg_frame_rateを比較してVFRの疑いを見分け、-fps_mode cfrでCFRに強制します。これは非推奨の-vsync cfrに代わるFFmpeg 8.xの方法で、多くの音ズレの根本原因を解消します。
FFmpeg invalid PTS/DTS・non monotonically increasing dts の原因と修復法
FFmpegで頻発する『non monotonically increasing dts to muxer』や invalid PTS/DTS エラーの原因を整理し、genptsでのタイムスタンプ再生成、負TSの補正、VFR→CFR化、setpts/asetptsでのリセットまで、再エンコード要否を切り分けて解決する実践ガイド。
FFmpegでフレームレートを変更する方法 | -r vs fps フィルタの違いも解説
FFmpegでフレームレートを変更するコマンドを徹底解説。-rオプションとfpsフィルターの違いと使い分け、ffprobeでの現在のfps確認方法、60→30fps・24fps変換、タイムラプス作成、5つのエラーと解決策まで。