自动合并或修剪多个视频文件

自动合并或修剪多个视频文件

我在深海观测站安装了两台水下网络摄像机,它们通过光缆与陆地相连,并将视频数据传输回岸上。我想找到一种方法,根据时间线自动剪切或合并这些视频文件。这能做到吗?如果能,怎么做?

问题: 水下摄像机在网络连接中断时会写入一个文件 (.asf)。这意味着剪辑的持续时间是随机的,这使得对数据进行分类变得困难。理想情况下,我们希望文件的长度为一小时,开始和结束的时间都是小时 (例如:Camera1_00:00-00:59.asf、Camera1_01:00-01:59.asf 等)。每个视频的文件名包含第一帧的时间戳。元数据中不存储任何时间信息。

问题:我如何合并这些视频文件并按小时拆分它们?
到目前为止,我最好的猜测是这样的(但我不知道该怎么做):

  1. 从文件名中提取初始时间戳
  2. 获取文件时长
  3. 将持续时间添加到初始时间戳以获取开始/停止 UTC 时间
  4. [不知怎么地] 加入视频,直到我跨越一个小时的界限
  5. 按小时分割视频(我猜时间是根据持续时间和开始时间计算的?)
  6. 将 1 小时的视频保存为已完成,并保存以供下一个小时开始时使用
  7. 重复

请注意,我们的视频数据确实存在一些缺口,理想的解决方案可以是:

  • 一小时内写入多个文件(例如:03:00-03:15 和 03:17-03:59)
  • 编写一个长度不超过一小时的文件,用几个黑框连接间隙

我不知道该怎么做。有没有软件可以帮我做这件事?我是否必须编写一些代码才能做到这一点?如果是后者,哪种语言最好?ffmpeg 怎么样?

我愿意接受更好的想法。提前感谢您的帮助!

相关内容