G.711是一种由国际电信联盟(ITU-T)订定音频编码方式,又称为ITU-T G.711。
G.711使用64Kbps的带宽,可将14bits转换成8bits。目前G.711有两个编码方式:一种是u-law又称mu-law,主要运用于北美和日本;另一种是a-law,主要运用于欧洲和世界其他地区。其中,a-law编码方式是为方便计算机处理而特别设计的。2008年3月国际电信联盟正式发布了最新的宽带语音编译码标准G.711.1。
S8: signed 8 bits,有符号字符 = char, 表示范围 -128~127
U8: unsigned 8 bits,无符号字符 = unsigned char,表示范围 0~255
S16_LE: little endian signed 16 bits,小端有符号字 = short,表示范围 -32768~32767
S16_BE: big endian signed 16 bits,大端有符号字 = short倒序(PPC),表示范围 -32768~32767
U16_LE: little endian unsigned 16 bits,小端无符号字 = unsigned short,表示范围 0~65535
U16_BE: big endian unsigned signed 16 bits,大端无符号字 = unsigned short倒序(PPC),表示范围 0~65535
还有S24_LE,S32_LE等,都可以表示数字的方法,PCM都可以用这些表示。
上面这些值中,所有最小值-128, 0, -32768, -32768, 0, 0对应PCM描叙来说都是一个值,表示最小值,可以量化到浮点-1。所有最大值也是一个值,可以量化到浮点1,其他值可以等比例转换。
PCMU应该是指无符号PCM:可以包括U8,U16_LE,U16_BE,...
PCMA应该是指有符号PCM:可以包括S8,S16_LE,S16_BE,...
G721
G723
G726
G729
G.729标准制定是通过的8kbps的语音编码协议,采用共轭结构的算术码本激励线性预测CS-ACELP算法。
G.729系列主要有以下几种:
G.729 --- 最基本的G.729 标准协议
G.729A --- 对G.729 codec 一些算法进行简单处理,相当于降低了算法的复杂度
G.729B --- 加入了语音端点检测模块,在编码前对语音进行语音和静默音进行检测,然后分别对不同情况进行编码
G.729AB --- 就是G.729A 中加入语音端点检测算法, 目前G.729AB 用得比较多,encoder 后,码流中有三种数据块: 语音(80bits), CNG (16bits), DTX(0 bit).