我正在关注有关如何在iOS上捕获视频的this教程。
当您下载他们的示例代码并运行它时,它显示了两种捕获视频的方法:AVMovieFileOutput
和AVAssetWriter
。
两种方法的技术区别是什么?这个比那个好吗?
最佳答案
AVMovieFileOutput
和AVAssetWriter
(与AVCaptureVideoDataOutput
结合使用)都可以将媒体样本捕获到文件中,但是AVAssetWriter
是这两个接口中的较低级别,并且可配置性更高,因此使用AVAssetWriter
/ AVCaptureVideoDataOutput
您可以在写入媒体样本之前对其进行拦截和修改这样您就可以应用效果并从设备中流式播放等。
上次我检查不能将AVMovieFileOutput
和AVCaptureVideoDataOutput
都添加到iOS捕获 session 中,因此,一旦要实时检查和记录流经 session 的数据,便别无选择,只能使用AVAssetWriter
/ AVCaptureVideoDataOutput
。
*实际上AVMovieFileOutput
可能是使用AVAssetWriter
实现的。