资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

html5怎么实现发送语音消息

今天小编给大家分享一下html5怎么实现发送语音消息的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

企业建站必须是能够以充分展现企业形象为主要目的,是企业文化与产品对外扩展宣传的重要窗口,一个合格的网站不仅仅能为公司带来巨大的互联网上的收集和信息发布平台,创新互联公司面向各种领域:服务器租用成都网站设计成都全网营销推广解决方案、网站设计等建站排名服务。


实现思路

1、使用 getUserMedia 需要考虑各个浏览器的差异

2、使用 WebWorker 来处理录音及音频转换。

3、转为 Base64 格式的 WAV,用于浏览器播放(此处需要注意,可以转换 Blob 直接播放,此处为了说明转换音频的接口,所以转为 Baes64)。

具体实现

1、开始录音:RongRecorder.record();

调用此方法开始录音。

2、停止录音:RongRecorder.stop();

调用此方法停止录音。

3、停止并导出:RongRecorder.stopAndExport(type,callback);

调用此方法停止并导出音频为指定的 type 类型

4、导出:RongRecorder.exportRecord(type);

导出指定 type 类型的音频流。

5、清空本地音频流:RongRecorder.clear();

演示

1、兼容 getUserMedia 代码片段

navigator.getUserMedia = navigator.getUserMedia ||navigator.webkitGetUserMedia ||navigator.mozGetUserMedia; 2、WebWorker 代码片段

this.onmessage = function(e){  switch(e.data.command){    case 'init':      init(e.data.config);      break;    case 'record':      record(e.data.buffer);      break;    case 'exportRecord':      exportRecord(e.data.type);      break;    case 'clearRecord':      clearRecord();      break;  }};function init(config){  sampleRate = config.sampleRate;}function clearRecord(){  recBuffersL.length = 0;  recLength = 0;}function record(inputBuffer){  recBuffersL.push(inputBuffer[0]);  //recBuffersR.push(inputBuffer[1]);  recLength += inputBuffer[0].length;}function exportRecord(type){  var bufferL = mergeBuffers(recBuffersL, recLength);  var interleaved = interleave(bufferL);  var dataview = encodeWAV(interleaved);  var audioBlob = new Blob([dataview], { type: type });  this.postMessage(audioBlob);}

以上就是“html5怎么实现发送语音消息”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注创新互联行业资讯频道。


本文题目:html5怎么实现发送语音消息
标题URL:http://cdkjz.cn/article/jjesej.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220