音频单元从麦克风中捕获声音,添加混响,然后发送到扬声器

时间:2013-03-06 13:54:29

标签: ios core-audio audiounit

很抱歉再次打扰。

我使用音频图形处理方法来播放麦克风并为扬声器添加声音效果。 当我使用AUGraph_1:RIO_input-> Converter-> AUiPodE-> RIO_output,它工作正常,我可以听到声音播放。

但是当我使用AUGraph_2时:RIO_input->转换器 - > AUReverb2-> RIO_output,尝试添加一些混响,出错了,根本没有声音。

这是使用CAShow打印的日志:

AUGraph_1>>> 节点1:'auou''rioc''appl',实例0x816f920 O I

节点2:'aufc''conv''appl',实例0x81713e0 O I

节点3:'aufx''ipqq''appl',实例0x8171740 O I

连接:

节点1总线1 =>节点2总线0 [2 ch,0 Hz,'lpcm'(0x0000000C)16位小端有符号整数]

节点2总线0 =>节点3总线0 [2 ch,44100 Hz,'lpcm'(0x00000C2C)8.24位小端有符号整数,去交织]

节点3总线0 =>节点1总线0 [2 ch,44100 Hz,'lpcm'(0x00000C2C)8.24位小端符号整数,解交织]

AUGraph_2>>>>

节点1:'auou''rioc''appl',实例0x8151420 O

节点2:'aufc''conv''appl',实例0x7539df0 O

节点3:'aufx''rvb2''appl',实例0x7539210 O

连接:

节点1总线1 =>节点2总线0 [2 ch,0 Hz,'lpcm'(0x0000000C)16位小端有符号整数]

节点2总线0 =>节点3总线0 [2 ch,44100 Hz,'lpcm'(0x00000029)32位little-endian float,deinterleaved]

节点3总线0 =>节点1总线0 [2 ch,0 Hz,'lpcm'(0x0000000C)16位小端有符号整数]

有什么不对吗?

请帮助我,任何线索将非常感谢。

最佳

1 个答案:

答案 0 :(得分:2)

我做了同样的练习但使用了混音器单元而不是转换器如下

AudioUnitGraph 0x13D000:   会员节点:     节点1:'auou''rioc''appl',实例0x7ac9100 O
    节点2:'aumx''mcmx''appl',实例0x7acdee0 O
    节点3:'aufx''rvb2''appl',实例0x7acf150 O
  连接:     节点1总线1 =>节点2总线1 [1 ch,44100 Hz,'lpcm'(0x00000C2C)8.24位小端有符号整数,去交织]     节点2总线0 =>节点3总线0 [2 ch,44100 Hz,'lpcm'(0x00000029)32位little-endian float,deinterleaved]     节点3总线0 =>节点1总线0 [2 ch,0 Hz,'lpcm'(0x0000000C)16位小端有符号整数]

我简化了Audiograph http://zerokidz.com/audiograph/Home.html中的代码来执行此操作,因为它得到了很好的评论,并解释了各种ASBD格式的问题。