无尽的视频录制

Tan*_*ien 5 video android

我正在构建一个应用程序,它将保存60秒的录制视频缓冲区.视频录制需要运行一段时间(24-48小时).我似乎没有任何录音问题,但似乎我失去了与我CameraSurface几小时后的连接.

我正在设置最大持续时间:MediaRecorder.setMaxDuration(10 * 1000)以便将录制分成10秒段.

每次重新开始录制时,我都会以这样的方式递增输出文件,即重复使用6个文件.目的是始终保持60秒的历史.

如果我在1-2小时后停止录制,视频播放就可以了.但是,如果我让它运行3-4个小时并停止录制,则视频仅显示声音的黑色输出.换句话说,就好像它失去了与相机或表面的连接,但继续录制音频.

谁能解释这种行为?

如果没有别的,有没有更好的方法来记录X秒的视频片段?

仅供参考:我正在使用唤醒锁定,以便屏幕/ CPU保持打开状态.

Tan*_*ien 2

我在这里已经回答了我自己的问题。我没有太多信息,但希望这能提供足够的信息来帮助处于类似困境的其他人。

首先,我从未发布过我的代码,因为它太长了。我没有发布我的代码片段,因为我不知道问题出在哪里。尽管我现在可以正常工作,但我仍然不知道我的旧代码出了什么问题。

我的建议:

我最终废弃了我的代码,并从开发 API 演示中找到的代码重新开始:CameraPreview-- 我在该网站上的至少一个线程中找到了此引用。

之后我就可以毫无问题地连续录制几个小时。因此,如果您遇到类似的情况,我建议您使用该CameraPreview代码作为起点。