amr 在线播放

alex374/amr-player 库

arm play

//var player = new AmrPlayer('./amr-player-master/1562307681788.amr');

var player = new AmrPlayer('./amr-player-master/13703524514_20190628184029.amr');

// chrome 禁止自动播放 改用手动播放

//player.play();

amr play

start play

unmuteButton.addEventListener('click', function() {

player.play();

});

融云IM音频库

amr-wb 在线播放

demo.html 代码只是基础的播放功能,多次点击会出现多个音频,也没有暂停功能。

示例代码优化:

// 全局变量

var gBufferSource;

// 播放 PCM

function playPcm(samples) {

var ctx = getAudioContext();

if (gBufferSource !== undefined) {

// 正在播放,先停止

gBufferSource.stop();

}

gBufferSource = ctx.createBufferSource();

var buffer = ctx.createBuffer(1, samples.length, 16000);

if (buffer.copyToChannel) {

buffer.copyToChannel(samples, 0, 0)

} else {

var channelBuffer = buffer.getChannelData(0);

channelBuffer.set(samples);

}

gBufferSource.buffer = buffer;

gBufferSource.connect(ctx.destination);

gBufferSource.start();

}

// 停止播放

function stopAmrBlob()

{

if (gBufferSource !== undefined) {

//停止

gBufferSource.stop();

}

}

格式

amr 有三种文件格式

amr-nb

amr-wb

amr-wb+

arm-nb

AMR

也就是 arm 文件格式。

语音带宽范围:300-3400Hz,8KHz采样,早期版本。

arm-wb

AMR WideBand

语音带宽范围: 50-7000Hz,16KHz采样,占用内存更大,话音更加自然、舒适和易于分辨。

arm-wb+

采样速率是在16~48 kHz之间。这使得它的语音带宽更宽(24 kHz)

如何查看

通过文件内容

文件头格式:

AMR 文件支持单声道和多声道。单声道和多声道的文件头是不同的。

单声道:

AMR-NB文件头: "#!AMRn" (or 0x2321414d520a in hexadecimal)(引号内的部分)

AMR-WB 文件头:"#!AMR-WBn" (or 0x2321414d522d57420a in hexadecimal).(引号内)

多声道:

多声道的文件头包含一个magic number和32bit channle description域。

AMR-NB 的magic number:"#!AMR_MC1.0n"

(or 0x2321414d525F4D43312E300a in hexadecimal).

AMR-WB的magic number:"#!AMR-WB_MC1.0n"

(or 0x2321414d522d57425F4D43312E300a in hexadecimal).

32bit的channel description域的定义如下:

其中 reserved bits必须为0, CHAN:表示当前文件中含有几个声道。

通过 ffprobe 查看

root@51e7052bc967:/var/www/# ffprobe ./1562327664267_1.amr

ffprobe version 4.0.2 Copyright (c) 2007-2018 the FFmpeg developers

built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.9) 20160609

configuration: --enable-shared --enable-libmp3lame --disable-x86asm

libavutil 56. 14.100 / 56. 14.100

libavcodec 58. 18.100 / 58. 18.100

libavformat 58. 12.100 / 58. 12.100

libavdevice 58. 3.100 / 58. 3.100

libavfilter 7. 16.100 / 7. 16.100

libswscale 5. 1.100 / 5. 1.100

libswresample 3. 1.100 / 3. 1.100

[amr @ 0xb19ac0] Estimating duration from bitrate, this may be inaccurate

Input #0, amr, from './1562327664267_1.amr':

Duration: 00:00:05.06, bitrate: 12 kb/s

Stream #0:0: Audio: amr_nb (samr / 0x726D6173), 8000 Hz, mono, flt

root@51e7052bc967:/var/www/# ffprobe ./18772355686_20190701164242.amr

ffprobe version 4.0.2 Copyright (c) 2007-2018 the FFmpeg developers

built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.9) 20160609

configuration: --enable-shared --enable-libmp3lame --disable-x86asm

libavutil 56. 14.100 / 56. 14.100

libavcodec 58. 18.100 / 58. 18.100

libavformat 58. 12.100 / 58. 12.100

libavdevice 58. 3.100 / 58. 3.100

libavfilter 7. 16.100 / 7. 16.100

libswscale 5. 1.100 / 5. 1.100

libswresample 3. 1.100 / 3. 1.100

[amr @ 0x17f9ac0] Estimating duration from bitrate, this may be inaccurate

Input #0, amr, from './18772355686_20190701164242.amr':

Duration: 00:04:44.34, bitrate: 13 kb/s

Stream #0:0: Audio: amr_wb (sawb / 0x62776173), 16000 Hz, mono, flt

