uniapp innerAudioContext 如何设置 playbackRate
在uniapp中使用innerAudioContext播放音频时,如何设置playbackRate来控制播放速度?官方文档没有明确说明这个属性的用法,实际测试发现直接设置playbackRate属性无效。请问正确的设置方法是什么?是否需要特定平台支持?
2 回复
在uniapp中,设置innerAudioContext的playbackRate很简单:
const audio = uni.createInnerAudioContext();
audio.playbackRate = 1.5; // 设置播放速度,1.0为正常速度
支持的值范围通常是0.5-2.0,具体看平台支持。设置后音频将以指定倍速播放。
在 UniApp 中,innerAudioContext 用于控制音频播放。要设置播放速率(playbackRate),可以通过修改 playbackRate 属性来实现。以下是具体步骤和示例代码:
- 创建音频上下文:使用
uni.createInnerAudioContext()创建音频实例。 - 设置播放速率:通过
innerAudioContext.playbackRate属性设置速率值(例如 1.0 为正常速度,2.0 为两倍速)。 - 注意兼容性:不同平台对速率的支持可能不同(如 iOS 部分版本可能限制速率范围),建议测试目标平台。
示例代码:
// 创建音频实例
const audio = uni.createInnerAudioContext();
// 设置音频源(替换为实际音频 URL)
audio.src = 'https://example.com/audio.mp3';
// 设置播放速率(例如 1.5 倍速)
audio.playbackRate = 1.5;
// 播放音频
audio.play();
// 可选:监听播放速率变化
audio.onPlaybackRateChange((res) => {
console.log('当前播放速率:', res.playbackRate);
});
注意事项:
- 速率值通常建议在 0.5 到 2.0 之间,具体范围依赖平台支持。
- 部分平台可能需要先加载音频(通过
onCanplay事件)再设置速率。
通过以上代码即可调整音频播放速度。

