梁 静,谢 佳,徐山峰,王兆伟
(中国电子科学研究院,北京 100041)
随着互联网的迅猛发展,VoIP技术得到越来越广泛的应用。话音编解码技术作为VoIP体系架构的核心之一,也在不断推陈出新。Opus[1]是一款由Xiph.Org、Mozilla、微软、Broadcom、Octasic和Google联合开发的有损音频压缩格式,特别适合互联网上的话音实时交互需求。2010年12月由IETF正式批准成为国际标准,版本号是RFC6716。Opus是由声码器SILK[2]和CELT融合发展而来,Opus编码后码率范围是6 kbps到510 kbp,具备静音检测功能,支持单声道和立体声,最多可支持255路声道的混音,成帧周期范围覆盖2.5 ms到120 ms,采样率范围是8 kHz到48 kHz,可以较好的兼容话音通话和多媒体立体声[3]。
Opus编解码器由两款编解码器融合而成:基于线性预测(LP)的SILK编解码器;基于改进的离散余弦变换(MDCT)[4]的CELT编解码器。Opus工作在以下三种模式:SILK模式;CELT模式;混合模式。其中SILK模式适用于宽带话音信号,CELT模式适用于音乐盒高码率话音信号,混合模式适用于SILK与CELT同时工作的超带宽与全带宽话音信号。图1展示了Opus的宏观架构。

图1 Opus架构图
CELT模式始终工作在48 kHz的采样率,而SILK模式可以在8 kHz,12 kHz或16 kHz采样率下工作。在混合模式下,两种模式可以进行无缝切换,交叉频率为8k Hz,当SILK的采样率为16 kHz时,CELT将会丢弃所有低于8 kHZ的频率[3]。
Opus编解码器融合了CELT和SILK两种编解码器,下面分别对CELT和SILK这两种编解码器的关键技术进行综述。

图2 SILK编码器结构图
SILK编码适合采样率不超过16 kHz采样率的低频信号,因此Opus编码中的所有低于16 kHz采样率的音频内容都由SILK编码。SILK编码器包含一系列组件,总结为4个部分:音频分析、预过滤、编码和输出。……