WebAudioContext wx.createWebAudioContext()

基础库 2.19.0 开始支持,低版本需做兼容处理

Promise 风格 调用:不支持

小程序插件:不支持

创建 WebAudio 上下文。本接口目前还处于 Beta 版本,其中,最新开发者工具和iOS客户端已支持调试,安卓客户端正在灰度测试中,当前版本可能出现不稳定状况,请谨慎用于生产环境。

返回值

WebAudioContext

示例代码

一个简单的播放demo


const audiCtx = wx.createWebAudioContext()

const loadAudio = (url) => {
  return new Promise((resolve) => {
    wx.request({
      url,
      responseType: 'arraybuffer',
      success: res => {
        console.log('res.data', res.data)
        audioCtx.decodeAudioData(res.data, buffer => {
          resolve(buffer)
        }, err => {
          console.error('decodeAudioData fail', err)
          reject()
        })
      },
      fail: res => {
        console.error('request fail', res)
        reject()
      }
    })
  })
}

const play = () => {
  loadAudio('xxx-test.mp3').then(buffer => {
    const source = audioCtx.createBufferSource()
    source.buffer = buffer
    source.connect(audioCtx.destination)
    source.start()
  }).catch(() => {
    console.log('fail')
  })
}

play()