我想控制AVAudioplayer
中音频的播放速度。这可能吗?如果是这样,你会怎么做?
答案 0 :(得分:29)
现在可以更改播放速度。
示例代码:
player = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:&err];
player.volume = 0.4f;
player.enableRate = YES; //<--
[player prepareToPlay];
[player setNumberOfLoops:0];
player.rate = 2.0f; //<-- Playback Speed
[player play];
enableRate
设置为YES
,您可以对其进行更改。
请参阅docs。
中的详情答案 1 :(得分:7)
看起来适用于iOS5 - docs并查看费率。
感谢,
答案 2 :(得分:5)
player.prepareToPlay()
player.enableRate = true
player.rate = 2.0
player.play()
player.numberOfLoops = 3
答案 3 :(得分:1)
你做不到。您只能更改音量而不是播放速度。
我认为要这样做,您必须使用更低级别的音频队列 API并手动操作音频流以应用该效果。
答案 4 :(得分:1)
试试这个 -
audioP = try! AVAudioPlayer(contentsOf: URL(fileURLWithPath: selectedPath), fileTypeHint: "caf")
audioP.enableRate = true
audioP.prepareToPlay()
audioP.rate = 1.5
audioP.play()
答案 5 :(得分:0)
AVAudioPlayer不支持播放速度设置。音频队列服务非常难以使用,因此您可能需要尝试使用OpenAL。有关如何在Objective-C中包装OpenAL的示例,请参阅Cocos2D或Finch中的声音引擎。
答案 6 :(得分:0)
设置enableRate = YES然后你可以调整0.1到2.0之间的速度来减速和加速(1.0是正常速度)