关于wx.createInnerAudioContext()使用 基于2.11.2基础版本
发布于 4 年前 作者 vlong 4859 次浏览 来自 分享

本人在2.11.0基础版本接到一个需求,大致内容就是音频倍速播放,之前的案例都是放几个倍速文件上去。甲方不太满意。仔细研究文档,发现wx.createInnerAudioContext()能够使用这个功能。但是在使用中发现ios并不能使用倍速,安卓不受影响。然后社区找bug之后发现官方会在2.11.2版本修复。

当然2.11.2版本发布之后,你会惊奇的发现还是没有解决

但是依然可以使用这个功能,结果一样 ios还是不能倍速播放,安卓可以。然后我用了大半夜的时间偶然发现了一个可以替代的方法------就是在给倍速的时候先暂停再给倍速再播放,ios就能够倍速播放了。

废话少说直接上代码

onReady(){
    this.audioCtx = wx.createInnerAudioContext('myAudio');
    this.audioCtx.src = this.data.audio;
},
//播放按钮
playAudio(){
    this.audioCtx.play();
},
//倍数按钮
speed(){
     this.audioCtx.pause();
    this.audioCtx.playbackRate = 2;   //2倍速度播放
    this.audioCtx.play();
}

wx.playBackgroundAudio()同理

回到顶部