有没有办法使用常用工具(ffmpeg?mplayer/mencoder?mkvmerge?等)来查找关键帧在给定视频文件中出现的频率?{从而找到最小搜索大小?}这似乎是一个显而易见的统计数据,“必须”有一些常用技术......
[如果有帮助,假设 MKV 容器,H.264 视频 - 我很想找到一个更通用的解决方案,但也许这不可能/不切实际?]
多媒体数据有许多可能的容器。有些人比其他人更适合你的目标。通常,归结为格式是否指定包含关键帧信息的索引。QuickTime/MOV/MP4 可以做到这一点,因为它有一个原子/盒子名称“stss”(样本表,同步样本)。我对 Matroska 不太熟悉,但我正在查看格式规范以及 FFmpeg 的 demuxer 以进行确证,但似乎没有任何此类索引。看起来有必要解析帧并检查每个帧的关键帧标志。