gpt4 book ai didi

iOS 从数据 URI 播放视频

转载 作者:行者123 更新时间:2023-11-30 13:40:15 25 4
gpt4 key购买 nike

我尝试使用数据 URI (data:video/mp4;base64,AAAAHGZ0eXBtcDQyAAAAAG1wNDJpc29......) 播放视频。这是迄今为止我的代码:

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 秒)。

UPDATE:这个问题不太关心使用哪种方法(AVPlayer、MPMoviePlayerController)来播放视频。相反,它与从数据 URI 播放视频的可能性有关。 Here is a link它描述了我想要用 HTML5 做什么。

最佳答案

此代码从 URL 播放电影...假设这是您的问题?

let videoURL = self.currentSlide.aURL
self.playerItem = AVPlayerItem(URL: videoURL)
self.player = AVPlayer(playerItem: self.playerItem)
self.playerLayer = AVPlayerLayer(player: self.player)
self.streamPlayer = AVPlayerViewController()
self.streamPlayer.player = self.player
self.streamPlayer.view.frame = CGRect(x: 128, y: 222, width: 512, height: 256)
self.presentViewController(self.streamPlayer, animated: true) {
self.streamPlayer.player!.play()
}

但是抱歉,那是播放一个网址;你想要一个 URI。我以为你的问题输入错误,是我的错误。这次我查了 URI :|

答案肯定在于将视频源转换为可播放的流,就像 M3u8 一样。这是一篇关于这个主题的优秀文章。

http://stackoverflow.com/questions/6592485/http-live-streaming

关于iOS 从数据 URI 播放视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35659677/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com