2014-06-22 113 views
0

我不能爲我的生活找出一種方法來播放MP4,它佔據了UIViewController中的整個背景。在Swift中使用MPMoviePlayerController()播放MP4

到目前爲止,我有以下內容,根本不播放視頻。

我可以確認存在bokeh.mp4視頻,因爲如果我將文件更改爲其他內容,則會拋出一個錯誤,指出它丟失了。

override func viewDidAppear(animated: Bool) { 
    let filePath = NSBundle.mainBundle().pathForResource("bokeh", ofType: "mp4") 
    self.moviePlayerController.contentURL = NSURL(string: filePath) 
    self.moviePlayerController.prepareToPlay() 
    self.moviePlayerController.repeatMode = .One 
    self.moviePlayerController.controlStyle = .Embedded 
    self.view.addSubview(self.moviePlayerController.view) 
} 

我在控制檯得到一個錯誤:

2014-06-22 21:22:42.347 MoviePlayer[26655:60b] _itemFailedToPlayToEnd: { 
    kind = 1; 
    new = 2; 
    old = 0; 
} 

我也嘗試添加一個UIView,佔用了整個屏幕並添加玩家這一觀點,但它是同樣的問題。它不開始播放。

我想要達到Vine在第一次加載應用程序時在視頻中播放視頻的效果。

enter image description here

回答

3

因此,這是盲目討厭:

我所做的只是改變:

self.moviePlayerController.contentURL = NSURL(string: filePath) 

TO:

self.moviePlayerController.contentURL = NSURL.fileURLWithPath(filePath) 
+0

更重要的是會使用URLForResource來自NSBundle的變體。 –

+0

@大衛:爲什麼呢? – fuzz

+1

因爲你不必自己做轉換,只需簡單一點。 –

相關問題