我有一个视频合成,我想在Airplay上播放(没有镜像)。当使用普通的Airplay镜像时,该应用程序可以正常工作,但我希望通过使用Airplay视频获得速度,可靠性和分辨率。
问题在于我设置
player.usesAirPlayVideoWhileAirPlayScreenIsActive = YES;
......玩家空白。
注意:
两个问题:
答案 0 :(得分:0)
创建一个名为:
的新项目 required background modes
添加一个名为:
的新数组元素 App plays audio or streams audio/video using AirPlay
不确定您是否已经尝试过此操作,但在帖子中没有提及。
干杯!
答案 1 :(得分:0)
我无法发表评论,因此我不得不将此作为答案发布,尽管它可能无法完全回答问题。
我有类似的问题,最后我发现当AVPlayer
播放AVComposition
时,它根本不会在外部显示器上显示任何内容。这就是我必须通过收听UIScreen
连接通知来自己完成的原因。
我不得不说所有这些都非常完美。我首先检查是否有多个屏幕,如果有,我只需在屏幕上移动AVPlayer
,同时在设备屏幕上显示简单消息,播放内容...加上AirPlay的名称设备。这样我可以把任何我想要的东西放在外部显示器上并且不是很复杂。同样的事情是我收到UIScreenDidConnectNotification
。
这很好,直到我注意到外部显示器上的构图发挥得非常不稳定。即使它只包含一个没有任何复杂编辑或叠加的视频。如果我将其保存到相机胶卷或使用MPMoviePlayerController
,则相同的视频播放效果非常好。
我尝试了许多降低分辨率,降低renderScale
等等但没有成功的事情。
有一件事困扰我的是苹果实际上是如何在iMovie中做到这一点的 - 如果您启用了AirPlay并且您在播放按钮后立即播放项目(请注意它仍未呈现,因此必须使用合成才能显示它)它打开了一个在外部显示器上播放内容非常流畅的播放器。但是,如果您从播放器激活AirPlay,它将关闭并开始渲染项目。之后,它通过使用MPMoviePlayerController播放它。
我仍在努力寻找解决方案,如果我有任何成功,我会回复。
所以对于这两个问题: