2011-11-24 38 views
0

我想实现一个简单的吉他。如你所知,一把吉他有六根琴弦,当你弹奏其中一根琴弦时,相应的声音将会播放。为了解决这个问题,我在viewDidLoad中初始化了六个avaudioplayers并使用了一个mp3文件。在touchesMoved中,我检查哪一个字符串被触摸,然后播放相应的声音。但是,当我将手指从第二个弦快速移动到第六个弦时,结果不太好。只有第一个声音播放(即第二个字符串)。任何人可以分享任何想法?如何播放声音以创建弹奏效果?

回答

0
  • 1 - 不使用MP3压缩的声音,但普通的PCM。

iOS只在硬件加速回放中处理一个MP4/MP3声音 - 另外一个将使用软件解码器播放。

  • 2 - 使用OpenAL播放声音。

OpenAL易于使用,有良好的文档和iOS处理(AFAIK)32个声音同时没有更大的缺点。

+0

伟大,感谢乌拉圭回合的帮助 –

+0

高兴能帮上忙。如果这个答案解决问题,请选择灰色复选标记它的左侧和向上箭头挖掘。感谢和快乐的编码! – Till