首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何回放AVCaptureMovieFileOutput

如何回放AVCaptureMovieFileOutput
EN

Stack Overflow用户
提问于 2017-06-13 02:43:45
回答 1查看 300关注 0票数 1

我目前能够录制视频到一个AVCaptureMovieFileOutput实例,但我找不到任何来源,从中可以看出视频回放是如何可能的snapchat/facebook/instagram能够产生。

我是否应该使用AVCaptureVideoPreviewLayer,如果是这样的话,我将如何做到这一点,因为我能够成功地记录到AVCaptureMovieFileOutput实例。一个解决方案或指导将是非常有用的!

或者是一个特定的控制器,玩家等等?我发现唯一的游戏是AVPlayerViewController,但是它不是一个没有按钮和进度条的播放器。

代码语言:javascript
复制
func captureMovie(withDelegate delegate: AVCaptureFileOutputRecordingDelegate) {
  if movieOutput.isRecording == false {
    let connection = movieOutput.connection(withMediaType: AVMediaTypeVideo)

    if (connection?.isVideoStabilizationSupported)! {
      connection?.preferredVideoStabilizationMode = AVCaptureVideoStabilizationMode.auto
    }

    let device = activeInput.device

    if (device?.isSmoothAutoFocusEnabled)! {
      do {
        try device?.lockForConfiguration()
        device?.isSmoothAutoFocusEnabled = false
        device?.unlockForConfiguration()
      }
      catch {
        print("Error smooth auto focus")
      }
    }

    let outputURL = tempURL()
    movieOutput.startRecording(toOutputFileURL: outputURL, recordingDelegate: delegate)
  } else {
    stopRecording()
  }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-14 08:27:53

因为AVCaptureMovieFileOutput将电影保存到文件URL中。我们需要使用AVPlayerViewControllerAVPlayerLayer来播放它。

您的最佳解决方案是在outputURL中在AVPlayerViewController中播放视频,并隐藏按钮和进度栏等控件,使用下面的属性设置false

@property(非原子) BOOL showsPlaybackControls;

查看下面的链接以获得更多信息

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44511552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档