纯js实现web端录音功能,功能并非特别多,逐步增长中,详细地址:github。前端
getUserMedia在非localhost和127的状况下,须要开启https,因为腾讯云的没备案,demo就不放了,能够自行获取代码并启动测试。git
实现原理的话,主要是如下三点,github
直接引入dist下的recorder.js便可web
let recorder = new Recorder();
安装:chrome
npm i js-audio-recorder
调用:npm
import Recorder from 'js-audio-recorder'; let recorder = new Recorder();
// 开始录音 recorder.start(); // 暂停录音 recorder.pause(); // 继续录音 recorder.resume() // 结束录音 recorder.stop(); // 录音播放 recorder.play(); // 销毁录音实例,释放资源,fn为回调函数, recorder.destroy(fn); recorder = null;
// 下载pcm文件 recorder.downloadPCM(); // 下载wav文件 recorder.downloadWAV(); // 重命名pcm文件,wav也支持 recorder.downloadPCM('重命名');
// 回调持续输出时长 recorder.onprocess = function(duration) { console.log(duration); } // 手动获取录音时长 console.log(recorder.duration);
sampleBits,采样位数,默认是16
sampleRate,采样频率,浏览器默认的,个人chrome是48000
numChannels,声道数,默认是1浏览器
new Recorder时支持传入参数,函数
{ sampleBits: 16, // 采样位数,范围8或16 sampleRate: 16000, // 采样率,范围1102五、16000、22050、24000、44100、48000 numChannels: 1, // 声道,范围1或2 }
主要是如下几个方面:学习
https://caniuse.com/#search=w...测试
https://caniuse.com/#search=g...
https://caniuse.com/#search=t...
欢迎访问和查看:recorder。
基于阿里云实现简单的语音识别功能
web Audio学习与音频播放
web Audio实现pcm音频数据收集
js实现pcm数据编码
js转化pcm到wav格式与播放