我正在使用avcapturesession和预设的AVCaptureSessionPresetMedium来捕捉视频,我正在使用着色器使用opengl对此视频应用效果。
我使用assetWriter将视频写入mp4文件。问题是,当我添加音频输出时,结果视频很慢。
这是我的代码的工作方式:
- 在 -
(空隙)captureOutput:(AVCaptureOutput
*)captureOutput ... function我将opengl过滤器应用于捕获的
帧
- 然后检查captureoutput是否
视频或音频,如果它是视频,我使用
glReadPixels创建一个
我发送给的一个CVPixelBufferRef
AVAssetWriterInputPixelBufferAdaptor
写它
- 如果是音频,我直接写
CMSampleBufferRef
醇>
如果有人可以告诉我我的方法有什么问题,或者哪一部分应该让结果视频变慢?