html如何播放amr,amr 如何在网页上直接播放相关推荐

  1. 网页上的播放器相关参数说明

    网页上的播放器相关参数说明 (默认0为否,-1或1为是) <object classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95&quo ...

  2. jsp网页嵌入PHP网页,JSP_(jsp/html)网页上嵌入播放器(常用播放器代码整理),这个其实很简单,只要在HTML上 - phpStudy...

    (jsp/html)网页上嵌入播放器(常用播放器代码整理) 这个其实很简单,只要在HTML上添加以上代码就OK了,前提是你的电脑上已经安装了播放器,如RealPlay. 还有更多的的播放器和设置可供选 ...

  3. (jsp/html)网页上嵌入播放器(常用播放器代码整理) http://www.jb51.net/article/37267.htm...

    网页上嵌入播放器,只要在HTML上添加以上代码就OK了,下面整理了一些常用的播放器代码,总有一款适合你,感兴趣的朋友可以参考下哈,希望对你有所帮助 这个其实很简单,只要在HTML上添加以上代码就OK了 ...

  4. 采用EasyNVR网页无插件互联网直播平台对接海康摄像头如何通过SDK将视频在前端网页上进行播放?

    背景分析 安防摄像头在进行互联网直播中所使用的EasyNVR核心在于摄像机的音视频流的获取.转换.转码与高性能分发,同时同步完成对实时直播流的录像存储,在客户端(PC浏览器.Android.iOS.微 ...

  5. (jsp/html)网页上嵌入播放器

    这个其实很简单,只要在HTML上添加以上代码就OK了,前提是你的电脑上已经安装了播放器,如RealPlay. <embed src="C:/mp3/10.19/画心.mp3" ...

  6. 为什么上传的格式是mp4在网页上无法播放是什么原因呢?

    原因: 视频不光区分格式,同一格式还区分编码. 对于扩展名相同的视频文件它们的视频的编码可能是不一样的. mp4格式的视频就有3种编码: mpg4(xdiv),mpg4(xvid),avc(h264) ...

  7. 用猿大师播放器在网页上同时播放20路以上海康威视高分辨率(1920*1080)摄像头RTSP视频流?

    问: 同时播放分辨率为1920*1080的高清分辨率的摄像头视频流,找了很长时间试过无数方法均不能满足,服务器转码方案卡顿非常严重,几乎不能播放.了解到猿大师可以用到本机的硬件解码和加速,播放高清视频 ...

  8. 优酷播放的html代码,在网页里面嵌入播放优酷视频的js代码

    先上代码,然后再讲解一下代码为啥是这样写的: 以上是html部分: js部分代码: function start_play(){ $.getScript('http://player.youku.co ...

  9. 在编辑器插入的视频在网页上直接播放的方法

    直接将浏览器设置为兼容模式即可直接播放 当前模式为极速模式,不可直接播放在线视频 点击该处选择换为兼容模式,即可直接播放 完美解决

最新文章

  1. python语言入门r_小结:jieba分词的Python与R语言基础用法介绍
  2. Java中的数据结构
  3. Oppoa7手机怎么录视频 oppo手机屏幕录制
  4. Lombok的使用方法
  5. 暑期训练日志----2018.8.25
  6. 滚轮y坐标html,web交互之js事件
  7. 7-237 有理数加法 (15 分)
  8. Java抽象类/接口
  9. 奇怪的车次,你信不信
  10. 从科技到“科技亲”,2019 IBM 中国论坛干货分享
  11. SQL基本操作(三):存储过程和触发器
  12. 后台返回整个html转换成页面链接,利用html5的history.replaceState修改当前页面的URL...
  13. 计算机专业基础 -- Spring系列框架相关基础知识
  14. Java分布式二手房项目尚好房第二课 用户角色管理
  15. linux新硬盘装系统,目前是windows,要全新硬盘安装linux,该怎么操作?
  16. ChatGPT:开启智能对话的未来
  17. Java好学吗?现在待遇如何?
  18. Windows cmd关机重启命令
  19. TI推出工业市场最强异构处理器AM57X 双核A15怕不怕
  20. mysql 5.7 xbackup_mysql5.7备份

热门文章

  1. ASP.NET中读取XML文件4种方法
  2. 区块链推文@2019.2.15
  3. 关于iTunes随机播放和我所不知道的自己
  4. 基于pygame的兔子吃月饼小游戏
  5. “知识就是力量”的理解
  6. 直播回顾 | 看“技术流”铲屎官们如何高科技养猫
  7. Android 11.0 NetworkMonitor导致的wifi连接后显示x问题解决方法
  8. 计算机互联网络教学反思,《电脑与网络》教学反思
  9. 易优cms修复后台编辑器下拉滚动条时跳动的BUG
  10. VSCode python 导入包之后显示下划黄线