Skip to content

Commit

Permalink
调整代码
Browse files Browse the repository at this point in the history
  • Loading branch information
xiangyuecn committed Jan 6, 2019
1 parent c493b25 commit 259f2d5
Showing 1 changed file with 22 additions and 18 deletions.
40 changes: 22 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,25 @@ wav格式编码器时参考网上资料写的,会发现代码和别人家的
这个编码器时通过查阅MDN编写的一个玩意,没多大使用价值:录几秒就至少要几秒来编码。。。原因是:未找到对已有pcm数据进行快速编码的方法。数据导入到MediaRecorder,音频有几秒就要等几秒,类似边播放边收听形。(想接原始录音Stream?我不可能给的!)输出音频虽然可以通过比特率来控制文件大小,但音频文件中的比特率并非设定比特率,采样率由于是我们自己采样的,到这个编码器随他怎么搞。只有比较新的浏览器支持(需实现浏览器MediaRecorder),压缩率和mp3差不多。源码2kb大小。



# :open_book:其他音频格式支持办法
``` javascript
//比如增加aac格式支持 (可参考/src/engine/mp3.js实现)

//新增一个aac.js,编写以下格式代码即可实现这个类型
Recorder.prototype.aac=function(pcmData,successCall,failCall){
//通过aac编码器把pcm数据转成aac格式数据,通过this.set拿到传入的配置数据
... pcmData->aacData

//返回数据
successCall(new Blob(aacData,{type:"audio/aac"}));
}

//调用
Recorder({type:"aac"})
```


# :open_book:扩展
`src/extensions`目录内为扩展支持库,这些扩展库默认都没有合并到生成代码中,需单独引用(`dist``src`中的)才能使用。

Expand All @@ -153,13 +172,15 @@ wav格式编码器时参考网上资料写的,会发现代码和别人家的

此扩展是在录音时`onProcess`回调中使用;`bufferSize`会影响绘制帧率,越低越流畅(但会越消耗cpu),默认配置的大概23帧/s。基础使用方法:
``` javascript
var wave=Recorder.WaveView({elem:".elem"}); //创建wave对象
var wave;
var rec=Recorder({
onProcess:function(buffers,powerLevel,bufferDuration,bufferSampleRate){
wave.input(buffers[buffers.length-1],powerLevel,bufferSampleRate);//输入音频数据,更新显示波形
}
});
rec.open(function(){
wave=Recorder.WaveView({elem:".elem"}); //创建wave对象,写这里面浏览器妥妥的

rec.start();
});
```
Expand Down Expand Up @@ -197,20 +218,3 @@ set={

最后:如果是在微信上用的多,应优先直接接入他家的JsSDK(没有公众号开个订阅号又不要钱),基本上可以忽略兼容性问题,就是麻烦点。


# :open_book:其他音频格式支持办法
``` javascript
//比如增加aac格式支持 (可参考/src/engine/mp3.js实现)

//新增一个aac.js,编写以下格式代码即可实现这个类型
Recorder.prototype.aac=function(pcmData,successCall,failCall){
//通过aac编码器把pcm数据转成aac格式数据,通过this.set拿到传入的配置数据
... pcmData->aacData

//返回数据
successCall(new Blob(aacData,{type:"audio/aac"}));
}

//调用
Recorder({type:"aac"})
```

0 comments on commit 259f2d5

Please sign in to comment.