代码之家  ›  专栏  ›  技术社区  ›  Jacob Howcroft

AVPlayer无法使用AirPlay

  •  6
  • Jacob Howcroft  · 技术社区  · 10 年前

    我有一系列AVMutabbleComposition,我正在用AVPlayer玩。当我通过扬声器、耳机或蓝牙播放时,一切都很好。然而,当我连接到AirPlay时,一切都崩溃了。

    我可以播放一个资源,然后尝试切换到一个新的资源,我收到AVAudioSessionMediaServicesWereResetNotification,设备与AirPlay断开连接。我尝试将AVMutabbleComposition导出到文件,然后使用AVURLAssets,但这似乎没有改变任何东西。

    有人知道这里发生了什么吗?看起来我无法支持AirPlay。。。

    我觉得我可以切换到AVAudioPlayer,这可以解决问题,但我正在生成数十个AVMutabbleComposition,不想将它们读写到磁盘上。

    1 回复  |  直到 10 年前
        1
  •  9
  •   user3821934 user3821934    10 年前

    这是反直觉的,但尝试设置

    myPlayer.allowsExternalPlayback = NO;
    

    文档对此并不完全清楚,但这似乎只允许视频播放。当我在我的应用程序(使用AVPlayer)中执行此操作时,带有AVComposition的Airplay可以正常工作。即使是艺术品也能很好地展示出来(通过MPNowPlayingInfoCenter)。