2011-05-12 73 views
0

在Xcode 3.2.5中,我想从单个UIButton按顺序播放多个音频文件(50+)。我尝试了几个代码,但他们泄漏了内存。有什么建议么?我仍然在学习,所以请包括头文件和implimentation文件代码。我提前感谢。Xcode:多个音频文件,单按钮

回答

1

使用音频队列服务(AudioToolbox/AudioQueue.h)中的接口。为要播放的每个声音创建一个音频队列对象。然后使用AudioQueueEnqueueBufferWithParameters函数为每个音频队列中的第一个音频缓冲区指定同时开始时间。

以下限制涉及在iPhone OS同步的声音,视音频数据格式:

AAC,MP3,和ALAC(苹果无损)音频:你可以扮演多种AAC,MP3,和ALAC格式的声音同时;播放这些格式的多种声音将需要CPU资源进行解码。 线性PCM和IMA/ADPCM(IMA4音频):您可以同时播放多个线性PCM或IMA4格式的声音,无需担心CPU资源。
play multiple sounds simultaneously

+0

谢谢,但这不是我想到的。我想通过按一个按钮来播放一连串的声音。 – Mark 2011-05-13 21:51:14

0

这仅仅是概念性的,但对于(a)创建要播放(这可以在运行时)声音名称的数组,以正确的顺序,然后(b)写一个功能拍摄每个soundHandler类型的对象都会检查它在数组中的位置;如果它不是最后一个,它会构造一个soundPlayer,加载声音,播放,然后调用数组中的下一个soundHandler。 (如果最后它只是构造/加载/播放,并且可能会通知父节点已完成)。每个soundHandler(我只是编写它,您必须编写它)然后可以在完成时自动释放它。

如果遇到延迟/加载问题,可以让每个soundHandler在数组中调用n + 2,然后检查它是否倒数第二个而不是结尾。

更多你在想什么?