3.2 编码规则
编码中语音帧周期可以分为动态和固定两种形式。动态形式是每帧的周期根据基频来确定,即每帧是一个基频周期。这种方式在解码时语音清晰度自然度最好,但由于帧周期的长度小导致编码率高。固定形式是帧的周期是一定的,根据实际情况可以设定为10~40 ms。周期长度与音质成反比,与压缩率成正比。本算法中帧周期采用固定形式设定为25 ms。根据频谱能量值判断是否有语音,当没有语音时以一个0字节编码。我们采用一个字节表示静音帧,是为了提高算法的抗误码能力。
3.3 结果
用本算法对一段正常语速朗读的语音材料进行编码及解码,解码后语音可懂性好,平均码率1 400 b/s。
4 结 语
理论上只要有准确的基频和共振峰参数,就可以恢复出原语音信号除嗓音音质特征外其他所有特征。本算法所用的参数只有基频和4个共振峰,对于语音信号这些参数是分辨语音信息的特征参数。当编码信息中只含有这些参数,则可以认为就每帧信号来讲没有冗余信息,也就是对于每帧信号编码达到了最大压缩。如果在本算法基础上要进一步提高压缩率,只能针对帧与帧间的关联来设计,如矢量量化算法等。
本编码算法的延时短、复杂度低,可以用于实时的语音信号传输。在比特率、延时、复杂度3个评价指标上其性能良好,解码后语音有轻微的机器音和个别音节含糊。导致语音音质差的因素有两个:一是参数量化时出现误差,根据实验分析误差主要是共振峰量化误差,所以量化编码时根据实际要求在音质和编码率间进行选择;二是语音重建算法,本文重建时只是简单地用门函数表示共振峰幅频特性,如果能在深入研究共振峰幅频特性的基础上改进重建算法,解码后语音音质一定会得到改善。
,基于语音频谱的共振峰声码器实现