基于Dolby AC3的虚拟环绕声实现,
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
摘要:Dolby AC3提供的5.1声道音频模式是当前应用得最广泛、声音质量较高、编码效率最高的一种音频编码模式。基于AC3的虚拟环绕声毕业设计能够满足人们在不允许布置多个扬声器的情况对环绕声音质的要求,而且简化了毕业设计,降低了消费;它特别适用于耳机这类只有两个扬声器的设备。本毕业设计论述了用毕业设计实现虚拟环绕声的两种途径,即用Matlab和C语言编程来仿真5.1声道虚拟环绕声重放。用Matlab进行虚拟环绕声的仿真是通过对AC3音频文件解码后得到的六个声道信号进行虚拟环绕声滤波处理。C程序设计将多通道虚拟环绕声处理技术与AC3解码程序相结合,实现基于AC3的5.1声道虚拟环绕声重放毕业设计。Matlab和C语言的实现结果通过标准布置的左、右两个扬声器播放,在正确的听音位置进行试听,能够感觉到声音有明显的空间感和立体感,实现结果良好。
[来源:http://www.think58.com]
关键词:虚拟环绕声;Dolby AC3;HRTF;AC3解码器
[版权所有:http://think58.com]
目 录
第1章 绪 论 1
1.1 课题背景、目的及意义 1
1.1.1 课题背景 1
1.1.2 课题的目的及意义 4
1.2 毕业设计的主要内容和框架 4
第2章 毕业设计总体设计 6
2.1 毕业设计实现原理 6
2.2 MATLAB仿真实现虚拟环绕声的设计 9
2.3 C语言编程实现基于AC3的虚拟环绕声毕业设计 9
2.4 本章小结 10
第3章 主要技术简介 11
3.1 Dolby AC3 11
3.1.1 Dolby AC3的特点、配置和应用 11
3.1.2 Dolby AC3的编码原理 12
3.1.3 Dolby AC3的解码原理 13
3.2 头相关传输函数 13
3.2.1 HRTF的定义 14
3.2.2 HRTF数据的获取 15
3.3 本章小结 17
第4章 Matlab编程实现虚拟环绕声的设计 18
4.1 Matlab的特点 18
4.2 毕业设计设计 18
4.2.1 从AC3文件中分离出5.1独立声道数据 19
4.2.2 程序设计 22
4.3 结论分析 23
4.4 本章小结 24
第5章 C语言编程实现基于AC3的虚拟环绕声毕业设计 25
5.1 VC++6.0毕业设计介绍 25
5.2 程序设计背景 25
5.2.1 解码原理 25
5.2.2 MDCT和IMDCT 28
5.3 程序设计 30
5.3.1 子函数IMDCT 30
5.3.2 子函数Downmix 35
5.4 结论分析 36
5.5 本章小结 37
结 论 38
致 谢 40
参考文献 41
附录1 Matlab实现虚拟环绕声重放的程序 42
附录2 基于AC3的虚拟环绕声实现的C程序 46
⑴ 子函数程序IMDCT 46
⑵ 子函数程序Downmix 53
⑶ 主程序decode 55
[资料来源:http://www.THINK58.com]
1.1.2 课题的目的及意义
AC3的5.1通路毕业设计已被推荐为环绕声的国际标准,并被广泛用在DVD、HDTV、家庭影院等方面。毕业设计采用前方左L、中C、右R,以及左环绕LS、右环绕RS,再加上一路可选择的低频效果通路LFE,从而播放出环绕倾听者的听觉效果。但是毕业设计需要至少六个的单独的全频带扬声器,较为复杂,并且在一些实际的应用中,如电视、多媒体计算机、移动数码音乐设备,以及由于房间条件不够的限制等,并不一定适合布置六个全频带扬声器。因而提出了5.1通路的环绕声的虚拟重放毕业设计,它通过信号处理的方法,利用前方L和R扬声器将毕业设计的其他扬声器虚拟出来,从而达到节约扬声器,简化毕业设计的目的,极具研究价值。
而且环绕声的虚拟重放技术首先是由国外提出来的,发展也较我们先进。我国的这些技术都是从国外引进,或者说引进的不是技术,而是别人的产品。我国这门技术的发展是在研究别人产品的基础上发展起来的,相对落后于国外,产品的开发较为困难。然而数字音响市场是一个极为广阔的市场,如果我们能够拥有自己的知识产权,就能够在这个市场上占有一席之地。所以,通过这次设计,让自己对环绕声的虚拟重放有更多的认识,为以后能够从事这方面的工作打下基础,就达到了我预想的目的。 [版权所有:http://think58.com]
1.2 毕业设计的主要内容和框架
在基于AC3的虚拟环绕声实现中,我的工作是通过收集和阅读资料,对毕业设计实现的原理进行深入的了解,预计其实现方法。先分析毕业设计功能,对公式进行推导,确定相关参数的计算方法和毕业设计实现的数学公式。然后分别在Matlab和VC环境下进行编程设计。首先分析程序设计步骤,画出大致原理框图,然后对框图中的模块确定子程序流程图,设计子程序。VC下的编程是利用已有的AC3的C语言解码程序,对经过子程序IMDCT解码后的独立声道数据进行虚拟环绕声处理,然后混合输出,以实现虚拟环绕声。
本毕业设计的大致框架如下:
第一章,在了解课题设计背景的情况下,认识到进行该课题设计的目的与意义;并且对整篇毕业设计的大致内容做简要介绍。
第二章,在明确了课题目的和意义的前提下,确定大致的设计方案,明确设计思路,对Matlab和C语言实现虚拟环绕声毕业设计的基本原理简要介绍。
第三章,介绍Dolby AC3的特点、应用和编码、解码的基本原理,还对虚拟环绕声的关键技术HRTF做了详细介绍,为后面进行毕业设计设计打好基础。
第四章,在Matlab环境下对虚拟环绕声毕业设计进行设计,把单声道信号重AC3音频中提取出来,作为毕业设计的输入;推导出毕业设计实现的具体步骤原理。 [来源:http://think58.com]
第五章,进行基于AC3的虚拟环绕声毕业设计。本毕业设计的设计是把AC3解码程序和虚拟环绕声技术相结合,实现环绕声的虚拟重放。
第六章,对整个设计是否成功得出结论,对设计过程中遇到的问题进行分析,并分析毕业设计存在的不足和提出改进方法。