我有一个视频合成,我想在Airplay上播放(没有镜像) . 当使用普通的Airplay镜像时,该应用程序按预期工作,但我希望通过使用Airplay视频获得速度,可靠性和分辨率 .
问题是,当我设置
player.usesAirPlayVideoWhileAirPlayScreenIsActive = YES;
......玩家空白 .
笔记:
-
由于我没有为每个显示器创建单独的窗口,因此他们都试图使用相同的AVPlayer .
-
我的AVVideoComposition包含不同的文件,并在它们之间添加不透明度斜坡 .
-
这个悬而未决的问题表明问题更可能是因为我正在播放AVComposition而不是使用共享播放器:AVComposition doesn't play via Airplay Video
两个问题:
-
我是否必须摆脱iPad上的播放器?
-
AVVideoComposition可以通过AirPlay播放吗?
2 回答
我不能发表评论所以我不得不将其作为答案发布,尽管它可能没有完全回答这些问题 .
我有类似的问题,最后我发现,当
AVPlayer
播放AVComposition
时,它只是没有't display anything on the external display. That'为什么我必须通过听UIScreen
连接通知自己做 .我不得不说,一切都很完美 . 我首先检查是否有多个屏幕,如果有,我只需在屏幕上移动
AVPlayer
,同时在设备屏幕上显示一条内容播放的简单消息...加上AirPlay设备的名称 . 这样我可以在外部显示器上放置任何我想要的东西,并不是很复杂 . 同样的事情是我收到UIScreenDidConnectNotification
.这很好,直到我注意到外部显示器上的构图发挥得非常不稳定 . 即使它只包含一个没有任何复杂编辑或叠加的视频 . 如果我将其保存到相机胶卷或使用
MPMoviePlayerController
,则相同的视频播放效果非常好 .我尝试了很多东西,比如降低分辨率,降低
renderScale
等等但没有成功 .令我困扰的一件事是苹果实际上是如何在iMovie中做到这一点的 - 如果你启用了AirPlay并且你玩了一个项目(注意它仍然没有渲染,所以必须使用合成才能显示它),在点击播放按钮之后它会打开一个在外部显示器上播放内容的播放器 . 但是,如果您从播放器激活AirPlay,它将关闭并开始渲染项目 . 之后,它通过使用MPMoviePlayerController播放它 .
我仍在努力寻找解决方案,如果我有任何成功,我会回复 .
所以对于这两个问题:
我不明白为什么你要摆脱 .
是的,它可以播放,但技术不同,显然有问题 .
在应用程序.plist中创建一个名为的新项目:
required background modes
添加一个名为的新数组元素:
App plays audio or streams audio/video using AirPlay
不确定你是否已经尝试过这个,但你没有在帖子中提到它 .
干杯!