h5直接播放amr文件
调微信的录音接口,生成的是amr文件,在h5中不能直接播放
github上有个用js写的amr解码器https://github.com/mykmelez/opencore-amr-js
具体自己去看代码,有demo
然后
android可以正常播放amr文件,ios的不支持
微信的amr文件的采样频路是8000,在ios中不支持,ios支持到20000多,具体没测
如果用超过8000的频率播放,语音速度会很快,ios的解决办法是加频率的同时加帧数
看代码
function playPcm(samples) {var ctx = getAudioContext();if (!ctx) {return $.toast('你的设备暂不支持播放语音');}var src = ctx.createBufferSource();var buffer;try{buffer = ctx.createBuffer(1, samples.length, 8000);}catch(e){buffer = ctx.createBuffer(1, samples.length * 3, 24000);var samples3 = new Float32Array(samples.length * 3);var ij = 0;for (var i = 0; i < samples.length; i++) {for (var j = 1; j <= 3; j++) {samples3[ij++] = samples[i];}}samples = samples3;}if (buffer.copyToChannel) {buffer.copyToChannel(samples, 0, 0)} else {var channelBuffer = buffer.getChannelData(0);channelBuffer.set(samples);} src.buffer = buffer;src.connect(ctx.destination);//src.start();if (src.start) {src.start(0);} else if (src.play) {src.play(0);} else if (src.noteOn) {src.noteOn(0);}
}
转载于:https://my.oschina.net/u/2277555/blog/798217
h5直接播放amr文件相关推荐
- 使用微信API实现H5页面播放音频文件
之前在处理H5页面播放音频文件的时候,总是需要搞一个https才能正常播放,一次无意浏览到了一个自动播放音频的页面,发现了使用微信Api可以不使用https也能播放音频文件.作为记录,简单页面实现如下 ...
- h5 audio播放音频文件
h5 audio播放音频文件 注:下面html中样式及不相关的内容去掉了 第一个例子 播放没有防盗链的外网音频文件是可以的 <!doctype html> <html> < ...
- 使用DirectShow播放AMR文件
AMR全称Adaptive Multi-Rate,自适应多速率编码,主要用于移动设备的音频,压缩比比较大,但相对其他的压缩格式质量比较差,由于多用于人声,通话,效果还是很不错的.其具体的文件格式可以参 ...
- 网页上播放微信录音amr文件方案
在最近的H5项目中,遇到了个棘手的问题. 项目中需要使用微信录音的JSSDK接口,录完音后上传到自己的服务器上.流程如图: 整个流程非常清晰,也十分顺利.但下载到网站服务器上的文件时amr格式的音频文 ...
- h5原生audio播放amr格式的音频
h5不能播放amr格式的样式,需要进行转码,在下已知的方法有两种 一.引入 js 文件 <script type="text/javascript" src="./ ...
- java 播放amr_amr格式转mp3和直接播放amr格式的文件-sunziren
原创文章,转载请注明出处! 前言: amr作为一种高压缩比的音频格式,受到很多客户的青睐.本文主要涉及两部分的内容,一是amr如何转为mp3格式,二是如何直接播放amr格式的文件. 1. 如何使用Ja ...
- h5移动端播放amr格式的音频文件兼容安卓IOS
基于amr.js和RecorderJs,最底部有线上demo代码 播放 AMR: var amr = new BenzAMRRecorder(); amr.initWithUrl('path/to/v ...
- H5页面播放M4a音频文件
业务场景: 手机app端录音,然后上传至后台服务器,前端从后台服务器获取录音,在PC端WEB页面播放. 实际问题: 首先app录音文件默认是m4a格式,而在PC端WEB H5页面,<audio& ...
- HTML + js 播放amr音频文件
将amr文件转化成base64字符串,用js转换成音频播放 js文件下载链接: https://pan.baidu.com/s/1kWsLOc3 密码: 2ca5 链接: https://pan.ba ...
- 关于H5播放视频文件的问题
m3u8文件是指UTF-8编码格式的M3U文件.M3U文件是记录了一个索引纯文本文件,打开它时播放软件并不是播放它,而是根据它的索引找到对应的音视频文件的路径进行播放. 简单说,播放器通过m3u8文件 ...
最新文章
- CSE 3100 Systems Programming
- 编译安装LAMP及分离式LAMP平台构建
- Jmeter也能IP欺骗!
- centos7.6下的python3.6.9虚拟环境安装elastalert
- PostgreSQL消息乱码的解决
- linux下桥接模式设置静态IP实现上网
- java抽象类的构造函数如何定义_我们可以在Java的抽象类中定义参数化的构造函数吗?...
- Go语言很好很强大,但我有几个问题想吐槽
- 电路常识性概念(8)-MOS管及简单CMOS逻辑门电路原理图
- 【2018icpc宁夏邀请赛现场赛】【Gym - 102222A】Maximum Element In A Stack(动态的栈中查找最大元素)
- 数据库中间件mycat简单入门
- Elasticsearch--进阶-term_keyword查询---全文检索引擎ElasticSearch工作笔记015
- 支付系统总结 ( 收单,收银,资产交互,账务 )
- linux挖矿检测,详谈挖矿木马的检测和解决方案
- 红米5无线网连接上但是没有网络连接服务器,红米路由器wifi已连接但无法访问互联网怎么办 | 192路由网...
- addEventListener兼容ie低版本
- #1636 : Pangu and Stones(区间dp)
- CRC-16/CRC-32 程序代码
- 通过这张图片找到照片地址
- USB键盘实现——字符串描述符(四)