AMR音频编码器概述及文件格式分析
|
Frame Type
|
Mode Indication
|
Mode Request
|
Frame content (AMR mode, comfort noise, or other)
|
|
0
|
0
|
0
|
AMR 4,75 kbit/s
|
|
1
|
1
|
1
|
AMR 5,15 kbit/s
|
|
2
|
2
|
2
|
AMR 5,90 kbit/s
|
|
3
|
3
|
3
|
AMR 6,70 kbit/s (PDC-EFR)
|
|
4
|
4
|
4
|
AMR 7,40 kbit/s (TDMA-EFR)
|
|
5
|
5
|
5
|
AMR 7,95 kbit/s
|
|
6
|
6
|
6
|
AMR 10,2 kbit/s
|
|
7
|
7
|
7
|
AMR 12,2 kbit/s (GSM-EFR)
|
|
8
|
-
|
-
|
AMR SID
|
|
9
|
-
|
-
|
GSM-EFR SID
|
|
10
|
-
|
-
|
TDMA-EFR SID
|
|
11
|
-
|
-
|
PDC-EFR SID
|
|
12-14
|
-
|
-
|
For future use
|
|
15
|
-
|
-
|
No Data (No transmission/No reception)
|
|
Frame Type Index
|
Mode Indication
|
Mode Request
|
Frame content (AMR-WB mode, comfort noise, or other)
|
|
0
|
0
|
0
|
AMR-WB 6.60 kbit/s
|
|
1
|
1
|
1
|
AMR-WB 8.85 kbit/s
|
|
2
|
2
|
2
|
AMR-WB 12.65 kbit/s
|
|
3
|
3
|
3
|
AMR-WB 14.25 kbit/s
|
|
4
|
4
|
4
|
AMR-WB 15.85 kbit/s
|
|
5
|
5
|
5
|
AMR-WB 18.25 kbit/s
|
|
6
|
6
|
6
|
AMR-WB 19.85 kbit/s
|
|
7
|
7
|
7
|
AMR-WB 23.05 kbit/s
|
|
8
|
8
|
8
|
AMR-WB 23.85 kbit/s
|
|
9
|
-
|
-
|
AMR-WB SID (Comfort Noise Frame)
|
|
10-13
|
-
|
-
|
For future use
|
|
14
|
-
|
-
|
speech lost
|
|
15
|
-
|
-
|
No Data (No transmission/No reception)
|
|
|
-
|
-
|
|

