iOS:使用AudioQueue时快进音频
我正在用AudioQueue进行音频播放。有人知道如何控制播放速率,以便在音频输出时快进快退吗?AVPlayer有一个“rate”属性,但是我需要使用AudioQueueiOS:使用AudioQueue时快进音频,ios,objective-c,audio,audioqueue,Ios,Objective C,Audio,Audioqueue,我正在用AudioQueue进行音频播放。有人知道如何控制播放速率,以便在音频输出时快进快退吗?AVPlayer有一个“rate”属性,但是我需要使用AudioQueue 我在《多媒体编程指南》或《音频队列服务编程指南》中没有找到类似的内容。看起来Mac OS X支持Rocky提到的Kaudioqueparam_播放速率,但这在iOS上不起作用Kaudioqueparam_播放速率从版本7开始在iOS上起就起作用。必须在播放开始前专门启用它,才能使其工作: var enabled
我在《多媒体编程指南》或《音频队列服务编程指南》中没有找到类似的内容。看起来Mac OS X支持Rocky提到的Kaudioqueparam_播放速率,但这在iOS上不起作用
Kaudioqueparam_播放速率
从版本7开始在iOS上起就起作用。必须在播放开始前专门启用它,才能使其工作:
var enabled : UInt32 = 1;
AudioQueueSetProperty(queue!, kAudioQueueProperty_EnableTimePitch, &enabled, 4);
var algorithm = kAudioQueueTimePitchAlgorithm_Spectral;
AudioQueueSetProperty(queue!, kAudioQueueProperty_TimePitchAlgorithm, &algorithm, 4);
然后,您可以根据需要更改速率和音高:
AudioQueueSetParameter(q, kAudioQueueParam_PlayRate, Float32(rate));
AudioQueueSetParameter(q, kAudioQueueParam_Pitch, Float32(pitch));
(很抱歉快速回答了一个标记为objective-c的问题,但这正是我必须使用的示例…使用Kaudioqueparam_Playrate谢谢,但看起来这只适用于OS X,而不适用于iOS。我可能应该在问题中指定iOS,而不仅仅是作为标签。我现在就编辑它。