code狂魔
V1
2022/10/07阅读:54主题:萌绿
替换谷歌原生音频播放器的最佳方案
大家好,我是前端实验室
的大师兄!
不知道大家有没有用过浏览器自带的音频播放,从 Chrome 71 开始限制audio自动播放,目前safari、firefox、edge等浏览器都在某版本后限制了audio自动播放功能,必须要用户与当前页面有交互后,才能激活自动播放,否则就会报错。原生的播放器,功能不够强大,而且会有一些局限性就会导致无法实现我们的功能
今天大师兄就给大家介绍一款优秀的音频库howler.js

howler.js
howler.js
是现代网络的音频库。它默认为Web Audio API并回退到HTML5 Audio。这使得在所有平台上使用 JavaScript 处理音频变得容易且可靠。
特点
howler.js
不仅有诸多特点,而且还兼容了许多旧版本
-
满足所有音频需求的单一 API -
默认为 Web 音频 API 并回退到 HTML5 音频 -
跨环境处理边缘情况和错误 -
支持所有编解码器以提供完整的跨浏览器支持 -
自动缓存以提高性能 -
单独、分组或全局控制声音 -
一次播放多个声音 -
简单的声音精灵定义和播放 -
完全控制衰落、速率、搜索、音量等。 -
轻松添加 3D 空间声音或立体声声像 -
模块化 - 使用您想要的并且易于扩展 -
没有外部依赖,只有纯 JavaScript -
轻至 7kb 压缩包

安装
使用npm安装
npm install howler
使用yarn安装
yarn add howler
引入依赖
import {Howl, Howler} from 'howler';
使用
播放 MP3:
var sound = new Howl({
src: ['sound.mp3']
});
sound.play();
流式音频(用于实时音频或大文件):
var sound = new Howl({
src: ['stream.mp3'],
html5: true
});
sound.play();
监听事件:
var sound = new Howl({
src: ['sound.webm', 'sound.mp3']
});
// 第一次调用后清除侦听器
sound.once('load', function(){
sound.play();
});
// 声音播放完毕时触发
sound.on('end', function(){
console.log('Finished!');
});
githu链接:https://github.com/goldfire/howler.js
官网地址: https://howlerjs.com/
最后
关注【前端实验室】公众号回复: bbbb223
即可免费获取拉勾教育价值17999元的全套前端教程

作者介绍
code狂魔
V1