[Bluetooth Core V4.2] VOL2, PartB, 9 Audio

来源:互联网 发布:字体临摹软件 编辑:程序博客网 时间:2024/06/03 18:55

9 Audio

在天线接口上,可使用64kb/s log PCM(脉冲编码调制)格式(A-law or μ-law),或64kb/s CVSD(连续可变斜率增量调制)。后一种格式使用扩压自适应增量调制算法。

有线的语音编码被设计成质量高于或等于64kb/s log PCM。

表9.1概述了空中接口支持的语音编码机制。适当的语音编码机制由链接管理器协商后选定。
这里写图片描述


9.1 LOG PCM编解码

由于同步逻辑运输在空中接口支持64kb/s的信息流,一个64kb/s log PCM通信可被使用。A-law或u-law压缩可用。在有线接口使用A-law和空气接口使用u-law以及相反的情况下,A-law到u-law的转换应该被支持。压缩方式应遵循ITU-T建议G.711。


9.2 CVSD编解码

语音空中接口上更加有鲁棒性的是增量调制。这种调制机制的波形是,输出bits指示了预测值是否小于或大于输出波形。为了减小斜率过载的影响,压扩被应用:步长适应于平均信号斜率。CVSD编码器的输入应该是64k采样/s的线性PCM(典型值16bits,但实际值可专门设置)。CVSD编码器和解码器的框图见图9.1和9.3。系统的时钟为64kHz。
这里写图片描述

使x0sgn(x)=1,否则sgn(x)=1。在空中这些数字应被符号bit代表;例如,负数映射为“1”正数映射为“0”。

CVSD编码器输出bit表示为b(k),编码器输入为x(k),积分器内容是y(k),步长是δ(k)。此外,h是积分器的衰减因子,β是步长的衰减因子,α是压扩参数。最后一个参数以考虑最近的k个输出bits来检测斜率。
使

x^=hy(k)(EQ 14)

然后,CVSD编码器内部状态应根据如下等式更新:
b(k)=sgn{x(k)x^(k1)},(EQ 15)

α={n/2,0,if J bits in the last K output bits are equal,otherwise,(EQ16)

δ(k)={min{δ(k1)+δmin,δmax},max{βδ(k1),δmin},α=1α=0(EQ 17)

y(k)={min{y^(k),ymax},max{y^(k),ymin},y^(k)0.y^(k)<0.(EQ 18)

y(k)=x(k1)+b(k)δ(k).(EQ 19)

在这些等式里,δminδmax是最小和最大步长,yminymax分别是积分器的正、负饱和值。在空中,CVSD编码器产生的bits的发送应使用同样的规则。

对64kb/s CVSD来说,参数如表9.2。这些数字基于积分器输出的16位符号数的。这些值导致了积分器有固定的0.5ms的时间衰减,和步长的固定的16ms的时间衰减。
这里写图片描述


9.3 错误处理

在DV,HV3,EV3,EV5,2-EV3,3-EV3,2-EV5和3-EV5包内,语音不被FEC保护。在易错环境内的语音的质量取决于语音编码机制的鲁棒性,还有eSCO的重传机制。特别的,当有白背景噪声时,CVSD对随机bit错误的反应很迟钝。然而,当包被拒绝的原因是通道访问码,HEC测试失败,或CRC失败时,必须采取措施以填补缺失的声音部分。

在HV2和EV4包被的语音净荷由2/3速率的FEC保护。错误能被检测到,但不能被改正,接收器应尝试最小化对声音的影响。例如,从未纠正错误的15-bit FEC段开始,可以使用找到的在FEC解码器之前的10-bit信息。HV1包由3bit重复FEC保护。对这个编码而言,解码机制将总是假设0或1bit错误。因此,HV1包里不存在可检测的但不可纠正的错误。


9.4 通用音频需求

9.4.1 信号水平

对A-law和u-law log PCM编码信号来说,信号水平的需求应按照ITU-T建议的G.711。

CVSD编码器的16bit线性PCM接口的完整抖动被定义为3dBm0。


9.4.2 CVSD音频质量

对蓝牙音频质量需求而言,其取决于发送端。64k采样/s线性PCM输入信号应有可忽略的4KHz以上频谱能量密度。由64k采样/s的线性PCM输出的被解码信号在4-32kHz频段内的能量频谱密度应比0-4kHz范围内的最大值要低20dB。


0 0
原创粉丝点击