2016-06-17 369 views
1

我試圖用一個AVPlayer播放已經記錄在我的應用程序的視頻。但是,玩家不會播放視頻。我知道這是一個正確記錄的mp4文件,因爲我可以在Mac上播放它,並且很好。這裏是玩家的設置:AVPlayer不播放本地MP4

let documents = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask).first! 
let URL = NSURL(fileURLWithPath: "tempVideo", relativeToURL: documentsDirectory) 
let asset = AVAsset(URL: URL) 
let item = AVPlayerItem(asset: asset) 

//videoPlayer is a property on the view controller being used 
videoPlayer = AVPlayer() 

//videoPlayerLayer is a property on the view controller being used 
videoPlayerLayer = AVPlayerLayer(player: videoPlayer) 
videoPlayerLayer.frame.size = view.frame.size 
videoPlayerLayer.backgroundColor = UIColor.redColor().CGColor 

view.layer.addSublayer(videoPlayerLayer!) 

//wait 5 seconds 

videoPlayer.play() 

我知道肯定的videoPlayer,其實,準備玩,因爲我已經簽了status財產。我也知道videoPlayerLayer已正確添加到view.layer,因爲它可見並佔用整個屏幕。當我撥打videoPlayer.play()時,設備上播放的音樂停止,但videoPlayerLayer不顯示任何內容。

任何想法?預先感謝您的幫助!

編輯:我忘了表明videoPlayerLayer確實連接到videoPlayer,我已經更新了我的問題,以反映這一點。

+0

我認爲你需要指定的視頻格式太像「tempVideo.mp4」。 – Dershowitz123

+0

您是否已將物品分配給AVPlayer和玩家到玩家層?我在你的問題中找不到那個代碼 –

回答

0

正確的答案被@ Dershowitz123給出,但他或她離開它的評論,所以我不能將其標記爲正確的。解決方案是更改URL以包含.mp4擴展名。感謝您的幫助。