论文部分内容阅读
Ogg/Vorbis是一种完全免费、源码开放并且没有专利限制的感知音频编解码技术,具有很高的编码灵活性。由于它不受专利限制、源码开放以及技术上的优势,Ogg/Vorbis已经在数字音频压缩领域里得到广泛应用。本文以Ogg官方网站公布的源代码为基础,采用C++、C和汇编语言混合编程,在ARM9的硬件平台上设计了基于Qtopia的Ogg嵌入式音频播放器。本文的主要内容包括:(1)回顾了音频编解码技术的发展历史,描述了嵌入式系统的四个发展阶段,介绍了几种常用的嵌入式操作系统。(2)分析了Ogg/Vorbis的音频编解码原理。按照Ogg的编码算法流程,对MDCT变换、窗函数交叠原理、心理声学模型、基底包络构建、频谱残差生成和声道耦合技术进行了阐述。(3)介绍了嵌入式的系统开发流程、开发工具和ARM9的硬件系统平台。(4)描述了Qt的编程原理和Qtopia图形用户界面系统以及其它种类的GUI。(5)提出了Ogg嵌入式音频播放器的设计方案,描述了Ogg核心代码的修改和优化方法,介绍了图形用户界面的实现方法,最终实现了Qtopia桌面系统和Ogg应用程序的移植。测试结果表明:修改后的Ogg核心代码定点化精度高,程序流程清晰,无内存泄漏问题;通过对核心代码进行优化,音频解码效率有了大幅度提高;基于Qtopia的Ogg音频播放器能够流畅播放Ogg音频文件,具备友好的播放界面,支持访问USB设备并且能够通过网络访问其它Ogg音频资源。