合成滤波器状态更新方法及装置的利记博彩app

文档序号:2830764阅读:283来源:国知局

专利名称::合成滤波器状态更新方法及装置的利记博彩app合成滤波器状态更新方法及装置
技术领域
本发明涉及编解码
技术领域
,尤其涉及一种合成滤波器状态更新方法及装置。技术背景码激励线性预测(CodeExcitedLinearPrediction;以下简称CELP)编码技术是一种中低速率语音压缩编码技术,以码本作为激励源,具有速率低、合成语音质量高、抗噪性强等优点,在4.816kb/s编码速率上作为主流的编码技术得到广泛的应用。图1为CELP语音编码端系统框图,图2为CELP语音解码技术系统框图。如图1所示,输入的语音信号经过预处理之后,进行线性预测编码(LinearPredictionCoding;以下简称LPC)分析,获得谱参数,谱参数对应于合成滤波器的系数;固定码本贡献和自适应码本贡献进行混合并作为合成滤波器的激励,合成滤波器输出重建信号,该信号应与图2中解码端的合成滤波器的输出一致;对重建信号与预处理后的信号的残差进行知觉加权并进行合成分析搜索,分别搜索出自适应码本参数和固定码本参数用于滤波器的激励。G.729.1是最新发布的新一代语音编解码标准,该嵌入式语音编解码标准具有分层编码的特性,能够提供码率范围在8kb/s32kb/s的窄带到宽带的音频质量,允许在传输过程中,根据信道状况丢弃外层码流,具有良好的信道自适应性。图3为G.729.1编码器系统框图,图4为G.729.1解码器系统框图,如图3、4所示,G.729.1的核心层编解码是基于CELP模型的。由图3可知,在编码速率高于14kb/s时,将启动TDAC编码器开始工作,分别对低子带输入信号与12Kb/s码率下CELP编码器的本地合成信号之间的残差信号和高子带信号进行TDAC编码。由图4可知,解码端在解码速率高于14kb/s时,首先要分别解码出高、低两个子带的信号分量,然后由TDAC解码器解码出低子带的残差信号分量,残差信号分量与CELP解码器重建出的低带信号分量相加即为最终重建的低带信号分量。由于TDAC编码算法中用到了编码端CELP编码器的重建信号分量,同时TDAC解码算法中用到了解码端CELP解码器的重建信号分量。因此,CELP编码端重建信号与解码端重建信号的同步是保证TDAC编解码算法正确性的前提条件,而要保证编解码端重建信号的同步,就要保证CELP编码器和CELP解码器状态的同步。图5为现有G.729.1中CELP编码器结构示意图,图6为现有G.729.1中CELP解码器结构示意图,如图5所示,G.729.1中窄带部分使用的CELP模型支持8kb/s和12kb/s两种速率,编码端用于重建窄带信号分量的合成滤波器分别保留了两种状态,一种是8kb/s速率下的状态,另一种是12kb/s速率下的状态。在编码端,若当前编码速率为8kb/s,则使用核心层G.729编码器计算出的核心层激励信号对8kb/s的合成滤波器进行激励,并更新合成滤波器状态;若当前编码速率等于或者高于12kb/s,则使用增强层的激励信号对12kb/s的合成滤波器进行激励,并更新合成滤波器状态。如图6所示,解码端则仅采用一个合成滤波器,根据接收到的实际码流,计算出相应的激励,进行合成滤波,并更新滤波器状态。编码端两种编码速率下的合成滤波器使用与解码端合成滤波器相同的滤波器系数,即量化后的LPC系数。对于8kb/s和12kb/s两种编码速率,编码端应用两个独立的激励合成模块分别生成相应的激励,分别对相应的合成滤波器进行合成滤波,并对合成滤波器进行更新。解码端仅采用一个合成滤波器,根据接收到的参数计算激励信号,并进行合成滤波,并更新合成滤波器。如果编码速率没有在8kb/s与12kb/s之间进行切换,则编解码端的重建信号将完全同步;但是若发生两种速率之间的切换,则编解码端的重建信号将无法保证同步将影响编解码算法的正确性,最终将影响解码端重建信号的质量。
发明内容本发明实施例提供一种合成滤波器状态更新方法及装置,用以解决现有技术中CELP编码器中在不同编码速率之间转换时,编解码端重建信号的不同步,影响解码端重建信号质量的缺陷,实现CELP编解码器状态同步,在编码速率发生切换时保证编解码端重建信号的一致性。本发明实施例提供一种合成滤波器状态更新方法,包括在利用第一编码速率的激励信号对所述第一编码速率对应的合成滤波器进行激励,输出重建信号信息后,更新所述合成滤波器和第二编码速率对应的合成滤波器的状态j吕息。本发明实施例提供一种合成滤波器状态更新装置,包括数个合成滤波器,还包括状态更新模块,用于在利用第一编码速率的激励信号对所述当前编码速率对应的合成滤波器进行激励,输出重建信号信息后,更新所述合成滤波器和第二编码速率对应的合成滤波器的状态信息。本发明实施例提供的合成滤波器状态更新方法及装置,在编码时允许每个编码速率下使用独立的合成滤波器,并在每帧编码完成后,不仅对当前速率对应的合成滤波器的状态进行更新,还要对其它速率下的合成滤波器的状态进行相同的更新,进而实现编码端不同速率下合成滤波器状态的同步,在编码速率发生切换时保证编解码端重建信号的一致性,提高解码端重建信号的质量。图1为CELP语音编码端系统框图2为CELP语音解码技术系统框图3为G.729.1编码器系统框图4为G.729.1解码器系统框图5为现有G.729.1中CELP编码器结构示意图;图6为现有G.729.1中CELP解码器结构示意图;图7为本发明合成滤波器状态更新方法实施例一流程图;图8为本发明合成滤波器状态更新方法实施例二流程图;图9为本发明合成滤波器状态更新装置结构示意图。具体实施方式下面结合附图和具体实施例进一步说明本发明实施例的技术方案。合成滤波器状态更新方法实施例在语音编码解码标准G.729.1中,窄带部分使用的CELP编码器支持两种编码速率,包括8kb/s和12kb/s;对应于该两种编码速率使用两个独立的合成滤波器进行窄带信号分量的重建,而且对两个合成滤波器的状态的更新不再独立进行,而是根据当前编码速率,在利用当前编码速率的激励信号对所述当前编码速率对应的合成滤波器进行激励,输出重建信号信息后,不但对当前编码速率所对应的合成滤波器的状态信息进行更新,而且还要对其它编码速率对应的合成滤波器的状态信息进行更新。就G.729.1中窄带部分使用的CELP模型而言,若当前编码速率为8kb/s,则在使用8kb/s的合成滤波器的输出结果信息对自身的状态信息进行更新之后,还要对编码速率为12kb/s对应的合成滤波器的状态信息进行更新;若当前编码速率为12kb/s或者更高时,则在使用12kb/s的合成滤波器的输出结果信息对对自身的状态信息进行更新之后,还要对8kb/s对应的合成滤波器状态信息进行更新。这样保证即使编码速率在8kb/s与12kb/s之间发生切换,编码端合成滤波器的状态保持同步,编解码端窄带重建信号分量能够保持一致。图7为本发明合成滤波器状态更新方法实施例一流程图,如图7所示,若当前编码速率为8kb/s,则仅需要使用G.729编码器对窄带信号分量编码出8kb/s的码流,即表1中的层1即可,编码流程如下步骤IOO,对接收到的语音信号进行LPC分析,获得谱参数信息和与所述谱参数对应的合成滤波器的系数信息,并对谱参数或者合成滤波器系数进行量化、反量化;步骤IOI,进行合成分析搜索,获得8kb/s编码速率下的码本参数,所述码本参数包括自适应码本参数和固定码本参数,并进行量化和反量化;步骤102,根据反量化得到的自适应码本参数和固定码本参数合成8kb/s速率下的激励信号;步骤103,利用计算出来的核心层激励信号激励8kb/s速率反量化后的合成滤波器,输出窄带信号分量的重建信号,应用该重建信号信息更新8kb/s速率对应的合成滤波器的状态信息;步骤104,应用更新后的8kb/s速率对应的合成滤波器的状态信息更新12kb/s对应的合成滤波器的状态信息。将更新后的8kb/s速率对应的合成滤波器的状态覆盖12kb/s对应的合成滤波器状态即可,或者在步骤104中直接使用8kb/s速率对应的合成滤波器合成的重建信号更新12kb/s对应的合成滤波器的状态。步骤100中接收到的语音信号是经过预处理过的,步骤103中输出窄带信号分量的重建信号后,根据该重建信号和经过预处理的语音信号得到残差信息,将该残差信息经过知觉加权处理后,将残差信息返回给步骤101进行合成分析搜索。因此上述合成分析搜索过程是一个闭环过程。表l为使用的全速率编码的帧结构20ms帧长比特分配表。表1<table>tableseeoriginaldocumentpage8</column></row><table><table>tableseeoriginaldocumentpage9</column></row><table>图8为本发明合成滤波器状态更新方法实施例二流程图,当编码速率从原来的8kb/s变为12kb/s或者更高时,本实施例以编码速率变为32kb/s为例介绍编码过程,如图8所示包括如下步骤步骤200,对接收到的语音信号进行LPC分析,获得谱参数信息和与所述谱参数对应的合成滤波器的系数信息,并对谱参数或者合成滤波器系数进行量化、反量化;步骤201,进行合成分析搜索,获得核心层的码本参数,包括自适应码本参数和固定码本参数,并进行量化、反量化;步骤202,根据反量化得到的自适应码本参数和固定码本参数合成8kb/s速率下的激励信号;步骤203,用计算出的核心层激励信号激励8kb/s的合成滤波器,并更新该合成滤波器的状态信息;步骤204,计算窄带增强层的固定码本参数并进行量化、反量化,利用反量化的固定码本参数合成增强的激励信号;步骤205,用增强的激励信号激励12kb/s的合成滤波器,输出窄带信号分量的重建信号,并更新该合成滤波器的状态信息;步骤206,应用更新后的12kb/s的合成滤波器状态更新8kb/s的合成滤波器状态;将更新后的12kb/s速率对应的合成滤波器的状态覆盖8kb/s对应的合成滤波器状态即可,或者在步骤206中直接使用12kb/s速率对应的合成滤波器合成的重建信号更新8kb/s对应的合成滤波器的状态。步骤207,应用TDBWE编码器编码14kb/s的码流;步骤208,利用步骤200中接收到的信号与步骤205中计算出的重建信号之间的差值信号,与高带信号分量一起进行TDAC编码。由于解码端仅使用一个合成滤波器并且进行连续的更新,因此在编码端进行完步骤206的操作之后,保证了步骤205中重建的窄带信号分量与解码端重建的窄带信号分量的一致性,最终会保证解码端重建信号的正确性。由上述实施例可知,在编码时允许每个编码速率下使用独立的合成滤波器,并在每帧编码完成后,不但对当前编码速率所对应的合成滤波器的状态信息进行更新,而且还要对其它编码速率对应的合成滤波器的状态信息进行步,保证了即使发生编码速率切换时编解码端重建信号的一致性,提高解码端重建信号的质量。,本发明合成滤波器状态更新方法实施例三采用DTX/CNG技术,使用的全速率语音帧的帧结构如表1所示,使用的全速率噪音帧的帧结构如表3所示。在该实施例中,对语音帧进行编码时,采用与上述实施例中相同的处理方法对编码速率分别12kb/s和8kb/s对应的合成滤波器的状态信息进行相互更新即可。若出现噪音帧与语音帧之间的切换的情况,并且对语音帧用高于12kb/s的编码速率进行编码时,由于在对噪音帧信息进行编码时仅采用了8kb/s的合成滤波器进行合成滤波,为避免出现编解码端重建窄带信号分量不同步的情况,在编码器重建噪音信号时,除了对所使用的8kb/s的合成滤波器的状态信息进行更新之夕卜,还要应用更新后的8kb/s的合成滤波器的状态信息更新12kb/s的合成滤波器的状态信息,保证编码端合成滤波器状态的同步性,进而保证了编解码端重建的窄带信号分量的同步性。表2<table>complextableseeoriginaldocumentpage11</column></row><table>虽然在上述实施例中涉及的CELP编码器仅介绍了支持8kb/s和12kb/s两种编码速率的情况,但是本发明实施例提供的合成滤波器状态更新方法并不局限于两种编码速率之间的切换,也可以应用于更多的CELP编码速率的情况,只要将各个编码速率下的合成滤波器的状态信息进行同步处理即可。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。合成滤波器状态更新装置实施例该合成滤波器状态更新装置包括数个合成滤波器,还包括状态更新模块,用于在利用第一编码速率的激励信号对所述第一编码速率对应的合成滤波器进行激励,输出重建信号信息后,更新所述合成滤波器和第二编码速率对应的合成滤波器的状态信息。进一步地,根据更新方式的不同,状态更新模块可以有不同的组成方式,例如可包括第一更新子模块,用于利用所述重建信号信息,更新所述第一编码速率对应的合成滤波器的状态信息;和第二更新子模块,用于利用更新后的第一编码速率对应的合成滤波器的状态信息,更新所述第二编码速率对应的合成滤波器的状态信息。状态更新模块还可以由以下组成方式,包括第一更新子模块,用于利用所述重建信号信息,更新所述第一编码速率对应的合成滤波器的状态信息;和第三更新子模块,用于利用所述重建信号信息,更新所述第二编码速率对应的合成滤波器的状态信息。图9为本发明合成滤波器状态更新装置结构示意图,具体为G.729.1中CELP编码器结构示意图,如图9所示,对于编码速率为8kb/s和12kb/s的合成滤波器,还是采用两个独立的第一合成滤波器1和第二合成滤波器2,并且应用两个独立的第一激励信号合成模块3和第二激励信号合成模块4分别对对应的合成滤波器进行激励。根据当前编码速率选择一路合成滤波器,在LPC系数确定模块5确定完LPC系数后,应用所选择的合成滤波器进行窄带信号分量的重建,输出重建信号信息,并应用重建信号通过状态更新模块6对当前编码速率如8kb/s对应的合成滤波器进行状态更新;并且还要应用更新后的合成滤波器的状态,通过状态更新模块6更新编码速率为12kb/s对应合成滤波器的状态,使得第一合成滤波器1和第二合成滤波器2的状态保持同步。在解码端采用与现有G.729.1中CELP解码器结构相同的一个合成滤波器即可。应用本实施例提供的合成滤波器状态更新装置,通过应用状态更新模块同时对编码器中,对应于不同编码速率的合成滤波器的状态进行更新,保证了编码端不同速率下合成滤波器状态的同步,在编码速率发生切换时保证编解码端重建信号的一致性,提高解码端重建信号的质量。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。权利要求1、一种合成滤波器状态更新方法,其特征在于,包括在利用第一编码速率的激励信号对所述第一编码速率对应的合成滤波器进行激励,输出重建信号信息后,更新所述合成滤波器和第二编码速率对应的合成滤波器的状态信息。2、根据权利要求1所述的合成滤波器状态更新方法,其特征在于,所述更新所述合成滤波器和第二编码速率对应的合成滤波器的状态信息具体为利用所述重建信号信息,更新所述第一编码速率对应的合成滤波器的状态信息;利用更新后的第一编码速率对应的合成滤波器的状态信息,更新所述第二编码速率对应的合成滤波器的状态信息。3、根据权利要求1所述的合成滤波器状态更新方法,其特征在于,所述更新所述合成滤波器和第二编码速率对应的合成滤波器的状态信息具体为利用所述重建信号信息,更新所述第一编码速率和所述第二编码速率对应的合成滤波器的状态信息。4、一种合成滤波器状态更新装置,包括数个合成滤波器,其特征在于还包括状态更新it块,用于在利用第一编码速率的激励信号对所述第一编码速率对应的合成滤波器进行激励,输出重建信号信息后,更新所述合成滤波器和第二编码速率对应的合成滤波器的状态信息。5、根据权利要求4所述的合成滤波器状态更新装置,其特征在于,所述状态更新模块包括第一更新子模块,用于利用所述重建信号信息,更新所述第一编码速率对应的合成滤波器的状态信息;第二更新子模块,用于利用更新后的第一编码速率对应的合成滤波器的状态信息,更新所述第二编码速率对应的合成滤波器的状态信息。6、根据权利要求4所述的合成滤波器状态更新装置,其特征在于,所述状态更新模块包括第一更新子模块,用于利用所述重建信号信息,更新所述第一编码速率对应的合成滤波器的状态信息;第三更新子模块,用于利用所述重建信号信息,更新所述第二编码速率对应的合成滤波器的状态信息。全文摘要本发明实施例提供一种合成滤波器状态更新方法和装置。该方法包括在利用第一编码速率的激励信号对所述当前编码速率对应的合成滤波器进行激励,输出重建信号信息后,更新所述合成滤波器和第二编码速率对应的合成滤波器的状态信息。该装置包括数个合成滤波器,还包括状态更新模块,用于对所述数个合成滤波器的状态信息进行同步更新。在编码时允许每个编码速率下使用独立的合成滤波器,并在每帧编码完成后,不仅对当前速率对应的合成滤波器的状态进行更新,还要对其它速率下的合成滤波器的状态进行相同的更新,进而实现编码端不同速率下合成滤波器状态的同步,在编码速率发生切换时保证编解码端重建信号的一致性,提高解码端重建信号的质量。文档编号G10L19/06GK101339768SQ200810056499公开日2009年1月7日申请日期2008年1月18日优先权日2008年1月18日发明者代金良申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1