我正在使用 GPUImage 框架连续录制多个视频,并使用 GPUImageVideoCamera 和 GPUImageMovieWriter 实时启用各种过滤器。
当我录制视频时,视频以一个混蛋(冻结半秒)开始,也以一个混蛋结束。我知道这背后的原因是我将movieWriter对象传递给VideoCamera的audioEncodingtarget的语句。
因此,在我的情况下,当我一个接一个地录制多个视频(使用不同的 GPUImageMovieWriter 对象)时,视频预览视图会在每次录制的开始和结束时冻结。
如果我删除音频编码目标语句,情况会显着改善,但我当然不会得到音频。
目前我在录制时使用 AVAudioRecorder 来保存音轨,但我相信这不是一个理想的解决方法。
有什么办法可以解决这个问题。
-- 我查看了 Apple 的 RosyWriter 示例,他们的应用程序以几乎恒定的 30 fps 运行几乎相似但流畅。我尝试使用 RosyWriter 代码(在删除添加紫色效果的代码之后)保存所需的视频,同时向用户显示 GPUImageVideoCamera 的过滤视图,但徒劳无功。当应用未修改的 rosywriter 代码时,仅记录两个视频,其余视频失败。我还尝试在 rosywriter 代码中传递来自 GPUImageVideoCamera 的捕获会话,但只获取带有黑框且没有音频的视频。
请帮助我如何在没有这种抖动的情况下录制带有音频的 GPUImage 过滤视频。提前致谢