0
我試圖通過使用數據URI(data:video/mp4; base64,AAAAHGZ0eXBtcDQyAAAAAG1wNDJpc29 ......)來播放視頻。這裏是我的代碼至今:iOS從數據URI播放視頻
func videoDataWasLoaded(data: NSData) {
let moviePlayer = MPMoviePlayerController()
let base64 = data.base64EncodedStringWithOptions(NSDataBase64EncodingOptions(rawValue: 0))
let dataUri = NSURL(string: "data:video/mp4;base64,\(base64)")
moviePlayer.contentURL = dataUri
moviePlayer.play()
}
我已經證實,該視頻由數據(NSData的)寫入tmp文件,然後使用該對的contentURL播放。但是,寫入磁盤很慢,我認爲數據URI方法會更快,特別是因爲我的電影文件很小(每個大約5秒)。
更新:這個問題沒有太在意使用哪種方法(AVPlayer,MPMoviePlayerController)來播放視頻。相反,它關心的是從數據URI播放視頻的可能性。 Here is a link它描述了我想要在HTML5方面做什麼。
感謝您的回答。但是,我想知道是否可以使用數據URI(基本上是base64編碼的字符串)播放視頻,而不是將文件寫入磁盤。 – jfizz
我相信這段代碼正在流式傳輸文件,它並不是先下載它。 – user3069232
這聽起來像它可能是一個解決方案。你介意鏈接到適當的文件,它詳細介紹了流媒體嗎? – jfizz