ios - 使用自定义相机 UI 录制视频但阻止保存

标签 ios swift video avfoundation video-recording

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

最佳答案

AVFoundation 框架只有以下捕获 session 的输出。

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

因为您不想将录制的视频保存到文件中。另一个最佳选择是使用 AVCaptureVideoDataOutput 并获取连续录制视频上的每一帧并从图像缓冲区创建视频。请注意,在这种情况下您将没有音频输出。同样,我们可以添加 AVCaptureAudioDataOuput 并将音频单独嵌入到我们录制的视频中。但此解决方法不适用于更高的帧速率。所以最好的建议是将视频保存到临时文件夹中,稍后再删除。

关于ios - 使用自定义相机 UI 录制视频但阻止保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45307657/

相关文章:

ios - 允许按钮在页面 View Controller 中触发新的 View Controller - swift

swift - 代码 : unknown class in interface builder file when using static library

python - 在 python 中使用 libVLC 从内存中播放视频

javascript - 我从 Youtube Data API 上传的视频在哪里?

ios - ScrollView - 如何让按钮一直停留在屏幕底部

ios - 行不更新 sqlite3

ios - 在自定义键盘中从 UIWebView 启动包含的应用程序

javascript - Ziggeo、WebRTC 无法读取视频文件

ios - iOS8 证书错误的 OTA 部署

ios - 如何使用 Google Sign In 保持用户登录状态?