我目前正在使用 AVPlayerViewController/AVPlayer 处理 HTTP Live 流媒体视频
我正在播放支持 .m38u 文件的视频
它播放得很好,但我的问题是,我可以拥有视频数据吗,就像我在生成 .m38u 文件时设置了 4 种分辨率一样。我可以在终点改变分辨率,现在的问题是如何获取我在端点设置的所有值。我也在android中玩这个游戏,使用Track我可以获取所有视频信息,但在ios中我如何获取包含视频的所有详细信息,例如视频的高度、轨道、分辨率等。
我进行了很多搜索但未能成功.. 需要帮忙 提前致谢
最佳答案
Anita,我希望这里是播放视频的代码片段..
self.command.text = "Loading VIDEO"
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)
let currentFM = self.streamPlayer.player?.currentItem?.asset
for blah in (currentFM?.metadata.enumerate())! {
print("blah \(blah)")
}
self.presentViewController(self.streamPlayer, animated: true)
self.streamPlayer.player!.play()
}
我添加了一些额外的内容来显示有关视频的元数据...它打印了...
blah (0, <AVMetadataItem: 0x15e7e4280, identifier=itsk/gsst, keySpace=itsk, key class = __NSCFNumber, key=gsst, commonKey=(null), extendedLanguageTag= (null), dataType=com.apple.metadata.datatype.UTF-8, time={INVALID}, duration= {INVALID}, startDate=(null), extras={
dataType = 1;
dataTypeNamespace = "com.apple.itunes";
}, value=0>)
blah (1, <AVMetadataItem: 0x15e7e1a50, identifier=itsk/gstd, keySpace=itsk, key class = __NSCFNumber, key=gstd, commonKey=(null), extendedLanguageTag=(null), dataType=com.apple.metadata.datatype.UTF-8, time={INVALID}, duration={INVALID}, startDate=(null), extras={
dataType = 1;
dataTypeNamespace = "com.apple.itunes";
}, value=222980>)
希望它对你来说比对我意味着更多:)我认为你的样子在 Applespeak 中被分类/称为元数据......
也看看这篇文章
Capture still image from AVCaptureSession in Swift
它描述了如何捕获视频的帧,一旦你有了一个帧,你就可以仔细查看它的元数据,我怀疑会找到你想要的一些细节。
让元数据=信息[UIImagePickerControllerMediaMetadata]为? NSDictionary
让 image = info[UIImagePickerControllerOriginalImage] 为? UI图像
是否有尝试获取该内容的命令...如果您成功,请告诉我!
关于ios - 使用 AVPlayerViewController 从 HTTP 实时流中获取视频详细信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35668657/