AVAudioPlayer只能在模拟器中播放而不是设备为什么?! (iPhone-SDK)

时间:2009-06-19 06:32:08

标签: iphone audio

我有以下简单的代码播放声音

NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"sound" ofType:@"wav"];
    player =[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath: soundPath] error:nil];
    player.volume = 1;
    player.numberOfLoops = 0;
[player prepareToPlay];
        [player play];

出于某种原因,这段代码只能在模拟器中播放,而不能在设备中播放任何想法?


更新:实际上我安装了AvTouch,一个Apple的示例应用程序到3.0,但也不起作用。 AVAudioPlayer出了什么问题?

1 个答案:

答案 0 :(得分:1)

如果音频文件使用的编解码器在OS X上可用,而在iPhone上不可用,则会发生这种情况。当扩展名与文件的实际内容不匹配时也会导致此问题。单步执行调试器并观察调试控制台是否存在编解码器错误,或使用afconvert将文件重新转换为支持的格式。