.ism/manifest 苹果电视格式

.ism/manifest format on apple tv

我可以在 AppleTV 上播放格式为 .ism/manifest 的视频流吗?

我使用 AVFoundation 和 AVQueuePlayer。我将我的播放器保持在 ViewController 范围内,而不是在功能范围内。我尝试在 url 末尾添加“(format=m3u8-aapl,audio-only=false)”,但视频在开始后出现滞后。所以我的代码是:

let url = "http://vodstreaming.dev.mr.tv3ce.com/3ba7e5c5-277a-4c4b-b5ae-d06d2524a290/hv5_After_Earth_1080i29_noAudioPCR_6Mbps_fixed_GOP.ism/manifest(format=m3u8-aapl,audio-only=false)"
let playerItem = AVPlayerItem(url: url)
player.insert(playerItem, after: nil)
player.play()

我读到 iOS 存在 AVAssetDownloadURLSession 但 TvOS 不存在。也许存在其他在 TvOS 上流式传输的解决方案?

您似乎正在为该流使用 Azure 媒体服务。使用格式参数将 return m3u8 清单,通常可以在 tvOS、iOS 和 macOS 上播放 - 只要编解码器正确。

但是,您的表现只有一个品质,大约为 5 mbit/s。最佳做法是也提供较低的质量。所以你可能 运行 陷入缓冲问题(如果那是你所说 "has lags after start" 的意思)。

Apple 有一组 Best Practices 可用的视频流。