Я использую FFMPEG для извлечения меток времени каждого кадра видео. Я использую команду: ffmpeg.exe -i input.mp4 -an -vf showinfo frames\%04d.jpg 2> log.txt
. Затем я анализирую выходной файл для извлечения временных меток.
Проблема в том, что я обнаружил, что для некоторых видео количество временных меток меньше, чем количество кадров. Некоторый контент в файле журнала:
...
[Parsed_showinfo_0 @ 000001c68efd5d40] n: 0 pts: 0 pts_time:0 pos: 744736 fmt:yuvj420p sar:1/1 s:1920x1080 i:P iskey:1 type:I checksum:C086C8AD plane_checksum:[967F2494 DE1FDB06 FA11C904] mean:[97 125 129 ] stdev:[48.3 8.0 6.7 ]
[Parsed_showinfo_0 @ 000001c68efd5d40] color_range:pc color_space:bt709 color_primaries:bt709 color_trc:bt709
...
[Parsed_showinfo_0 @ 000001c68efd5d40] n:9003 pts: 300793 pts_time:300.493 pos:248599172 fmt:yuvj420p sar:1/1 s:1920x1080 i:P iskey:0 type:P checksum:2A3F467C plane_checksum:[B8AFA4CB 96D8FC10 1EE5A583] mean:[99 130 126 ] stdev:[44.4 9.3 6.0 ]
[Parsed_showinfo_0 @ 000001c68efd5d40] color_range:pc color_space:bt709 color_primaries:bt709 color_trc:bt709
frame= 9007 fps= 32 q=24.8 Lsize=N/A time=00:05:00.53 bitrate=N/A dup=3 drop=0 speed=1.05x
video:633532kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Я получаю 9007 кадров, но только 9004 метки времени. Временная метка первого и последнего кадра кажется вполне нормальной, поэтому в начале или конце видео не должно быть пропущенных кадров. Итак, я хотел бы знать причину и какие метки времени имеют 9004 из 9007 кадров?
Спасибо!