我想在视频的每一帧中对日期/时间戳进行编码,以便计算机可以轻松读取。在我的系统上,帧速率是可变的,因此对帧进行计数似乎不是一个好的解决方案。我用人类可读的格式(文本)在框架上显示日期和时间,但是将其读回计算机似乎并不像我想要的那么简单。录制的视频很大(GB的10s),而且很长,因此写文本文件似乎很麻烦,除了要跟踪另一个文件。有没有一种方法可以在视频中存储逐帧信息?

最佳答案

您可以通过多种方式执行此操作。

  • 如果压缩效果不是很强,则可以将时间戳记编码在图像的顶部或底部。这些可能不会包含太多有值(value)的信息。您可以添加某种形式的错误校正(例如CRC)来更正压缩程序造成的任何损坏。
  • 一个更通用的解决方案(我过去使用过)是使用视频文件,例如AVI,包含另一个单独的文本流。除了AVI以外,大多数格式还支持多种流,因为它们用于立体声音频流,Subs等。这里的缺点是,没有太多工具可以让您编写这些流,而您必须自己实现(您想要支持的每种视频格式(使用相关的API)。在某种程度上,这类似于将文本文件保留在视频旁边,只是在同一视频文件内将此文件内容多路复用为单独的流。
  • 10-08 11:26
    查看更多