在 UIImagePickerController 中打开录制的视频

Open recorded video in UIImagePickerController

我正在创建自定义叠加层以与 UIImagePickerController 一起使用,因为我想修改作为默认控件出现的文本和图像。这部分根据需要显示。

我想让用户流尽可能接近默认值。我希望视频在捕获后可以播放,但我不确定如何在 UIImagePickerController.

中打开它

我在 videoData 变量中有视频数据,但不确定如何继续。我是将其保存到 class 级别变量并实例化一个新的 imagePickerController,还是需要转至一个全新的视图控制器并从头开始构建 UI。原因是用户可能需要重新录制视频。

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]){

    // Save video to device
    let videoURL = info[UIImagePickerControllerMediaURL] as! NSURL
    let videoData = NSData(contentsOfURL: videoURL)

    self.dismissViewControllerAnimated(true, completion: nil)
}

非常感谢任何帮助。

您可以使用AVPlayer播放视频;

func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]){

    // Save video to device
    let videoURL = info[UIImagePickerControllerMediaURL] as! NSURL

    // no need NSData
    //let videoData = NSData(contentsOfURL: videoURL)

    self.dismissViewControllerAnimated(true, completion: nil)

    let videoPlayer = AVPlayer(URL: videoURL)
    videoPlayer.actionAtItemEnd = .None
    let videoLayer = AVPlayerLayer(player: videoPlayer)
    videoLayer.frame = CGRectMake(0, 0, 200, 200)
    self.view.layer.addSublayer(videoLayer)
    videoPlayer.play()
}