新型语音压缩编解码器AMBE2000
格式字7:该位在输入数据包中不用,因此,在设计时,应将其设置为0x0000;而在输出数据包中表示误码率;
格式字8、9:不用,通常设置为0x0000;
格式字10:高8位用于控制和表示DTMF信号的幅度,范围从3~-60dBm0(例如:0x03=3,0x00=0,0xC4=-60);低8位用于控制和检测DTMF信号,所发出和检测的信号为标准的北美呼叫音。DTMF代码见表7所列。
表7 DTMF代码
DTMF代码 | DTMF数字 | DTMF代码 | DTMF数字 |
0x80 | 1 | 0x84 | 2 |
0x88 | 3 | 0x81 | 4 |
0x85 | 5 | 0x89 | 6 |
0x82 | 7 | 0x86 | 8 |
0x8A | 9 | 0x87 | 0 |
0x83 | * | 0x8B | # |
0x8C | A | 0x8D | B |
0x8E | C | 0x8F | D |
0xFF | DTMF无效 |
表8 格式字11格式
类型 | 7:MSB | 6 | 5 | 4 | 3 | 2 | 1 | 0:LSB |
输入 | NC | NC | 语音激活(1) | NC | 休眠(1) | 回声消除(1) | 编码/解码选择 | |
输出 | NC | NC | NC | NC | 休眠(1) | 回声消除(1) | 编码/解码选择 |
格式字11:高8位用于解码器音量控制,其中0x80表示原音量,0xFF为原音量的两倍,小于0x80为减小音量;低8位的功能如表8所列。其中编码/解码选择如下:00为编码+解码;01为编码;10为解码;11为不用;
格式字12~23:压缩数据信息。根据数据率的不同,其数据位数也不相同。数据位数和压缩数据率的关系如下:
位数=压缩数据率(bps)/50(bps)
例如,在最低压缩率为2kbps时,数据位数为:
2000/50=40位。
3.2 无格式
在无格式情况下,只需要发送数据位,但每秒会减少50bit的数据(与有格式情况相比),因而会降低语音质量。其每个字中包含的数据位数参见表2。每帧的字数和压缩数据率的关系如下:
字数=[压缩数据率(bps)/50(bps)]/位数
式中,所选的位数必须能被选择的压缩数据率整除。AMBE2000串口时钟速率最高为2.048MHz。
图1 用AMBE2000和AD73311构成的语音采样、压缩、解压缩的实用电路
4 应用电路
图1所示是用AMBE2000和AD73311构成的语音采样、压缩、解压缩实用电路,其中AD73311是A-DI公司的一种声码器芯片,它的采样速率可以达到32kHz、16位采样数据,且具有较好的声音质量,因而可配合AMBE2000使用,在实际应用中取得了良好的效果。图中,AMBE2000选择的管脚接法将压缩率定义为2kbps同时电路设置在外部输入时钟模式,且回声消除、语音激活、滑动补偿功能有效,其EPR脚用来输出数据包就绪指示信号。在电路上电正常工作以后,还可以通过软件对AMBE2000进行重新设置,因此,AMBE2000语音压缩编解码器应用起来十分灵活。
5 结束语
语音通信在数字通信中占有十分重要的地位,通过本文所介绍的AMBE2000和AD73311所构成的数据压缩方法,不但可以节约存储资源,而且能够减小对通信带宽的需求。因此,在某些特殊的应用领域,AMBE2000语音压缩编解码芯片有着十分广阔的应用前景。