|
Frame Type Index
|
Frame content
|
Number of bits in Frame Type
|
Number of Bits in AMR Core Frame
|
Number of Bits in |
Number of octets (N)
|
|
0
|
AMR 4,75
|
4
|
95
|
5
|
13
|
|
1
|
AMR 5,15
|
4
|
103
|
5
|
14
|
|
2
|
AMR 5,90
|
4
|
118
|
6
|
16
|
|
3
|
AMR 6,70
|
4
|
134
|
6
|
18
|
|
4
|
AMR 7,40
|
4
|
148
|
0
|
19
|
|
5
|
AMR 7,95
|
4
|
159
|
5
|
21
|
|
6
|
AMR 10,2
|
4
|
204
|
0
|
26
|
|
7
|
AMR 12,2
|
4
|
244
|
0
|
31
|
|
8
|
AMR SID
|
4
|
39
|
5
|
6
|
|
9
|
GSM-EFR SID
|
4
|
43
|
1
|
6
|
|
10
|
TDMA-EFR SID
|
4
|
38
|
6
|
6
|
|
11
|
PDC-EFR SID
|
4
|
37
|
7
|
6
|
|
12-14
|
For future use
|
-
|
-
|
-
|
-
|
|
15
|
No Data
|
4
|
0
|
4
|
1
|
|
Frame Type
|
AMR |
Total number of bits
|
Class A
|
Class B
|
Class C
|
|
0
|
4,75
|
95
|
42
|
53
|
0
|
|
1
|
5,15
|
103
|
49
|
54
|
0
|
|
2
|
5,90
|
118
|
55
|
63
|
0
|
|
3
|
6,70
|
134
|
58
|
76
|
0
|
|
4
|
7,40
|
148
|
61
|
87
|
0
|
|
5
|
7,95
|
159
|
75
|
84
|
0
|
|
6
|
10,2
|
204
|
65
|
99
|
40
|
|
7
|
12,2
|
244
|
81
|
103
|
60
|
|
Frame Type Index
|
Frame content
|
Number of bits in Frame Type
|
Number of bits in Frame Quality Indicator
|
Number of Bits in AMR-WB Core Frame
|
Number of Bits in Bit Stuffing
|
Number of octets (N)
|
|
0
|
AMR-WB 6.60 kbit/s
|
4
|
1
|
132
|
7
|
18
|
|
1
|
AMR-WB 8.85 kbit/s
|
4
|
1
|
177
|
2
|
23
|
|
2
|
AMR-WB 12.65 kbit/s
|
4
|
1
|
253
|
6
|
33
|
|
3
|
AMR-WB 14.25 kbit/s
|
4
|
1
|
285
|
6
|
37
|
|
4
|
AMR-WB 15.85 kbit/s
|
4
|
1
|
317
|
6
|
41
|
|
5
|
AMR-WB 18.25 kbit/s
|
4
|
1
|
365
|
6
|
47
|
|
6
|
AMR-WB 19.85 kbit/s
|
4
|
1
|
397
|
6
|
51
|
|
7
|
AMR-WB 23.05 kbit/s
|
4
|
1
|
461
|
6
|
59
|
|
8
|
AMR-WB 23.85 kbit/s
|
4
|
1
|
477
|
6
|
61
|
|
9
|
AMR-WB SID (Comfort Noise Frame)
|
4
|
1
|
40
|
3
|
6
|
|
10-13
|
For future use
|
-
|
-
|
-
|
-
|
-
|
|
14
|
speech lost
|
4
|
1
|
0
|
3
|
1
|
|
15
|
No Data (No transmission/No reception)
|
4
|
1
|
0
|
3
|
1
|
|
Frame Type
|
AMR-WB |
Total number of bits
|
Class A
|
Class B
|
Class C
|
|
0
|
6.60
|
132
|
54
|
78
|
0
|
|
1
|
8.85
|
177
|
64
|
113
|
0
|
|
2
|
12.65
|
253
|
72
|
181
|
0
|
|
3
|
14.25
|
285
|
72
|
213
|
0
|
|
4
|
15.85
|
317
|
72
|
245
|
0
|
|
5
|
18.25
|
365
|
72
|
293
|
0
|
|
6
|
19.85
|
397
|
72
|
325
|
0
|
|
7
|
23.05
|
461
|
72
|
389
|
0
|
|
8
|
23.85
|
477
|
72
|
405
|
0
|
Amr 一帧为20毫秒
以AMR 4.75Kbits/s为例
:
每秒产生的声音位数
= 4750bits/s
每20ms帧占用的位数
= 4750bits/s / 50frames/s = 95bits
每20ms帧占用的字节数 = 95bits / 8bits/byte = 11.875bytes - 圆整到12字节,不足的补
0
加上一个字节的帧头,所以,20ms一帧的
AMR: 12-bytes + 1-byte = 13-bytes
相反,转换回来就成了
13-bytes * 50frames/s * 8bits/byte = 5200bits/s
注意,这里两个数值并不对应,是由于圆整的原因
<!--[endif]-->文件头格式:
FT为编码模式, 即上面提到的16中编码模式。
Q为帧质量指示器,如果为0表明帧被损坏。
AMR音频编码器概述及文件格式分析的更多相关文章
- AMR音频文件格式分析
AMR音频文件格式分析 1 概要 如今非常多智能手机都支持多媒体功能,特别是音频和视频播放功能,而AMR文件格式是手机端普遍支持的音频文件格式.AMR,全称是:Adaptive Multi-Rate, ...
- JPEG概述和头分析(C源码)
原创文章,转载请注明:JPEG概述和头分析(C源码) By Lucio.Yang 部分内容来自:w285868925,JPEG压缩标准 1.JPEG概述 JPEG是一个压缩标准,又可分为标准 JPE ...
- linux第三次实践:ELF文件格式分析
linux第三次实践:ELF文件格式分析 标签(空格分隔): 20135328陈都 一.概述 1.ELF全称Executable and Linkable Format,可执行连接格式,ELF格式的文 ...
- Linux及安全实践四——ELF文件格式分析
Linux及安全实践四——ELF文件格式分析 一.ELF文件格式概述 1. ELF:是一种对象文件的格式,用于定义不同类型的对象文件中都放了什么东西.以及都以什么样的格式去放这些东西. 二.分析一个E ...
- MP4文件格式分析及分割实现(附源码)
MP4文件格式分析 MP4(MPEG-4 Part 14)是一种常见的多媒体容器格式,它是在“ISO/IEC 14496-14”标准文件中定义的,属于MPEG-4的 ...
- 多媒体(2):WAVE文件格式分析
目录 多媒体(1):MCI接口编程 多媒体(2):WAVE文件格式分析 多媒体(3):基于WindowsAPI的视频捕捉卡操作 多媒体(4):JPEG图像压缩编码 多媒体(2):WAVE文件格式分析
- 实践2.4 ELF文件格式分析
实践2.4 ELF文件格式分析 1.ELF文件头 查看/usr/include/elf.h文件: #define EI_NIDENT (16) typedef struct { unsigned ch ...
- wav文件格式分析详解
wav文件格式分析详解 文章转载自:http://blog.csdn.net/BlueSoal/article/details/932395 一.综述 WAVE文件作为多媒体中使用的声波文件格式 ...
- 最简单的基于FFMPEG的音频编码器(PCM编码为AAC)
http://blog.csdn.net/leixiaohua1020/article/details/25430449 本文介绍一个最简单的基于FFMPEG的音频编码器.该编码器实现了PCM音频采样 ...
随机推荐
- Inter IPP 跟 Microsoft V100编译器区别
最近做项目用了两个编译器,由于是一种精度的算法计算,对计算的精度要求非常高,同时都用的float型,发现inter的结果比vs的结果好许多.但是不知道是什么原因,最后测试发现,是两个编译器的问题. ...
- Ext.net.DirectMethods
http://www.ext.net.cn/forum.php?mod=viewthread&tid=1282&highlight=directmethod DirectMethod ...
- cocos2d-x游戏开发系列教程-中国象棋01-工程文件概述
上一篇博文我们看到了象棋的效果图,这一张我们来看象棋代码的整体概述 让我们先对整个代码框架有个了解. 主目录: 主目录包含内容如上图: classes目录:业务代码 proj.win32:包括main ...
- Linux下基于Erlang的高并发TCP连接压力实验
1.实验环境: 联想小型机: 操作系统:RedHat Enterprise LinuxServer release6.4(Santiago) 内核版本号:Linux server1 2.6.32-35 ...
- android中关于ListView的卡位说明
需求:做项目的时候,需要将ListView的header的一个Tab卡位,即listView滑动后,Header的某一个部分可以定在ListView的顶端卡住. 解决的方案:监听ListView的滑动 ...
- PHP - 字符串操作
第8章 字符串处理 学习要点: 1.字符串格式化 2.操作子字符串 3.字符串比较 4.查找替换字符串 5.处理中文字符 在每天的编程工作中,处理.调整以至最后控制字符串是很重要的一部分,一般也认为这 ...
- C# - 委托_求定积分通用方法
代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syst ...
- MVC与WebForm的简单的比较
MVC与WebForm的简单的比较 ASP 强制程序员将业务逻辑和展示页放到一个文件中 WebForm 允许程序员将业务逻辑与页面展示分开到不同的文件中,并且提供强大的开发平台来写 业务逻辑代码 ...
- ORA-01403: no data found
在项目的存储过程中有这样一句话 select jgdm,jgmc into parm_mrjgdm,parm_mrjgmc From BL_KHXX where jgdm=PARM_JGDM; 每次 ...
- ADO.NET 操作数据库 --- 01 简单封装
由于我是Java转的C#开始的时候就用的NHihernate,和EF 对ADO.NET使用较少,现在封装一个ADO.NET的工具类来实现数据库的操作,比较简单,望大家多多提意见. 如果大家有什么学习中 ...