论文部分内容阅读
MPEG-2 AAC 是目前最先进的数字音频压缩算法之一,在数字音频的存储和传输中有广泛的应用。与以往的 MPEG-1 伴音编码相比,该算法具有压缩质量更高,配置更为灵活等特点,但同时存在计算复杂度较高,实时性较差的特点,因此基于MPEG-2 AAC 的实时压缩技术的研究已经成为一个热点问题。 文章首先介绍了音频编码技术的发展情况和音频编解码技术的基本原理,对MPEG-2 AAC 标准的框架和各个模块的算法进行了研究和分析。在对 MPEG-2 AAC算法模型进行分析之后,对心理声学模型,滤波器组和量化编码模块等计算量较大的模块进行优化,同时也省略了部分运算量大但对编码效果增益不明显的几个模块,如时域预测和 TNS 等,并使用了一些快速计算技术对算法模型进行实时化改造。由于MPEG-2 AAC 编码的复杂度要远远大于解码,为了便于系统验证,本文对复杂度较低的解码部分,在 WINDOWS 平台下,用 VC++ 6.0 对 MPEG-2 AAC 的解码器进行软件实现;而对复杂度较高的编码部分,为了满足系统的实时性和性价比要求,本文采用数字信号处理器 TMS320C54x DSP 芯片作为编码主控芯片,成功在 DSP 上实现了,经过本文改造 MPEG-2 AAC(LC Profile)后的编码。 基于改造后的算法,基本上实现了 MPEG-2 AAC 的立体声软件编解码。经过反复调试和修改,试验结果表明,不仅运算速度大大提升,而且很好的保证了压缩后的音频质量,该算法是一种适合提高数字音频压缩算法实时性的有效算法。 论文对 MPEG-2 AAC 编解码系统实现过程中采用的一些重要的技术进行了阐述,包括 AAC 算法的定点化、查表法的应用以及所采用的 C 程序和汇编程序内嵌调用、使用 DMA 等程序优化技术。正是由于 MPEG-2 AAC 编码是一种复杂的运算,它需要使用大量的数据和程序存储空间。如何尽量压缩它的数据和程序占用的存储空间,以使编码能在 DSP 上实现,成为一个必须考虑的问题。一个良好的程序结构对节省数据存储空间和加快算法运算速度也有着极其重要的作用。因此,为了提高编解码的实时性,必须采用查表法、混合法和使用 DMA 等方法,以提高对指数和对数等非线性计算过程的计算速度。