是否有一种“简单”的方式在iPhone上播放线性PCM音频?

时间:2010-02-06 22:36:51

标签: iphone streaming audio-streaming pcm

我正在制作一个媒体播放应用程序,它可以从第三方解码器获得未压缩的线性PCM(超原始)音频,但是当我回想起我能想象到的最简单的音频格式时,我会发疯..

当源文件从服务器流出时,最后的应用程序将逐步获取PCM数据,所以我最初查看了音频队列(因为我似乎只是在运行时给它提供了字节),但结果却是精神错误 - 特别是因为Apple自己的音频队列示例代码似乎在OpenGL的神奇实地考察和不必要的封装中出现..

我最终在(非流媒体)原型制作过程中使用AVAudioPlayer;我目前创建一个WAVE标头并将其添加到PCM数据的开头以使AVAudioPlayer接受它(因为它不能接受原始PCM)

显然,流媒体没有用(WAVE设置标题中的整个文件长度,因此无法在移动中添加数据)..

..本质上:有没有办法给iPhone OS一些PCM字节并让它播放?

1 个答案:

答案 0 :(得分:1)

您应该重新访问AudioQueue代码。一旦你剥离了所有的guff,你应该有大约2页的代码加上一个回调,你可以在其中提供原始的PCM。此回调也与主循环同步,因此您甚至不必担心锁定。