我在自定义相机UI中使用了 AVCaptureFileOutputRecordingDelegate-didFinishRecordingToOutputFileAt ,但我不想通过此方法,因为视频在完成录制后已保存。
由于遗留原因,我无法在本地保存视频,然后将其放入静态实例并从本地删除。
我怎样才能做到这一点 ?

最佳答案

AVFoundation框架对于捕获 session 仅具有以下输出。

  • AVCaptureMovieFileOutput-记录和输出电影文件
  • AVCaptureVideoDataOutput-处理正在捕获的视频中的帧
  • AVCaptureAudioDataOuput-处理正在捕获的音频数据
  • AVCaptureStillImageOutput-捕获静止图像输出

  • 由于您不想将录制的视频保存到文件中。另一个最佳选择是使用AVCaptureVideoDataOutput并获取连续录制视频中的每一帧,然后从图像缓冲区创建视频。要进行记录,在这种情况下将没有音频输出。同样,我们可以添加AVCaptureAudioDataOuput并将音频分别嵌入到我们录制的视频中。但是,此解决方法不适用于更高的帧速率。因此,最好的建议是将视频保存到temp文件夹中,然后再将其删除。

    10-07 14:04
    查看更多