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 属性来实现。以下是具体步骤和示例代码:

  1. 创建音频上下文:使用 uni.createInnerAudioContext() 创建音频实例。
  2. 设置播放速率:通过 innerAudioContext.playbackRate 属性设置速率值(例如 1.0 为正常速度,2.0 为两倍速)。
  3. 注意兼容性:不同平台对速率的支持可能不同(如 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 事件)再设置速率。

通过以上代码即可调整音频播放速度。

回到顶部