一种优化LC3编码器的量化全局增益序号搜索方法和系统与流程
本申请涉及音频编码技术领域,特别涉及一种优化lc3编码器的量化全局增益序号搜索方法和系统。
背景技术:
随着移动通信领域的不断发展,蓝牙技术的应用也越来越广,尤其在蓝牙音频的应用方面。
目前蓝牙国际联盟bluetoothsig联合众多厂商推出了低复杂度通信编解码器(英文:lowcomplexitycommunicationcodec,简称lc3)。由于lc3编解码技术,其具有较低延迟、较高音质和编码增益以及在蓝牙领域无专利费得优点,受到广大厂商的关注。由于lc3推出的初衷是要满足低功耗蓝牙领域的音频应用,所以对功耗要求非常严格,在低功耗蓝牙领域,期望移动设备的功耗较低,而音频的码率与占用的空中带宽成正比,且音频的码率直接影响射频的功耗。较低的码率不仅可以降低收发端的射频功耗和空中干扰,同时也能降低编解码器的运算量(主要是降低算术编码解码的运算量)。
在现有技术中,编码器需要搜索到一个恰当的全局增益系数gg,其中gg对应量化全局增益序列号gg_ind而单调递增分布。gg用于缩小时域噪声整形(tns)的频域谱线数据x_f[ne],使得缩小后的量化的频谱数据x_q[ne],在后续算术编码过程中,可以恰当的填入由帧码率bitrate控制的bit预算空间中,达到编码器的压缩目标。lc3规范给出的bit二分法,由于待搜索空间为gg_ind位于0到255之间,256个数即为2^8次幂,因此此标准二分法固定8次搜索gg_ind的过程,而每个候选gg_ind,需要进行内循环ne/4次的运算,iter=0到7的循环为gg_ind候选循环(外圈),i从ne/4-1到0的循环为对每个gg_ind候选的探测过程,即内圈,且主要运算量集中在内圈中对候选gg_ind对应的nbits_spec_dot的bit数量评估的计算上。
技术实现要素:
本申请提供一种优化lc3编码器的量化全局增益序号搜索方法和系统,用最少的次数进行上述内圈运算。
本申请采用的一个技术方案是:提供一种优化lc3编码器的量化全局增益序号搜索方法,其包括:第一次搜索,对预先选定的第一量化全局增益序号进行首次评估量化全局增益序号搜索计算,得到第一比特长度预算,其中,第一比特长度预算为第一量化全局增益序号对应的量化频谱信号编码所需的比特长度预算,根据预先选定的第一搜索区间和第一比特长度预算与目标比特长度预算的第一差值,确定第二搜索区间,其中,目标比特长度预算为目标量化全局增益序号对应的量化频谱信号编码实际的比特长度预算,判断第二搜索区间的上限和下限是否相同,若相同,则结束搜索,输出第一量化全局增益序号,否则进行第i次搜索;第i次搜索,将第i搜索区间的中位数确定为第i量化全局增益序号,判断第i量化全局增益序号和第i-1量化全局增益序号是否相同,若相同,则结束搜索,输出第i-1量化全局增益序号,否则对第i量化全局增益序号进行首次评估量化全局增益序号搜索计算,得到第i比特长度预算,其中,第i比特长度预算为第i量化全局增益序号对应的量化频谱信号编码所需的比特长度预算,根据第i搜索区间和第i比特长度预算与目标比特长度预算的第i差值,确定第i+1搜索区间,判断第i+1搜索区间的上限和下限是否相同,若相同,则结束搜索,输出第i量化全局增益序号,否则进行重复搜索并判断,直至第n+1搜索区间的上限和下限相同,结束搜索,输出第n量化全局增益序号,其中,i是大于1小于等于n的整数,n是小于等于8的整数。
本申请采用的另一个技术方案是:提供一种优化lc3编码器的量化全局增益序号搜索系统,其包括:第一搜索模块,其用于第一次搜索时,对预先选定的第一量化全局增益序号进行首次评估量化全局增益序号搜索计算,得到第一比特长度预算,其中,第一比特长度预算为第一量化全局增益序号对应的量化频谱信号编码所需的比特长度预算,根据预先选定的第一搜索区间和第一比特长度预算与目标比特长度预算的第一差值,确定第二搜索区间,其中,目标比特长度预算为目标量化全局增益序号对应的量化频谱信号编码实际的比特长度预算,判断第二搜索区间的上限和下限是否相同,若相同,输出第一量化全局增益序号,则结束搜索,否则进行第i次搜索;第i搜索模块,其用于第i次搜索时,将第i搜索区间的中位数确定为第i量化全局增益序号,判断第i量化全局增益序号和第i-1量化全局增益序号是否相同,若相同,则结束搜索,输出第i-1量化全局增益序号,否则对第i量化全局增益序号进行首次评估量化全局增益序号搜索计算,得到第i比特长度预算,其中,第i比特长度预算为第i量化全局增益序号对应的量化频谱信号编码所需的比特长度预算,根据第i搜索区间和第i比特长度预算与目标比特长度预算的第i差值,确定第i+1搜索区间,判断第i+1搜索区间的上限和下限是否相同若相同,则结束搜索,输出所述第i量化全局增益序号,否则进行重复搜索并判断,直至第n+1搜索区间的上限和下限相同,结束搜索,输出第n量化全局增益序号,其中,i是大于1小于等于n的整数,n是小于等于8的整数。
本申请采用的另一个技术方案是:一种计算机设备,包括:至少一个处理器、至少一个存储器以及存储在存储器中的计算机程序指令,当计算机程序指令被处理器执行时实现上述优化lc3编码器的量化全局增益序号搜索方法。
本申请采用的另一个技术方案是:一种存储介质,其上存储有计算机程序指令,当计算机程序指令被处理器执行时实现上述优化lc3编码器的量化全局增益序号搜索方法。
本申请的有益效果在于:本申请利用量化全局增益序号对应的量化频谱信号编码所需的比特长度预算与目标量化全局增益序号对应的量化频谱信号编码实际的比特长度预算的差值,重新确定搜索区间,减少了搜索次数,同时能够快速的收敛到最合适的量化全局增益序号,从而增强音质,降低处理器的运算量。
附图说明
图1为本申请优化lc3编码器的量化全局增益序号搜索方法的一个具体实施方式的示意图;
图2为本申请优化lc3编码器的量化全局增益序号搜索方法的一个具体实例的示意图;
图3为本申请优化lc3编码器的量化全局增益序号搜索方法的另一个具体实例的示意图;
图4为本申请优化lc3编码器的量化全局增益序号搜索方法的一个具体实施例的示意图。
具体实施方式
为了使本申请的上述特征和优点更加易懂,下面结合附图和具体实施方式对本申请做进一步详细说明。该详细说明仅仅是为了帮助理解本申请,本申请的保护范围不仅仅限于具体实施方式存储的具体说明。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
下述先对本申请中的专业术语和现有技术进行介绍:
增益索引偏移量gg_off为当前帧码率(nbits)相关参数,其由下式(1)计算:
增益索引偏移接着可用于调整目标量化全局增益序号gg_ind对应的空间位预算nbits_spec可由下式(2)给出:
接着首次评估量化全局增益序号gg_ind,使得对量化的经过时域噪声整形的频谱信号所需的nbits_spec尽可能接近目标量化全局增益序号对应的nbits_spec。此评估基于低复杂度对分搜索,其粗略地近似对量化的经过时域噪声整形的频谱信号所需的位数。该算法可描述如下:
其中,e[k]为由下式(3)给出的4个mdct系数的区块的能量(以db为单位)
以及,最小全局增益gg_min由下式(4)给出:
在该现有技术中,二分查找量化全局增益序号的方法有如下问题:
其一,收敛速度较慢,收敛速度慢,固定8次gg_ind候选值的搜索,因为每次搜索只处理了候选gg_ind与目标gg_ind的相对方向,忽略了候选gg_ind和目标gg_ind分别对应的2个nbits_spec值间的差,与当前候选gg_ind到目标gg_ind的距离之间的关联性,以及,当前候选gg_ind越接近目标gg_ind,nbits_spec的距离差就越密集(距离近),反之则更稀疏(距离远)的特性,处理器运算量很高;其二,首次搜索范围为[0,255],没有利用gg_min进行搜索范围的缩小;其三,没有利用当前探测的gg_ind造成的nbits_spec值与目标gg_ind对应的nbits_spec的差值大小,评估下一次搜索范围;其四,利用标准lc3规范规定的二分法在一定概率下不能搜索到最佳的量化全局增益序号,需要后续继续对全局增益值调整,进行二次量化谱系数运算,增加了处理器的运算量。
基于上述存在的技术问题,本申请利用量化全局增益序号对应的量化频谱信号编码所需的比特长度预算与量化全局增益序号对应的量化频谱信号编码所需的比特长度预算,重新确定较小的搜索区间,能够快速的收敛到最合适的量化全局增益序号,从而降低处理器的运算量。
图1示出了本申请一种优化lc3编码器的量化全局增益序号搜索方法的具体实施方式。在该具体实施方式中,包括:步骤s101。该步骤主要包括:第一次搜索,对预先选定的第一量化全局增益序号进行首次评估量化全局增益序号搜索计算,得到第一比特长度预算,其中,第一比特长度预算为第一量化全局增益序号对应的量化频谱信号编码所需的比特长度预算,根据预先选定的第一搜索区间和第一比特长度预算与目标比特长度预算的第一差值,确定第二搜索区间,其中,目标比特长度预算为目标量化全局增益序号对应的量化频谱信号编码实际的比特长度预算,判断第二搜索区间的上限和下限是否相同,若相同,则输出所述第一量化全局增益序号,结束搜索,否则进行第i次搜索。
在本申请的一个具体实施例中,编码器首次评估gg_ind前,首先由公式(1)计算出当前帧的gg_off,由公式(4)计算出当前帧的最小全局增益gg_min由公式(3)计算出当前帧中第i个以4个经过tns过滤的频谱数据样本为单位的能量单元e[i],i<ne/4,其中ne为编码频谱线数量,i从ne/4-1到0的循环为对每个gg_ind的探测过程。以及公式(2)计算出目标量化gg_ind对应的空间位预算nbits_spec。
在该具体实施例中,预先选定的第一量化全局增益序号为包括上一帧量化全局增益序号mem_gg_ind、第一搜索空间的中位数和第一搜索区间的预设阈值中的至少一者,其中上一帧量化全局增益序号mem_gg_ind包括上一帧首次评估的量化全局增益序号或者对上一帧首次评估的量化全局增益序号进行二次量化得到的量化全局增益序号。
在该具体实施例的一个实例中,优选的,mem_gg_ind即前一帧的gg_ind作为初值,将使收敛到目标gg_ind的速度最快。
在该具体实施例的另一个实例中,在第一帧编码时,由于没有上一帧,可以根据测试经验将mem_gg_ind初始化为130,约是gg_min=17到255的一半位置。
在该具体实施例的另一个实例中,若mem_gg_ind不在上述预先选定的第一搜索区间内,即mem_gg_ind<当前帧的第一搜索区间的下限,那么需要从第一搜索区间的中位数开始搜索,或者在第一搜索区间之间寻找其他gg_ind初值即第一搜索区间的预设阈值。
在该具体实施例中,预先选定的第一搜索区间的下限和上限分别为最小全局增益gg_min和255。
在上述的另一实例中,具体地,若mem_gg_ind不在上述预先选定的第一搜索空间内,即mem_gg_ind<当前帧的gg_min,那么需要从(gg_min+255)/2开始搜索,或者在[gg_min,255]之间寻找其他gg_ind初值。
在该具体实施例中,利用了当前帧的gg_min,减小了第一搜索区间,减少了gg_ind的个数,最终结果是降低了处理器运算量。
具体地,首先,将mem_gg_ind或者(gg_min+255)/2或者第一搜索区间的预设阈值选择为第一量化全局增益序号。
其次,对第一gg_ind进行首次评估量化全局增益序号搜索计算,得到第一gg_ind对应的nbits_spec,也就是首次评估量化全局增益序号搜索算法中的tmp值。
值得说明的是,若第一gg_ind对应的nbits_spec大于目标gg_ind对应的nbits_spec,则第一gg_ind太小,需要增大,若第一gg_ind对应的nbits_spec小于等于目标gg_ind对应的nbits_spec,则第一gg_ind太大,需要缩小。
再次,将第一gg_ind对应的nbits_spec与目标gg_ind对应的nbits_spec的差值记做第一差值。
最后,根据第一差值与第一搜索区间确定第二搜索区间的上下限。若第二搜索区间的上下限相同,则结束搜索,否则进行第二次搜索。
在本申请的一个具体实施例中,若第一差值大于0,根据第一预设常数、第一差值和目标比特长度预算,确定第一搜索宽度,则将第一量化全局增益序号加一与255进行比较,将两者中较小者确定为第二搜索区间的下限,将第二搜索区间的下限与第一搜索宽度的和值和255进行比较,将两者较小者确定为第二搜索区间的上限;
若第一差值小于等于0,根据第二预设常数、第一差值和目标比特长度预算,确定第二搜索宽度,则将第一量化全局增益序号确定为第二搜索区间的上限,将第一量化全局增益序号与第二搜索宽度的差值和最小全局增益进行比较,将两者中较大者确定为第二搜索区间的下限,。
具体地,第一差值大于0时,第二搜索区间的下限gg_start=min(255,第一gg_ind+1);第二搜索区间的上限gg_end=min(255,第二搜索区间的下限gg_start+第一搜索宽度)。
第一差值小于等于0时,第二搜索区间的上限gg_end=第一gg_ind;第二搜索区间的下限gg_start=max(第一gg_ind-第二搜索宽度,gg_min)。
其中,第一预设常数或第二预设常数为全局恒定不变的数值,是本领域技术人员依据测试经验值得到的。两个预设常数的目的是使得每次搜索区间的收敛程度加速。即越接近目标nbits_spec_dot的gg_ind候选,离目标gg_ind越近,搜索范围越小(窄)。
在该具体实施例中,第一差值大于0,第一搜索宽度=第一差值与第一预设常数乘积再与目标比特长度预算的比值;以及
若第一差值小于等于0,第二搜索宽度=第一差值的绝对值与第二预设常数的乘积再与目标比特长度预算的比值。
具体地,第一差值大于0,第一搜索宽度=第一预设常数b*第一差值/目标gg_ind对应的nbits_spec。
第一差值小于等于0,第二搜索宽度=第二预设常数t*|第一差值|/目标gg_ind对应的nbits_spec。
在该具体实施例中,若gg_ind对应的nbits_spec与目标gg_ind对应的nbits_spec的差值较小,则搜索宽度较小,若gg_ind对应的nbits_spec与目标gg_ind对应的nbits_spec的差值较大,则搜索宽度较大,从而保证足够的搜索范围以确保目标gg_ind落在搜索区间内,利用第一差值得到的第二搜索区间,明显比现有技术中的第二搜索区间范围较小,从而降低了处理器的运算量。
在图1示出的具体实施方式中,本申请一种优化lc3编码器的量化全局增益序号搜索方法还包括:步骤s102。该步骤主要包括:第i次搜索,将第i搜索区间的中位数确定为第i量化全局增益序号,判断第i量化全局增益序号和第i-1量化全局增益序号是否相同,若相同,则结束搜索,输出第i-1量化全局增益序号,否则对第i量化全局增益序号进行首次评估量化全局增益序号搜索计算,得到第i比特长度预算,其中,第i比特长度预算为第i量化全局增益序号对应的量化频谱信号编码所需的比特长度预算,根据第i搜索区间和第i比特长度预算与目标比特长度预算的第i差值,确定第i+1搜索区间,判断第i+1搜索区间的上限和下限是否相同,若相同,则结束搜索,输出第i量化全局增益序号,否则进行重复搜索并判断,直至第n+1搜索区间的上限和下限相同,结束搜索,输出第n量化全局增益序号,其中,i是大于1小于等于n的整数,n是小于等于8的整数。
在本申请的一个具体实施例中,若第i差值大于0,根据第一预设常数、第i差值和目标比特长度预算,得到第2i-1搜索宽度,则将第i量化全局增益序号加一与第i搜索区间的上限进行比较,将两者中较小者确定为第i+1搜索区间的下限,将第i+1搜索区间的下限与第2i-1搜索宽度和值和第i搜索区间的上限进行比较,将两者较小者确定为第i+1搜索区间的上限;
若第i差值小于等于0,根据第二预设常数、第i差值和目标比特长度预算,得到第2i搜索宽度,则将第i量化全局增益序号确定为第i+1搜索区间的上限,将第i量化全局增益序号与第2i搜索宽度的差值和第i搜索区间的下限进行比较,将两者较大者作为第i+1搜索区间的下限。
具体地,若第i差值大于0,第i+1搜索区间的下限gg_start=min(第i搜索区间的上限gg_end,第igg_ind+1);第i+1搜索区间的上限gg_end=min(第i搜索区间的上限gg_end,第i+1搜索区间的下限gg_start+第2i-1搜索宽度)。
若第i差值小于等于0,第i+1搜索区间的上限gg_end=第igg_ind;第i+1搜索区间的下限gg_start=max(第igg_ind-第2i搜索宽度,第i搜索区间的下限gg_start)。
在该具体实施例中,第i差值大于0,第2i-1搜索宽度=第i差值与第一预设常数乘积再与目标比特长度预算的比值;以及
若第一差值小于等于0,第2i搜索宽度=第i差值的绝对值与第二预设常数的乘积再与目标比特长度预算的比值。
具体地,第i差值大于0,第2i-1搜索宽度=第一预设常数b*第i差值/目标gg_ind对应的nbits_spec。
第i差值小于等于0,第2i搜索宽度=第二预设常数t*|第i差值|/目标gg_ind对应的nbits_spec。
在该具体实施例中,可以看出每次搜索区间的收敛程度加速,即越接近目标nbits_spec的gg_ind,离目标gg_ind越近,搜索范围越小(窄)。当gg_ind对应的nbits_spec与目标gg_ind对应的nbits_spec的差值较小时,搜索宽度较小,当gg_ind对应的nbits_spec与目标gg_ind对应的nbits_spec的差值较大时,搜索宽度较大,从而保证足够的搜索范围以确保目标gg_ind落在搜索区间内。
在该具体实施例的一个实例中,当i=2时即进行第二次搜索时,将第二搜索区间的中位数确定为第二gg_ind,对第二gg_ind进行首次评估gg_ind搜索计算,得到第二gg_ind对应的nbits_spec,根据第二搜索区间和第二gg_ind对应的nbits_spec与目标gg_ind对应的nbits_spec的第二差值,确定第三搜索区间。
在该实例中,若第二差值大于0,第三搜索区间的下限gg_start=min(第二搜索区间的上限gg_end,第二gg_ind+1);第三搜索区间的上限gg_end=min(第二搜索区间的上限gg_end,第三搜索区间的下限gg_start+第三搜索宽度)。
第二差值小于等于0时,第三搜索区间的上限gg_end=第二gg_ind;第三搜索区间的下限gg_start=max(第二gg_ind-第四搜索宽度,第二搜索区间的下限gg_start)。
值得注意的是,当第i差值=3,4,5,6,7,8等时,对应的确定搜索区间为第四、第五、第六、第七、第八和第九等搜索区间,其中确定第四、第五、第六、第七、第八和第九等搜索区间的过程和确定第三搜索区间的过程类似。类似的步骤,此处不再赘述。
在该具体实施例中,利用第i差值得到的第i+1搜索区间,明显比现有技术中的第i+1搜索区间范围较小,从而降低了处理器的运算量。
本申请利用gg_ind对应的nbits_spec与目标gg_ind对应的nbits_spec的差值,重新确定搜索区间,减少了搜索次数,同时能够快速的收敛到最合适的gg_ind,从而增强音质,降低处理器的运算量。
图2示出了以最小全局增益gg_min=17,和最大全局增益gg_max=255,上一帧量化全局增益序号mem_gg_ind=130为例的搜索过程,首先将130确定为第一gg_ind,对130做tmp计算,得到第一gg_ind对应的nbits_spec=53.162804,小于目标gg_ind对应的nbits_spec83.712585。进一步得到第一差值为-30.549782,此时可以确定第二搜索区间位于130的左侧,第二搜索区间可以定为[17~130-1]即[17~129]。第二次搜索时,将(129+17)/2=73作为第二gg_ind,将73做tmp计算,进一步控制第三搜索区间的收敛。以此类推,知道搜索空间收敛到单值[123~123]时停止,输出123作为本算法探测到的gg_ind的首次评估值。
图3示出了以响板音频测试样本,10ms帧长,8khz采样率,24000bps码率为例时,利用本申请的技术方案,全局平均gg_ind搜索次数为4.84次每帧,相比lc3规范算法的8次有所减少。同时发现当码率越高时,收敛越快,搜索目标gg_ind需要的运算量更少。
图4示出了本申请一种优化lc3编码器的量化全局增益序号搜索系统的具体实施方式。在该具体实施方式中,包括:第一搜索模块,其用于第一次搜索时,对预先选定的第一量化全局增益序号进行首次评估量化全局增益序号搜索计算,得到第一比特长度预算,其中,第一比特长度预算为第一量化全局增益序号对应的量化频谱信号编码所需的比特长度预算,根据预先选定的第一搜索区间和第一比特长度预算与目标比特长度预算的第一差值,确定第二搜索区间,其中,目标比特长度预算为目标量化全局增益序号对应的量化频谱信号编码实际的比特长度预算,判断第二搜索区间的上限和下限是否相同,若相同,则结束搜索,输出所述第一量化全局增益序号,否则进行第i次搜索。
在该具体实施例中,预先选定的第一量化全局增益序号为包括上一帧量化全局增益序号mem_gg_ind、第一搜索空间的中位数和第一搜索区间的预设阈值中的至少一者,包括上一帧首次评估的量化全局增益序号或者对上一帧首次评估的量化全局增益序号进行二次量化得到的量化全局增益序号。
在该具体实施例中,预先选定的第一搜索区间的下限和上限分别为最小全局增益gg_min和255。
在本申请的一个具体实施例中,若第一差值大于0,根据第一预设常数、第一差值和目标比特长度预算,确定第一搜索宽度,则将第一量化全局增益序号加一与255进行比较,将两者中较小者确定为第二搜索区间的下限,将第二搜索区间的下限与第一搜索宽度的和值和255进行比较,将两者较小者确定为第二搜索区间的上限;
若第一差值小于等于0,根据第二预设常数、第一差值和目标比特长度预算,确定第二搜索宽度,则将第一量化全局增益序号确定为第二搜索区间的上限,将第一量化全局增益序号与第二搜索宽度的差值和最小全局增益进行比较,将两者中较大者确定为第二搜索区间的下限。
具体地,第一差值大于0时,第二搜索区间的下限gg_start=min(255,第一gg_ind+1);第二搜索区间的上限gg_end=min(255,第二搜索区间的下限gg_start+第一搜索宽度)。
第一差值小于等于0时,第二搜索区间的上限gg_end=第一gg_ind;第二搜索区间的下限gg_start=max(第一gg_ind-第二搜索宽度,第一gg_min)。
在该具体实施例中,第一差值大于0,第一搜索宽度=第一差值与第一预设常数乘积再与目标比特长度预算的比值;以及
若第一差值小于等于0,第二搜索宽度=第一差值的绝对值与第二预设常数的乘积再与目标比特长度预算的比值。
在该具体实施例中,利用第一差值得到的第二搜索区间,明显比现有技术中的第二搜索区间范围较小,从而降低了处理器的运算量。
在图4示出的具体实施方式中,本申请一种优化lc3编码器的量化全局增益序号搜索系统还包括:第i搜索模块,其用于第i次搜索时,将第i搜索区间的中位数确定为第i量化全局增益序号,判断第i量化全局增益序号和第i-1量化全局增益序号是否相同,若相同,则结束搜索,输出第i-1量化全局增益序号,否则对第i量化全局增益序号进行首次评估量化全局增益序号搜索计算,得到第i比特长度预算,其中,第i比特长度预算为第i量化全局增益序号对应的量化频谱信号编码所需的比特长度预算,根据第i搜索区间和第i比特长度预算与目标比特长度预算的第i差值,确定第i+1搜索区间,判断第i+1搜索区间的上限和下限是否相同,若相同,则结束搜索,输出第i量化全局增益序号,否则进行重复搜索并判断,直至第n+1搜索区间的上限和下限相同,结束搜索,输出第n量化全局增益序号,其中,i是大于1小于等于n的整数,n是小于等于8的整数。
在本申请的一个具体实施例中,若第i差值大于0,根据第一预设常数、第i差值和目标比特长度预算,得到第2i-1搜索宽度,则将第i量化全局增益序号加一与第i搜索区间的上限进行比较,将两者中较小者确定为第i+1搜索区间的下限,将第i+1搜索区间的下限与第2i-1搜索宽度和值和第i搜索区间的上限进行比较,将两者较小者确定为第i+1搜索区间的上限;
若第i差值小于等于0,根据第二预设常数、第i差值和目标比特长度预算,得到第2i搜索宽度,则将第i量化全局增益序号确定为第i+1搜索区间的上限,将第i量化全局增益序号与第2i搜索宽度的差值和第i搜索区间的下限进行比较,将两者较大者作为第i+1搜索区间的下限。
在该具体实施例中,第i差值大于0,第2i-1搜索宽度=第i差值与第一预设常数乘积再与目标比特长度预算的比值;以及
若第一差值小于等于0,第2i搜索宽度=第i差值的绝对值与第二预设常数的乘积再与目标比特长度预算的比值。
本申请提供的优化lc3编码器的量化全局增益序号搜索系统,可用于执行上述任一实施例描述的优化lc3编码器的量化全局增益序号搜索方法,其实现原理和技术效果类似,在此不再赘述。
在本申请的一个具体实施例中,本申请一种优化lc3编码器的量化全局增益序号搜索系统中第一搜索模块,第i搜索模块可直接在硬件中、在由处理器执行的软件模块中或在两者的组合中。
软件模块可驻留在ram存储器、快闪存储器、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、可装卸盘、cd-rom或此项技术中已知的任何其它形式的存储介质中。示范性存储介质耦合到处理器,使得处理器可从存储介质读取信息和向存储介质写入信息。
处理器可以是中央处理单元(英文:centralprocessingunit,简称:cpu),还可以是其他通用处理器、数字信号处理器(英文:digitalsignalprocessor,简称:dsp)、专用集成电路(英文:applicationspecificintegratedcircuit,简称:asic)、现场可编程门阵列(英文:fieldprogrammablegatearray,简称:fpga)或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其任何组合等。通用处理器可以是微处理器,但在替代方案中,处理器可以是任何常规处理器、控制器、微控制器或状态机。处理器还可实施为计算装置的组合,例如dsp与微处理器的组合、多个微处理器、结合dsp核心的一个或一个以上微处理器或任何其它此类配置。在替代方案中,存储介质可与处理器成一体式。处理器和存储介质可驻留在asic中。asic可驻留在用户终端中。在替代方案中,处理器和存储介质可作为离散组件驻留在用户终端中。
在本申请的另一个具体实施方式中,一种计算机可读存储介质,其存储有计算机指令,计算机指令被操作以执行任一实施例描述的优化lc3编码器的量化全局增益序号搜索方法。
在本申请的另一个具体实施方式中,一种程序产品,程序产品包括计算机程序,计算机程序存储在可读存储介质中,至少一个处理器可以从可读存储介质读取计算机程序,至少一个处理器执行计算机程序使执行任一实施例描述的优化lc3编码器的量化全局增益序号搜索方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上综述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除