audio标签支持mp3、wav、ogg、acc、m4a,但是不支持amr格式的音频播放,最近的需求里需要播放amr格式的音频,记录一下怎么实现的
可以下载一个依赖benz-amr-recorder,实例化去播放
<audio
id="upload-audio"
ref="audio"
@play="onPlay"
:src="audioObj.musicurl"
preload="auto"
>
</audio>
<span class="duration">音频时长:{{maxTime}}</span>
// npm下载安装benz-amr-recorder
npm install benz-amr-recorder
// 然后在需要用到的组件中引入,并在组件创建之后进行实例化
import BenzAMRRecorder from 'benz-amr-recorder'
var amr = new BenzAMRRecorder();
// 就可以通过click事件去初始化音频,并进行控制音频的播放音频和暂停
onPlay(url) {
// 初始化完成音频之后操作
amr.initWithUrl(url).then(function() {
this.maxTime = this.amr.getDuration();
// amr.isPlaying() 返回音频的播放状态 是否正在播放 返回boolean类型
console.log(amr.isPlaying())
if(amr.isPlaying()){
amr.stop();
} else {
amr.play();
}
});
},