尝试在 Xcode 7 / Swift 2 中播放视频时出错

Error when trying to play video in Xcode 7 / Swift 2

我试图在输入视频时在视图控制器中播放视频,但出现一个错误,列出 below.Not 对视频播放太熟悉了,所以它应该在 viewcontroller 以及如何修复该错误?视频存储在 xcode 中。谢谢。

import UIKit
import MediaPlayer
import AVFoundation

class AuroraViewController: UIViewController {



@IBOutlet var AuroraViewController: UIView!

var moviePlayer: AVPlayer?


private func playVideo() {
    if let path = NSBundle.mainBundle().pathForResource("Aurora", ofType:"mp4") {
        let url = NSURL(fileURLWithPath: path)

下面一行是我得到错误的地方:表达式类型不明确,没有更多上下文

        moviePlayer = AVPlayer(contentURL: url) {
            self.moviePlayer = moviePlayer
            moviePlayer.AuroraViewController.frame = self.AuroraViewController.bounds
            moviePlayer.prepareToPlay()
            moviePlayer.scalingMode = .AspectFill
            self.AuroraViewController.addSubview(moviePlayer.view)
        }
    } else {
        debugPrint("Ops, something wrong when playing video.m4v")
    }
}

override func viewDidLoad() {
    super.viewDidLoad()

    // Do any additional setup after loading the view.
    playVideo()
}




override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}



}

更新 正确代码:

import UIKit 
import AVFoundation 
import AVKit 

class AuroraViewController: AVPlayerViewController { 
private func playVideo() { 
    if let path = NSBundle.mainBundle().pathForResource("Aurora", ofType: "mp4") { 
        let url = NSURL(fileURLWithPath: path) 
        player = AVPlayer(URL: url) 
    } 
    else { 
        println("Oops, could not find resource Aurora.mp4") 
    } 
} 

override func viewDidAppear(animated: Bool) { 
    super.viewDidAppear(animated) 
    playVideo() 
} 
}

这是 'total re-write'。

以下人员完成了这项工作:

将 "AVKit.framework" 添加到项目设置中的 "Build Phases" -> "Link Binary With Libraries"。

在 Storyboard 中,将 UIViewController 的身份更改为 AuroraViewController。

生成的代码就是所需要的:

import UIKit 
import AVFoundation 
import AVKit 

class AuroraViewController: AVPlayerViewController { 
    private func playVideo() { 
        if let path = NSBundle.mainBundle().pathForResource("Aurora", ofType: "mp4") { 
            let url = NSURL(fileURLWithPath: path) 
            player = AVPlayer(URL: url) 
        } 
        else { 
            println("Oops, could not find resource Aurora.mp4") 
        } 
    } 

    override func viewDidAppear(animated: Bool) { 
        super.viewDidAppear(animated) 
        playVideo() 
    } 
}