欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    基于AC3的虚拟环绕声实现.docx

    • 资源ID:1667618       资源大小:470.70KB        全文页数:62页
    • 资源格式: DOCX        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于AC3的虚拟环绕声实现.docx

    Q260046902 专业做论文西南科技大学毕业设计(论文)题目名称:基于AC3的虚拟环绕声实现年 级:2003级 本科 专科学生学号:20035303学生姓名:黄小宝 指导教师:詹曦学生单位:信息工程学院 技术职称:助教学生专业:通信工程 教师单位:信息工程学院西 南 科 技 大 学 教 务 处 制西南科技大学本科生毕业论文 IV基于AC3的虚拟环绕声实现摘要:Dolby AC3提供的5.1声道音频模式是当前应用得最广泛、声音质量较高、编码效率最高的一种音频编码模式。基于AC3的虚拟环绕声系统能够满足人们在不允许布置多个扬声器的情况对环绕声音质的要求,而且简化了系统,降低了消费;它特别适用于耳机这类只有两个扬声器的设备。本文论述了用软件实现虚拟环绕声的两种途径,即用Matlab和C语言编程来仿真5.1声道虚拟环绕声重放。用Matlab进行虚拟环绕声的仿真是通过对AC3音频文件解码后得到的六个声道信号进行虚拟环绕声滤波处理。C程序设计将多通道虚拟环绕声处理技术与AC3解码程序相结合,实现基于AC3的5.1声道虚拟环绕声重放系统。Matlab和C语言的实现结果通过标准布置的左、右两个扬声器播放,在正确的听音位置进行试听,能够感觉到声音有明显的空间感和立体感,实现结果良好。关键词:虚拟环绕声;Dolby AC3;HRTF;AC3解码器Virtual Reproduction of Surround Sound Based on AC3Abstract : The model of 5.1 channel audio supplied by Dolby AC3 is widely used. The quality of 5.1 channel audio is good, and the coding efficiency of the coding model is the highest at present. The System of the Virtual Reproduction of Surround Sound based on AC3 will be able to meet peoples requirement of the higher quality of surround sound, while it is not allowed to place more speakers due to the limited conditions, and it could simplify the system and reduce the consumption. It is especially fit to the equipments that have only two speakers, such as headphones. This paper discussed the two methods of making virtual surround sound come true, i.e., use Matlab and C language to simulate the virtual reproduction of AC3 5.1 channel surround sound. Because of processing the six channels signal of AC3 by using the virtual surround sound filtering technology, the simulation of the virtual reproduction of surround sound under Matlab comes true. While programming by C language, The System of the Virtual Reproduction of Surround Sound based on AC3 comes true by combining the virtual surround sound filtering technology and AC3 decoder. While the results of Matlab program and C language program be played by two speakers that placed at the standard position, you could feel the feeling of spaciousness and third dimension obviously. So, the result of the implementation is well.Keywords: Virtual Surround Sound,Dolby AC3,HRTF,AC3 decoder目 录第1章 绪 论11.1 课题背景、目的及意义11.1.1 课题背景11.1.2 课题的目的及意义41.2 论文的主要内容和框架4第2章 系统总体设计62.1 系统实现原理62.2 MATLAB仿真实现虚拟环绕声的设计92.3 C语言编程实现基于AC3的虚拟环绕声系统92.4 本章小结10第3章 主要技术简介113.1 DOLBY AC3113.1.1 Dolby AC3的特点、配置和应用113.1.2 Dolby AC3的编码原理123.1.3 Dolby AC3的解码原理133.2 头相关传输函数133.2.1 HRTF的定义143.2.2 HRTF数据的获取153.3 本章小结17第4章 MATLAB编程实现虚拟环绕声的设计184.1 MATLAB的特点184.2 系统设计184.2.1 从AC3文件中分离出5.1独立声道数据194.2.2 程序设计224.3 结论分析234.4 本章小结24第5章 C语言编程实现基于AC3的虚拟环绕声系统255.1 VC+6.0软件介绍255.2 程序设计背景255.2.1 解码原理255.2.2 MDCT和IMDCT285.3 程序设计305.3.1 子函数IMDCT305.3.2 子函数Downmix355.4 结论分析365.5 本章小结37结 论38致 谢40参考文献41附录1 MATLAB实现虚拟环绕声重放的程序42附录2 基于AC3的虚拟环绕声实现的C程序46 子函数程序IMDCT46 子函数程序Downmix53 主程序decode55西南科技大学本科生毕业论文第1章 绪 论1.1 课题背景、目的及意义1.1.1 课题背景1. AC3的发展背景自1976年杜比环绕声(Dolby stereo optical,4ch)首次应用于电影后,已成为最受欢迎的多声道立体声系统之一,用于家庭的杜比环绕声(Dolby Surround,3ch,1982)和杜比定向逻辑环绕声(Dolby Surround Pro Logic,4ch,1987),更能让你在家中享受电影院的环绕声效果。1992年杜比公司又开发了最新一代的杜比数码环绕声系统(Dolby Digital)并应用于电影,该系统基于先进的感觉编码(perceptual coding)和数字压缩编码技术,即杜比AC3。其优良的特点使之在1995年被选作DVD播放机的标准多声道音频格式(在NTSC制电视的国家)及多项其它系统的标准音频格式。杜比数码环绕声系统有六个完全独立的声道,全频带的左L、右R、中置C、左环绕LR、右环绕RS,再加上一个20120Hz的超重低音的声道LFE(以0.1声道计),故又称作5.1声道。在杜比AC3规格中超重低音的音量比其它全频带声道大10dB,可得到震撼力非凡的低频效果。杜比AC3原理上是它将每一声道的音频根据人耳听觉特性划分为许多最优的狭窄频段,利用音响心理学“听觉掩蔽效应”,删除人耳所听不到或可忽略的部分,并采用数字信号压缩编码。同时,利用狭窄频段的划分使部分频段噪声在编码时可被几乎全部滤除,使其余噪声的频谱靠近在信号频谱附近,而这些噪声可被信号所抑制。因此杜比AC3系统实际上是一种具选择性及强抑噪的系统。它可以将5.1通路的环绕声信息压缩到384kb/s(或320kb/s)。不难理解杜比AC3的特点:以较低的码率支持全音频多声道,并具优良的回放音质和效果12。2. 虚拟环绕声的发展34环绕声是近年出现的一大类新的系统。它们的基础是听觉传输技术,通过头相关传输函数(HRTF,也就是声源到双耳的传输函数)来实现声场空间信息的传输、重发或模拟。而称为虚拟环绕声的系统有以下的三类。(1) 听觉传输立体声系统这是真正的虚拟环绕声系统。它根据听觉传输技术的原理,利用假头进行检拾,或利用信号处理的方法模拟出声源到双耳的传输。所得到的两路信号经放大、记录和传输等过程后,再经耳机进行重发,也可以经过串声抵消网络后由扬声器进行重发。这种方法相当于用电声学的方法把倾听者的听觉器官转移到原声场中去,从而得到原声场的空间信息。它的突出优点是声像逼真、自然,且只需要两个独立的传输信号就有可能重发三维空间的声像,这些优点是多通路系统所没有的。但是,与多通路系统不同,这种系统实现的并不是空间一定的区域的声场的传输与重发,而是通过传输和重发双耳(空间上两点)声信号来实现声场空间信息的传输与重发的。系统的这种特点使它存在着内在的缺陷: 由于真实听觉中,倾听者头部不自觉的微小转动以及耳壳对声波的散射作用所引起的梳状滤波效应对区分前后镜像位置和中垂面的声源有重大的作用,但是耳壳效应仅在高频(f56kHz)才起作用。而在听觉传输系统中,通常也只考虑了耳壳的作用,并没有考虑原声场中倾听者头部的转动。因而在重发时,特别是中低频的情况,经常会出现前后镜像位置的声像倒置的情况。因此系统所传输的双耳信号并没有完全地包含原声场的空间信息。为了克服这缺陷,国外也提出了一种采用四耳的假头作为检拾体系,或采用传感器对重发时倾听者头部的位置进行跟踪的方法,但这相当于增加了系统的独立传输信号,且并不是所有场合都适用。 由于HRTF是与声源到双耳的相对位置有关(特别是高频),而在扬声器重发中,交叉串声抵消网络的传输特性是取决于扬声器到双耳的HRTF。因而严格来说对一定的抵消网络,只能在一个特定的听音位置上有效。倾听者偏离理想的听音位置将会导致严重的声像失真(这在高频的情况尤为严重)。所以系统的听音区域较窄。针对这缺点,国外也提出了用多个扬声器或前方两个相距很近的扬声器(称为立体声偶极子)重发听觉传输信号的方法,但这只能起到部分改善的作用。值得指出的是,上述的缺陷有一定的共通性,在所有涉及到听觉传输原理(HRTF)的系统中都存在。而由于存在上述缺陷,目前听觉传输系统较少独立地用在要求有较大的听音区域的声重发,如家庭影院等。它主要用在计算机虚拟现实,厅堂音质听觉化等科学研究中。(2) 3D “准”虚拟环绕声系统这类系统的代表是SRS,Spatialize,Qxpander等。它们利用听觉传输技术的原理,在普通的双通路立体声重发中,通过模拟空间不同方向到双耳的HRTF,从而模拟反射声,增加主观听觉上的空间感与包围感,达到模拟3D环绕声的目的。这类系统是后处理系统,也就是“准”虚拟环绕声系统,所起到的仅是模拟环绕声信息的作用。双通路立体声信号本身并没有很好地包含三维空间的声音方向信息,因而用任何现有的办法都不可能将方向信息“提取”出来,否则的话也无需要发展多通路环绕声系统了。并且如前所述,HRTF是与声源与双耳的相对位置有关(特别是高频),所以严格来说,利用HRTF进行处理的方法仅对特定的听音位置(空间一点)有效。在实际的重发中,由于对双通路的立体声信号的处理改变了信号的频谱与相位,使得双通路信号的相关性下降。对于各个位置的倾听者来说,低相关性的立体声信号难以在听觉中产生有确定位置的空间声像,从而产生一种类似于声音来自四面八方的包围感,所以系统起到的是“歪打正着”的效果。实际的倾听也表明,经过3D处理的立体声信号对单独的声像定位较差,但主观的包围感增强。虽然存在上述问题,但这类系统结构简单,并且也能达到一定听觉的效果,因而在要求不高的非专业场合,和不宜采用多通路系统时(如多媒体计算机)还是有较大的应用前景。(3) 多通路环绕声的虚拟重放由于多通路环绕声系统需要较多的重发通路(扬声器),有时会给应用上带来困难,例如,由于房间条件不够的限制,并不一定适合布置多个扬声器的情况。因而国外也提出了采用听觉传输技术中的虚拟声源的方法,通过对HRTF的模拟,利用一对(一般是前方)扬声器虚拟出多通路声系统的多个扬声器,从而实现多通路声的两扬声器虚拟重发。类似的原理也可用于多通路声的耳机重发中。从本质上来说,这类系统混合采用了声级差与听觉传输的原理。这方法已应用到Dolby ProLogic和5.1通路系统的重发中(SRS实验室的TruSurround和Spatialize的NN2是这类系统的代表,并已通过Dolby实验室的验证)。但是在这种方法中,上面所说的听觉传输技术所带来的缺陷仍然存在,即听音区域窄和容易产生前后镜像位置的声像倒置(特别是通过HRTF中的耳壳效应,用前方扬声器模拟重发后方声像时)。3. 多通路环绕声虚拟重放技术的发展现状与传统的多通路重发系统相比较,虽然虚拟声技术具有一定的使用局限性,但它具有结构较为简单、重发的空间听觉真实自然等优点,使得它在多媒体技术与虚拟实现、心理声学研究、家用声重发等领域有广泛的应用前景。国外有许多公司分别提出了5.1通路环绕声的两个扬声器虚拟重发方法,它们的结构大同小异,基本原理相同。它可以用于多通路环绕声的耳机重发中。当多通路环绕声的信号直接用耳机重发时,存在着“头中定位”效应,不但造成不自然的听觉效果,还有可能对听觉系统造成慢性损害。采用HRTF信号处理的方法,利用一对耳机虚拟出多个扬声器,使多通路声从这些虚拟的扬声器重发,从而改善主观听觉效果。Dolby实验室已提出了一种称为Dolby耳机的多通路环绕声耳机重发技术。在多通路环绕声的虚拟重发中,虚拟声存在有内在缺陷,包括重发音色改变,扬声器重发时听音区域变窄,耳机重发的声像位置畸变及其它不自然的主观听觉效果等。2001年起华南理工大学、北京邮电大学与TCL王牌电子有限公司合作,对扬声器和耳机的虚拟重发系统进行了改进,已提出了多项国家发明专利申请。1.1.2 课题的目的及意义AC3的5.1通路系统已被推荐为环绕声的国际标准,并被广泛用在DVD、HDTV、家庭影院等方面。系统采用前方左L、中C、右R,以及左环绕LS、右环绕RS,再加上一路可选择的低频效果通路LFE,从而播放出环绕倾听者的听觉效果。但是系统需要至少六个的单独的全频带扬声器,较为复杂,并且在一些实际的应用中,如电视、多媒体计算机、移动数码音乐设备,以及由于房间条件不够的限制等,并不一定适合布置六个全频带扬声器。因而提出了5.1通路的环绕声的虚拟重放系统,它通过信号处理的方法,利用前方L和R扬声器将系统的其他扬声器虚拟出来,从而达到节约扬声器,简化系统的目的,极具研究价值。而且环绕声的虚拟重放技术首先是由国外提出来的,发展也较我们先进。我国的这些技术都是从国外引进,或者说引进的不是技术,而是别人的产品。我国这门技术的发展是在研究别人产品的基础上发展起来的,相对落后于国外,产品的开发较为困难。然而数字音响市场是一个极为广阔的市场,如果我们能够拥有自己的知识产权,就能够在这个市场上占有一席之地。所以,通过这次设计,让自己对环绕声的虚拟重放有更多的认识,为以后能够从事这方面的工作打下基础,就达到了我预想的目的。1.2 论文的主要内容和框架 在基于AC3的虚拟环绕声实现中,我的工作是通过收集和阅读资料,对系统实现的原理进行深入的了解,预计其实现方法。先分析系统功能,对公式进行推导,确定相关参数的计算方法和系统实现的数学公式。然后分别在Matlab和VC环境下进行编程设计。首先分析程序设计步骤,画出大致原理框图,然后对框图中的模块确定子程序流程图,设计子程序。VC下的编程是利用已有的AC3的C语言解码程序,对经过子程序IMDCT解码后的独立声道数据进行虚拟环绕声处理,然后混合输出,以实现虚拟环绕声。本文的大致框架如下:第一章,在了解课题设计背景的情况下,认识到进行该课题设计的目的与意义;并且对整篇论文的大致内容做简要介绍。第二章,在明确了课题目的和意义的前提下,确定大致的设计方案,明确设计思路,对Matlab和C语言实现虚拟环绕声系统的基本原理简要介绍。第三章,介绍Dolby AC3的特点、应用和编码、解码的基本原理,还对虚拟环绕声的关键技术HRTF做了详细介绍,为后面进行系统设计打好基础。第四章,在Matlab环境下对虚拟环绕声系统进行设计,把单声道信号重AC3音频中提取出来,作为系统的输入;推导出系统实现的具体步骤原理。第五章,进行基于AC3的虚拟环绕声系统。本系统的设计是把AC3解码程序和虚拟环绕声技术相结合,实现环绕声的虚拟重放。第六章,对整个设计是否成功得出结论,对设计过程中遇到的问题进行分析,并分析系统存在的不足和提出改进方法。第2章 系统总体设计2.1 系统实现原理虚拟环绕立体声是一种新的双声道环绕立体声,这就说明它既具有双声道输出又具有真正环绕播放音效的双重特性。 图2-1常规重放系统和虚拟重放系统对比虚拟重放实现的实质是充分利用人类听觉系统的生理与心理因素,用虚拟现实的方法,借助于两个实际存在的左、右声道扬声器,分别虚拟出原多声道播放系统中的中央扬声器,左、右环绕扬声器,低频声道扬声器,来实现环绕声重放效果和输出通道压缩。具体可见图2-1,其中L:左声道,C:中央声道,R:右声道,LS:左环绕声道,RS:右环绕声道,LEF:低频增强声道,阴影:可听音区域。对比可以发现:在新的播放系统中,中央声道扬声器,左右环绕声道扬声器已经消失,代替的是虚拟扬声器,就正是“虚拟环绕声”的由来56。在常规的5.1通道环绕声重放中,前方左L、右R、中C、低音LFE,以及左环绕LS、右环绕RS六路独立信号是分别馈给相应的六个扬声器进行重放的,各扬声器的方位角为(坐标选取为:,为正前方,为正左方): (2-1)在虚拟环绕声中AC3提供的六声道信号经处理后,利用两个前方左右扬声器进行重放,系统的基本原理如图2-2所示LFERSLSRLFECL虚拟环绕声处理3DB3DBLCRRSLS图2-25.1通道环绕声的虚拟重放频域的左、右重放信号L和R可以写为: (2-2)即L和R的信号是直接馈给扬声器,以产生前方范围的立体声像分布。而C和LFE信号经过衰减后,同时馈给左右扬声器。由式(2-2),当其他信号时,有,系统产生正前方的声像,从而达到虚拟前方扬声器的目的。至于环绕通路信号LS和RS,经过一22的矩阵处理后再馈给扬声器,当其他信号时,由式(2-2)可得: (2-3)如图2-3所示,设布置在(标准布置取)的一对左、右扬声器到倾听者的左、右耳的频域传输函数(即头相关传输函数HRTF)分别为HLL、Hrl、Hlr、Hrr(它们是频率的函数,并且和扬声器与倾听者之间的相对位置有关)。虚拟重放时环绕通路信号在双耳处所产生的声压为: HrrHlrHrlHllHlLSHrLSHrRSHlRSLSLCLFERRS图2-3扬声器到双耳的传输 (2-4)矩阵的下标表示是扬声器布置的传输函数。另一方面,在实际的环绕声重放中,设布置在方向的一对左、右对称的环绕扬声器到倾听者的双耳的传输函数分别为HlLS、HrLS、HlRS、HrRS,环绕扬声器在双耳处产生的声压为 (2-5)矩阵的下标表示是的方向,但这里对并没有具体的限制,虽然通常取。如果在上两式中令: (2-6)即虚拟环绕声重放与实际重放时的双耳声压相等,就可以达到虚拟环绕声的目的。由此可以解出: (2-7)由左右对称性,可设,可得: (2-8)由此可以看出,已知六路独立音频信号的情况下,计算出、,就可以通过式(2-2)进行信号处理,再经L和R扬声器重放,就可以得到和LS、RS扬声器重放相同的双耳声压。即利用一对位于前方扬声器可虚拟出一对位于环绕扬声器的声音。再通过式(2-2)加入L、R、C、LFE四路信号,就可以实现5.1声道的虚拟重放。2.2 Matlab仿真实现虚拟环绕声的设计首先要利用软件从DVD的VOB文件中提取出以AC3为后缀的AC3音频文件,然后用AC3解码软件对AC3音频文件进行解码并分离声道,分离成六个不同的单音轨PCM文件,流程见图2-4。Soft EncodeAC3 SplitterGRAPHEDITVOB文件长的AC3文件短的AC3文件六个声道的PCM文件图2-4AC3音频文件解码及声道分离流程然后对环绕声道数据用HRTF进行卷积滤波处理,然后混合成两声道数据,再把两声道数据交替地写入WAV文件。最后按标准位置布置前方左、右两个扬声器,来验证系统是否设计成功。2.3 C语言编程实现基于AC3的虚拟环绕声系统基于AC3的虚拟环绕声C语言编程实现,其前提是在AC3解码程序的下属子程序做相应的修改。虚拟环绕声系统是对六个单声道数据进行处理的,而AC3解码程序中的IMDCT子程序就是对AC3帧进行解码,实现音频数据从频域到时域的转换。环绕声的虚拟处理即对IMDCT子程序的输出的左环绕和右环绕声道数据进行FIR滤波处理。AC3解码程序的Downmix子程序实现的功能是把解码后的声道数据进行混合,输出想要的声道数据。而本系统接下来的步骤就是对Downmix程序添加程序,以混合出两声道的虚拟环绕声,实现虚拟环绕声的系统设计。2.4 本章小结本章首先对系统实现的原理进行了介绍,推导出系统实现的原理公式。并且对在Matlab和C环境下编程实现基于AC3的虚拟环绕声的设计流程作了整体规划。第3章 主要技术简介3.1 Dolby AC3Dolby AC3是杜比实验室开发的一种感觉数字音频编码技术,它在编码效率,声音质量,通用性方面是空前的。它从1992年以来在电影院里提供多声道数字声音,在1994年开始用在双通道DBS(数字广播系统),它显示出的提供多通道数字环绕的能力已在消费电子领域产生了轰动,它被选中提供美国1997年开始的HDTV广播的环绕声。Dolby AC3是一种高效灵活的数字压缩标准,它能压缩从1到5.1个音频声道的PCM信号成32kps-640kps的比特流,音频数据一般压缩到原始数据的1/10。AC3比特流容许48kHz,44.1kHz,或者32kHz的采样频率,支持多种音频模式:1+1,1/0,2/0,3/0,2/1,3/1,2/2,3/2。DVD和美国数字电视的音频都采用Dolby AC3标准,另外在卫星数字广播,数字演播室,家庭影院,娱乐媒体设备等领域也得到广泛应用。AC3采用利用人耳的掩蔽效应的先进感觉模型编码,保持了极高的音质,又极大的压缩了数据78。3.1.1 Dolby AC3的特点、配置和应用1. Dolby AC3的特点是向下混合声音响度控制向后兼容性完整的动态范围控制系统高分辨率音频包络编码复合前向/后项自适应比特分配复杂度适中,非常高的编码增益利用耦合技术避免了极端信号要求时的比特不足的情况低的终端到终端延迟模式2. Dolby AC3的配置如下AC3的比特流中可以嵌入相关服务,包括为视觉损坏者的(可视场景的语音简述),听觉损坏者的(带增强可理解性的对话),解说词,以及第二立体声节目。提供了一个条件访问的方法数据广播声音翻译跟辅助媒体的同步3. Dolby AC3可以应用到以下几个方面用于有线电视的消费电子设备通过卫星的数字广播预先录制的媒体CD播放机数字演播室和家庭影院固体录音机娱乐媒体和电影院的环绕系统消费电子(光碟,DVD)3.1.2 Dolby AC3的编码原理Dolby AC3数字音频压缩标准在1994年11月被采纳为ATSC(advanced television systems committee)采纳为标准。数字音频压缩的目的是产生音频信号的最少数字表示,使它解码以后听起来和初始声音一样。AC3 encoder将5.1声道的信号多于5Mbps(6声道*48kHz*18bits=5.184Mbps)的PCM信号变成384bps的比特流,解码后又变为原来的5.1声道音频节目。AC3接收器接收PCM信号并产生跟标准一致的比特流,解码后产生满足特定应用的音频信号。AC3算法通过粗略的量化音频信号的频域信号的频域表示实现了高的编码效率(输入和输出的比特率之比)。编码的第一步是,把时域内的PCM取样数据变换成频域内成块的一系列变换系数,每个变换系数以二进制指数形式表示,即由一个指数和一个尾数构成。指数集反映信号的频谱包络,用频谱包络决定分配给每个尾数多少比特。最后由六个块的频谱包络、粗量化的尾数及相应的参数组成AC3数据帧格式,连续的帧汇成数码流输出。AC3比特流是一系列AC3帧。编码原理框图如图3-1所示窗处理分析滤波器组窗处理频谱包络编码核心比特分配比特分配AC3数据帧格式AC3码流比特分配信息编码频谱包络耦合参数量化尾数尾数指数六声道PCM数据图3-1AC3编码器原理框3.1.3 Dolby AC3的解码原理AC3解码器的解码原理基本上是编码的反过程,解码器首先必须与编码数据流同步,经过误码纠正后从数码流中分离出控制数据、系统配置参数、编码后的频谱包络及量化后的尾数等数据。然后根据声音的频谱包络产生比特分配信息,对尾数部分进行反量化,恢复变换系数的指数和尾数。再经过合成滤波器组,把数据由频域变换到时域,最后输出重建的PCM样值信号。解码原理框图如图3-2所示。AC3数据帧格式 纠错解帧尾数反量化比特分配频谱包络解码合成滤波器组指 数比特分配信息PCM数据编码数据流图3-2AC3解码器原理框图3.2 头相关传输函数在各类虚拟重放系统中,都会用到一个重要技术头相关传输函数,可以说,没有头相关函数的产生和发展,就不会有虚拟重放系统的出现和完善。头相关传输函数作为5.1通路虚拟环绕声系统设计的关键,下面将对其做必要的介绍8。头相关传输函数(Head-Related Transfer Function,HRTF,也称双耳传输函数,后面统称HRTF)描述了声波从声源到双耳的传输过程。它是人的生理结构(如头、耳廓以及躯干等)对声波进行综合滤波的结果。因为HRTF包含了有关声源定位的信息,所以它对于双耳听觉和心理声学的研究具有非常重要的意义;在实际应用中,利用耳机或扬声器重发用HRTF处理过的信号,可以虚拟出各种不同的空间听觉效果。这已广泛应用于虚拟声技术、多媒体与虚拟实现、室内声学模拟和家用声重发等领域。3.2.1 HRTF的定义声源发出的声波经头部、耳廓、躯干等散射后到达双耳,其中的物理过程可视为一个线性时不变(LTI)的声滤波系统,其特性可由系统的频域传输函数完全描述,HRTF正是这个声滤波系统的频域传输函数。在自由场的情况下,HRTF定义为 (3-1)其中,PL,PR分别是简谐点声源在倾听者左、右耳产生的复数声压。是人头不存在时,头中心位置处的复数声压。一般情况下,HL,HR是声源的水平方位角、仰角、声源到头中心的距离r以及声波的角频率的函数(对于远场,即t>1.2m的情况,HL,HR基本上与r无关)。另外,由于不同人的头部、耳廓、躯干等的尺寸和形状不同,因而严格来说每个人的HRTF是不同的,也就是说HRTF是一个具有个性化特征的物理量。公式中表示具有个性化特征的参量,如头部的尺寸。由于HRTF描述了声波从声源到双耳的传输过程及其与头部、耳廓、躯干等的相互作用,因而它包含了有关声源定位的大部分信息。其中头部对声波的散射作用产生传统的声源定位因素,即双耳时间差(ITD)和双耳声级差(ILD),在不同的频段中两者的重要性不同。在中、低频(f<1.6kHz),双耳时间差(ITD)是定位的主要因素;在中频(f:1.54.0kHz),ITD和ILD共同起作用;而在高频(f>4kHz),ILD起主要作用。当声源位于中垂面上,相应的ITD和ILD近似为零,这时传统的双耳定位机理解释不了中垂面的声源定位。进一步的研究发现,在高频(f>5kHz),当耳廓的尺度与波长可比时,它对声波的散射主要表现为HRTF函数在高频的前后不对称和频谱上的峰谷,这对区分前后镜像位置的声源和中垂面的定位有着重要的作用。HRTF在时域的表述称为头相关脉冲响应(Head-Related Impulse Response,HRIR,也称为双耳脉冲响应),它与头相关传输函数HL,HR互为傅立叶变换对:(3-2)hl,hr可推广为双耳(或头相关)房间脉冲响应(Binaural Room Impulse Response,BRIR)。BRIR包含了直达声和特定的房间反射声的空间信息9。3.2.2 HRTF数据的获取HRTF对双耳听觉和虚拟声的研究具有重要的意义。它与声源的方向、距离、频率以及倾听者的生理结构有关,是一个具有个性化特征的物理量,可以通过对真人或人工头进行实验测量得到,也可通过理论计算得到。本次设计采用的是MIT实验室用KEMAR人工头模型测量得到的HRTF参数,见图3-3。图3-3KEMAR人工头模型MIT实验室用KEMAR人工头模型进行HRTF的测量,整个测量在专业的回声消除室中进行。测量对象两耳的对称中心位于球面坐标系的球心处,声源在以半径为1.4m的球面上移动。测量的仰角从(水平面下)到(头部正上方)。对于每一个仰角,测量该平面上到内以一定步进值递增的方位角上的HRTF参数,如表3-1所示。总共测得710个不同空间方向上的采样率为44.1kHz的HRTF单位取样响应。表3-1HRTF的测量位置仰角度数测量次数方位角每次增加的度数-40-30-20-10 01020304050607080905660727272727260564536241216.436.005.005.005.005.005.006.006.438.0010.0015.0030.00x测量的每组HRTF数据,经过分析剔除不必要的采样点数据以后,保留512个采样点数据,以16bit的有符号整数存放在DAT格式文件中。部分HRTF数据库已经在互联网上公布,本次设计所用HRTF数据是从互联网上下载。HRTF数据的DAT文件是按仰角角度存放在目录中。每个目录名称有格式“elevEE”, EE代表仰角的度数。在每个目录之内每个文件名有格式“XEEeAAAa.dat” X是“L”或“R”,分别代表左、右耳朵的响应,EE是以度数表示的声源的仰角,从到, AAA是以度数表示的方位角,从到。仰角和方位角表明了声源与模拟人头的方位关系,仰角表示直接在模拟人头的正上方,仰角,方位角表示模拟人头的正右方,等等。例如,文件“R-20e270a.dat”是右耳的响应,声源仰角在水平面下,到左边的方位角是。对HRTF数据进行分析,可以得到其中包含的空间方位信息,这些信息是实现环绕声的关键。在搭建虚拟环绕声重放系统模型中,对HRTF的选用是很重要的,如果选用了准确的HRTF,那么根据HRTF对声源的定位作用,聆听者就可以成功的获得对虚拟扬声器的听觉感应10。3.3 本章小结本章对AC3的特色、应用领域、编解码基本原理作了简要介绍,而HRTF作为设计中的关键,因此对它的定义、特点和存储方式等作了较为详细的介绍,因为这是设计中调用HRTF数据的依据。第4章 Matlab编程实现虚拟环绕声的设计4.1 Matlab的特点Matlab具有以下几个特点: Matlab编程的过程就是在编辑、编译、连接以及执行和调试之间作瀑布型的循环。Matlab语言与其它语言相比,较好地解决了上述问题,把编辑、编译、连接和执行融为一体。它能在同一画面上进行灵活操作快速排除输入程序中的书写错误、语法错误以至语意错误,从而加快了用户编写、修改和调试程序的速度,可以说在编程和调试过程中它是一种比VB还要简单的语言。 运算符丰富。由于Matlab是用C语言编写的,Matlab提供了和C语言几乎一样多的运算符,灵活使用Matlab的运算符将使程序变得极为简短。 高级但简单的程序环境,与其它语言编写的程序结合和输入输出格式化数据的能力;Matlab既具有结构化的控制语句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性。 程序限制不严格,程序设计自由度大。例如,在Matlab里,用户无需对矩阵预定义就可使用。有大量事先定义的数学函数,并且有很强的用户自定义函数的能力; 程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。 语言简洁紧凑,使用方便灵活,库函数极其丰富。有高性能数值计算的高级算法,特别适合矩阵代数领域;Matlab程序书写形式自由,利用起丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。可以说,用Matlab进行科技开发是站在专家的肩膀上。 高版本的Matlab语言有丰富的库函数,在进行复杂的数学运算时可以直接调用,而且Matlab的库函数同用户文件在形成上一样,所以用户文件也可作为Matlab的库函数来调用11。因此,利用Matlab可以迅速,快捷的进行数学运算,实现

    注意事项

    本文(基于AC3的虚拟环绕声实现.docx)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开