视频录制开启时,每 5 秒间隔保存一次视频(Android 操作系统)

Abh*_*hek 5 video android video-capture saving-data video-recording

我想在视频录制打开时每 5 秒保存一次视频。

我尝试了很多解决方案,但遇到了一个小故障,即最后保存的帧在预览中保留了大约 300 毫秒。

我认为原因在于 MediaRecorder 类中“一旦记录器停止,就需要在重新启动之前完全重新配置和准备。”

谢谢

Mir*_*iny 3

我认为不可能做到这一点MediaRecorder。更好的方法可能是使用MediaCodec编码视频并使用MediaMuxer存储编码内容。

Grafika是 Google Github 帐户上的一个项目,该帐户是 Android 图形和媒体黑客的垃圾场。MediaCodec在此项目中,您可以找到使用和类的很好的示例MediaMuxer。

我分叉了该Grafika项目并做了一些修改以支持顺序分段记录。你可以在这里找到它。运行应用程序时,Show + capture camera从列表中选择项目,然后设置Output Segment Duration为例如 5,然后按Start recording按钮。

请查看VideoEncoderCore和CameraCaptureActivity类源代码以了解其工作原理。您可以在此处了解它如何将实时摄像机源分割为不同的文件。