uniapp如何修改音频播放速率

在uniapp中开发时遇到了音频播放速率调整的问题,尝试使用AudioContext但没成功。请问如何正确修改音频的播放速度?官方文档提到的playbackRate属性具体该怎么使用?有没有完整的代码示例可以参考?

2 回复

在uniapp中,使用createInnerAudioContext创建音频实例后,通过设置playbackRate属性即可调整播放速率。例如:

const audio = uni.createInnerAudioContext();
audio.playbackRate = 1.5; // 1.5倍速
audio.src = '音频路径';
audio.play();

支持0.5-2.5倍速,部分平台可能有限制。


在 UniApp 中修改音频播放速率,可以使用 uni.createInnerAudioContext() 创建的音频上下文对象的 playbackRate 属性。以下是具体步骤和示例代码:

实现步骤:

  1. 创建音频上下文:使用 uni.createInnerAudioContext() 初始化音频对象。
  2. 设置播放速率:通过修改 playbackRate 属性调整播放速度(例如:1.0 为正常速度,0.5 为半速,2.0 为两倍速)。
  3. 控制播放:调用 play() 方法开始播放。

示例代码:

// 创建音频上下文
const audio = uni.createInnerAudioContext();
audio.src = 'https://example.com/audio.mp3'; // 替换为你的音频地址

// 设置播放速率(范围通常为 0.5~2.0,具体支持度需测试)
audio.playbackRate = 1.5; // 1.5倍速播放

// 开始播放
audio.play();

// 可选:监听播放状态
audio.onPlay(() => {
  console.log('音频开始播放');
});

注意事项:

  • 兼容性playbackRate 属性在部分平台(如小程序)可能受限,需测试目标平台支持情况。
  • 速率范围:建议设置在 0.5~2.0 之间,超出范围可能不生效。
  • 用户交互:某些平台要求音频播放需由用户触发(如点击事件),需在按钮回调中调用。

通过以上方法即可灵活调整 UniApp 中的音频播放速率。

回到顶部