小程序开发记录(六)
音频API
获取实例
InnerAudioContext
该实例通过 wx.createInnerAudioContext() 获得;
获取音频长度
如果想要获取音频长度InnerAudioContext.duration,目前看来只能等音频播放才能获取,网上虽然有onCanplay据说可以获取,但是我实验并不可以;
当前时间点
音频进度条需要通过总音频时长和当前播放时间点InnerAudioContext.currentTime;
加载问题
值得注意的一点是,当遇到网络不好或者网速较慢的情况,音频加载需要较长的时间,此时如果做一些音频渲染例如动效或歌词滚动,需要等待加载完成。利用监听api InnerAudioContext.onPlay()或者InnerAudioContext.onTimeUpdate();
开发中还遇到一个问题,前端截取部分音频循环播放,截取通过跳转到指定音频点,跳转也需要加载时间:(
所以通过监听加载完成api进行其他同步操作,InnerAudioContext.onSeeked