動画ファイル自体にフレーム落ちがあるのか検証する

動画ファイルを再生したときにカクつくという場合、そもそももともとの画像ファイルに連続したフレームデータが存在しているよね?って確認したい場合があった。それの検証をする方法というかその時のおぼえがき。

ffmpegをインストールすると、そこにffprobe.exeがある。これも非常に優秀で便利。

ffprobe -loglevel error -select_streams v:0 -show_entries packet=pts_time -of csv=print_section=0 .\ng.mp4 >ng.csv

このコマンドにより、対象のng.mp4の各フレームのpts(=presentation time stamp =表示タイムスタンプ)が、CSVとして書き出されるとのこと。

ただ一般的に圧縮された映像ファイルはフレームが前後するので、いったんソートをかけて並べ替えてから、差分を計算して大きなズレがないかチェックした。

仮に全フレームのデータがあったとしても、ファイルに破損がないとか、データ自体にコマ落ちがないとかの保証ににはなりませんけどね。念のため。