AVAudioPlayer没有调整速率

时间:2014-11-06 01:19:55

标签: ios xcode avaudioplayer

我的iPhone应用程序的XCode项目中有两个AVAudioPlayer。

它们的启动如下:

    self.audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:heliSoundURL error:nil];
    [self.audioPlayer setNumberOfLoops:-1];
    [self.audioPlayer setVolume:1.0];
    [self.audioPlayer enableRate];
    [self.audioPlayer play];

在这一行的某个地方,我调用了一个调用[self.audioPlayer setRate:.5f];的方法,它什么也没做。

我也尝试在调用play之前更改费率,但没有任何效果。也许我需要使用某种文件格式?

1 个答案:

答案 0 :(得分:0)

您必须将enableRate设置为YES才能使rate属性生效 您必须在调用prepareToPlay之前设置它。

self.audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:heliSoundURL error:nil];

self.audioPlayer.delegate = self;

[self.audioPlayer setNumberOfLoops:-1];

[self.audioPlayer setVolume:1.0];

[self.audioPlayer setEnableRate:YES];

[self.audioPlayer setRate:.5f];

[self.audioPlayer prepareToPlay];

[self.audioPlayer play];

我希望这会对你有所帮助。

干杯