在iphone中同时播放2个mp3声音?

RAM*_*ANA 2 iphone

我们可以在iphone上同时播放2个mp3声音吗?iphone是否支持此功能?

iHS*_*iHS 5

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

以下限制适用于iPhone OS中的同步声音,具体取决于音频数据格式:

AAC,MP3和ALAC(Apple Lossless)音频:您可以同时播放多种AAC,MP3和ALAC格式的声音; 播放这些格式的多个声音将需要CPU资源进行解码.

线性PCM和IMA/ADPCM(IMA4音频):您可以同时播放多个线性PCM或IMA4格式声音,而无需考虑CPU资源.

在一次播放多个声音方面,这很容易,只需为你想要播放的每一个创建一个新的播放器实例(并记得在你完成时释放它们)

 NSString *path = [[NSBundle mainBundle] pathForResource:@"YOUR_FILE_NAME" ofType:@"m4a"];  
 AVAudioPlayer* objAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];  
 objAudio.delegate = self;  
 [objAudio play];
Run Code Online (Sandbox Code Playgroud)

要将MP3转换为IMA4(您可以同时播放多个),您可以运行以下命令(在终端中,在豹子中):

 /usr/bin/afconvert -f caff -d ima4 sound.mp3 sound.caf
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请访问音频播放/录制