我正在使用AVPlayerViewController在流媒体中播放视频。
当我在Apple TV的AVPlayerViewController上启动Airplay并将应用程序置于后台时,或者如果我锁定了设备,视频会在Apple TV上暂停。
我在这篇文章中证实了这一点[https://developer.apple.com/library/archive/qa/qa1668/_index.html#//apple_ref/doc/uid/DTS40010209][1]
我检查了背景音频,播放模式我的音频会话已在AVAudioSessionCategoryPlayback中启动并处于活动状态当我进入后台或锁定设备时,我的AVPlayer处于播放模式
我阅读了这篇文章的"视频媒体的特殊考虑"一段[https://developer.apple.com/library/archive/qa/qa1668/_index.html#//apple_ref/doc/uid/DTS40010209][1] ,但他们没有谈到AVPlayerViewController。
我知道视频不是可能的背景模式功能之一,但Airplay是。
那么,你有什么方法可以让视频流音频/图像在后台或使用AVPlayerViewController锁定的设备中与应用程序一起播放吗?
提前感谢您的建议或任何我会错过的技术链接。
Xcode 13
我所要做的就是启用后台模式Audio, Airplay, and Picture in Picture
。要做到这一点,只需选择目标,添加背景模式,并勾选音频、Airplay和画中画复选框。
然后设置AV会话的类别。我是在视频播放之前做的。
let audioSession = AVAudioSession.sharedInstance()
do {
try audioSession.setCategory(.playback)
} catch {
print("Setting category to AVAudioSessionCategoryPlayback failed.")
}
然后,它支持在设备锁定时播放视频。我用的是AVPlayerViewController
。