AudioUnits和MPMusicPlayerController

时间:2011-11-05 17:04:25

标签: iphone audio audiounit mpmusicplayercontroller

我的应用程序正在利用AudioUnit功能为节拍器应用程序生成短音。 一切正常。

现在我想从设备上的iTunes Lib播放MP3,我使用MPMusicPlayerController

直到这里没有probs,MP3播放正常。但之后我再也不能再发出AudioUnit个声音了。我调试它远远不会再出现音频缓冲区的回调所以我认为AUGraph已被停止,但它表示它仍在运行。

任何有想法的人? MPMusicPlayerController刚刚停止图表吗?以及如何防止这种情况?

感谢任何提示, 安德烈亚斯

1 个答案:

答案 0 :(得分:2)

从此doc“音乐播放器(MPMusicPlayerController类的实例)始终使用系统提供的音频会话。”您的应用程序无法访问系统提供的音频会话据我所知。因此,MPMusicPlayerController音频和您的应用音频不可能同时播放。

要同时播放iPod库和节拍器中的MP3,请执行以下操作:

  1. 设置带有自己音频会话的AUGraph
  2. 使用AVAssetReader
  3. 读取MP3的样本
  4. 通过一个频道将样本提供给您的AUGraph
  5. 在另一个频道上混合节拍器音频