ios中的实时音频输入和输出流

时间:2011-02-25 14:14:15

标签: ios audio-streaming

是多媒体工作的新手。我希望通过样本捕获音频并通过networkhow转移到其他ios设备开始我的工作??? .i刚刚通过了苹果多媒体指南和说明的例子,它充满了c ++代码,他们正在写入文件然后启动服务,但我需要缓冲...请帮助我以正确的方式开始我的工作。 / p>

提前致谢

2 个答案:

答案 0 :(得分:8)

我花了很多时间研究实时音频,你可以使用AudioQueue,但它有100-200ms左右的延迟问题。

如果你想做t-pain应用程序,你必须使用

  • RemoteIO API
  • Audio Unit API

它们同样难以实现,因此我只选择远程IO 路径。

来源可以在这里找到:

http://atastypixel.com/blog/using-remoteio-audio-unit/

答案 1 :(得分:0)

我已经对上面的答案进行了评价,但是我想添加一些信息,这些信息花了我一段时间才弄明白。当使用AudioQueue进行录制时,直观的概念是回调是以规则的间隔完成的,无论样本数量代表什么。这个概念是不正确的,AudioQueue似乎长时间收集样本,然后在非常快速的回调迭代中传递它们。

在我的情况下,我做了20ms的样本,并且每次回调接收320个样本。当打印出呼叫的时间戳时,我注意到一种模式:每2毫秒呼叫1次,然后在一段时间内呼叫约180毫秒。自从我做VoIP以来,这就出现了接收端延迟增加的症状。切换到远程I / O似乎已经解决了这个问题。