0

目标是:在Android中,我拍摄一个视频,并处理每个视频帧,并将处理后的视频帧记录到输出视频文件中。

当然,如果能实时实现就完美了。然而,视频录制fps为15,每帧的平均处理时间约为1/10秒,即10帧/秒。所以我不能以实时的方式做到这一点。(顺便说一句,即使帧处理速度在 1/15 秒左右,也没有什么好的方法可以高效地从相机中获取帧数据。PreviewPicture 显然比真实 fps 更新慢)

所以我计划在视频录制到视频文件时启动另一个线程,例如,称为 videoFileBefore.mp4。显然,videoFileBefore.mp4 处于重新编码模式。但我想打开文件,处理可用的帧,然后将它们写入另一个新的视频文件,比如 videoFileAfter.mp4。如果视频录制为 10 秒,则应用程序需要额外的 5 秒才能完成视频处理。整个过程15秒。(这里假设视频录制时间很短。更准确地说,我们可以添加它)

第二个选项是:我等待处理视频文件videoFileBefore.mp4,直到录制完成,整个时间为:10 secs + 15 secs = 25 secs。所以我更喜欢第一种选择:在写入的同时处理视频文件。

但似乎现有的视频格式不支持这种操作。任何想法?

4

0 回答 0