我想以一种计算机可以轻松读取的方式在视频的每一帧中编码日期/时间戳。在我的系统上,帧速率是可变的,因此计算帧数似乎不是一个好的解决方案。我让它在框架上以人类可读的形式(文本)显示日期和时间,但是将其读回计算机似乎并不像我想的那么简单。录制的视频很大(10 GB)并且很长,因此编写文本文件似乎也很麻烦,除了要跟踪一个文件之外。有没有办法在视频中存储逐帧信息?
问问题
3849 次
1 回答
1
有几种方法可以做到这一点。
- 如果您的压缩不是很强,您可以在图像的顶部或底部行中编码时间戳。这些可能不包含太多有价值的信息。您可以添加某种形式的纠错(例如 CRC)来纠正压缩器造成的任何损坏。
- 一个更通用的解决方案(我过去使用过)是让视频文件(例如 AVI)包含另一个单独的文本流。除了 AVI 之外,大多数格式都支持多个流,因为它们用于立体声音频流、子等。这里的缺点是没有很多工具可以让你编写这些流,你必须自己实现(使用相关的 API)为您想要支持的每种视频格式。在某种程度上,这类似于在视频旁边保留一个文本文件,只是此文件内容在同一个视频文件中作为单独的流进行多路复用。
于 2012-07-30T18:32:02.257 回答