错误隐蔽装置和方法

文档序号:2819676阅读:259来源:国知局
专利名称:错误隐蔽装置和方法
技术领域
本发明涉及一种在损失信息包是接收侧障碍主要原因的信息包网络中适用于实时信息流领域的接收信号之错误隐蔽方法和用于选择错误隐蔽方法的装置。
背景技术
现在,对于有关音频数据的错误隐蔽技术广泛进行了大量研究。这些方法的大部分能够分类为在接收侧重构漏缺的信息包的方式、在发送侧重构漏缺的信息包的方式、或者在接收发送侧重构漏缺的信息包的方法。这些方法例如在非专利文献1,2,3,4中已经公开。
尽管在接收侧重构漏缺信息包比在发送侧重构漏缺信息包要简单,但是其只在信息包漏缺频度少且信息包尺寸小时有效。另一方面,在发送侧重构漏缺信息包的方式中,其发送信息包冗长,即要在数据信息包中追加附加信息,因此需要额外的带宽或者使终端之间的延迟变得更长(参考非专利文献1,2)。
在发送侧重构漏缺信息包的方法中要求追加很多附加信息。如非专利文献4,7所示,该附加信息的追加包括给各个信息包追加序列号码;当信息包变为漏缺时追加重新传送请求;或者对被重新传送的信息包追加在低的位速率下的编码请求,这是很麻烦的。
尽管在接收发送侧重构漏缺信息包的方式兼备基于接收侧的重构和基于发送侧的重构两者的长处,但是其错误隐蔽技术是静态的,不能在运行时间变化。
非专利文献11986年3月出版的“IEEE Transanction on Acoustics,Speech and Signal Processing”第36卷第3期,O.J.Wasem、D.J.Goodman、C.A.Dvorak和H.G.Page的“The Eeffect of Waveform Substitution on theQuality of PCM Packet Communications(有关PCM信息包通信质量的波形替代效果)”;非专利文献21998年9/10月的IEEE Network,Colin Perkins、OrionHodson和Vicky Hardman的“A Survey of Packet Loss Recovery Techniquesfor Streaming Audio(用于流音频的信息包损失恢复技术的调查)”;非专利文献3R.A.Valenzuela和C.N.Animalu的“A new Voice PacketReconstruction Techniques(新声音信息包重构技术)”;非专利文献41995年INET会报,V.Hardman、A.Sasse、M.Handley和A.Watson的“Reliable Audio for Use over Internet(因特网所使用的可靠性音频)”;非专利文献53GPP TS 26094 V4.0.0(2001-3);非专利文献6Petre Pollak、Pavel Sovka和Jam Uhlir的CepstralSpeech/Pause Detectors;非专利文献71993年IEEE,Werner Verhelst和March Roelands的“AnOverlap Technique based on Waveform Similarity(WSOLA)for High QualityTime-Scale Modification of Speech(基于用于声音高质量时标修正之波形相似性的重叠技术)”。

发明内容
本发明的目的是做到在接收侧能够在运行时间上动态地选择最合适的错误隐蔽方法。
成为漏缺的间隔只能通过合适的替换来填满。在声音信息包网中,应填充的数据可以采用静音或者基于推定和环境因素而重构的数据形式。由于不同的错误隐蔽技术对不同的损失信息包是有效的,在进行错误隐蔽之前,通过追加“动态选择器”,评估该损失信息包和其它环境条件将带来更好的结果。
本发明基于损失错误模式和网络以及资源级别的现在条件,在接收侧,通过选择最合适的方法,最大限度地利用已知的错误隐蔽方法。
本发明提供了用于确定所使用错误隐蔽技术的选择基准。在因特网中已有的IP协议完全不提供服务保证的质量,是无连接且竭尽努力的协议。在实时流应用时,为了与成组传输(Burst)损失对应,能够使用最佳的错误隐蔽方法,但是,当发生云集或者当接收装置的资源急剧缺乏时,如果使用本发明,能够在运行时间实现到较低级计算方法的切换。
本发明提供了在信息包分解时通过使用各种方法来隐蔽错误的装置。当成组传输损失时,在整个连续的损失段上可以使用各种技术。
本发明提供了通过利用损失模式的特性来决定应该使用哪一种技术的方法。在IP应用上的声音中,当在该损失之前检测出声音信号时,使用基于邻接信号信息被重构的信号。如果在损失之前检测出非声音信号,则使用低功率噪声段或者静音。
为了解决上述课题,本发明的装置使用现在资源级别信息和损失信息包信息。本发明的装置包括声音检测器,用于检测良好信号的段,该良好信号是声音信号或者非声音信号的某一个。这种声音检测器例如是非专利文献5,6上记载的。
对声音信号的错误隐蔽是从可利用的错误隐蔽算法的集合中选择的。根据接收侧的现在活动状态及现在可利用资源的级别来获得选择基准。如果可利用的资源小,就使用几乎不使用CPU资源的错误隐蔽。对各种算法,根据其复杂性,设定了各种级别的阈值。
非声音信号具有各自的算法集合,其具有与各个算法关联的阈值级别。
本发明包括选择器模块,其用于选择在信息包网中用于隐蔽错误的最合适的技术。该选择器利用“声音检测”模块等其它模块的结果。声音检测模块检查模板数据的声音段和非声音段。该模板数据是来自前面信息包的数据信息包。错误隐蔽方法的种种集合被用来处理声音段和非声音段。在考虑了现有环境条件且资源不足时,选择器判断是否使用更简单的算法。为了使错误隐蔽方法高效的工作,用两种方法进行分析。其是短期分析和长期分析。短期分析是基于根据选择器模块中被缓冲的音频信息包的错误损失而进行的。长期分析是基于发送到接收机的信息包损失的知识和通过接收机或者具有可靠性的网络节点所收集的统计而进行的。
本发明的第一选择装置是用于选择最合适的错误隐蔽方法的装置,用于隐蔽通过信息包交换网而发送的数字化音频信号的损失,以便能够实时解码数字音频。该装置由在进行信息包缓冲时使用的信息包音频缓冲器、在确定在特定时间帧接收的损失信息包模式时所使用的损失模式检测器、用于提取数字化音频信号的时间特性的音频信号分析器、以及基于从上述信息包音频缓冲器、损失模式检测器和音频信号分析器产生的结果来选择最终的错误隐蔽算法的错误隐蔽选择器构成。
优选地,在上述选择装置中,上述损失模式检测器测量信息包大小,其表示使数据信息包压缩化(capsule)的数字信号的长度(字节数,位数);连续信息包的损失数,其是用于将固定长或者可变长的数字信号压缩为单位时间;以及表征在两个信息包损失之间的时间上被测量的数字信号的信息包间隔或者实质上与此对应的信号(位数等)。而且,上述损失模式检测器通过使用由上述信息包大小、连续的信息包损失数和信息包间隔或者实质上与此对应的信号构成的格式来报告音频或者声音流之错误信息包的发生。
本发明的第一方法是在上述信息包音频缓冲器和损失模式检测器中使用的确定损失信息包之特性的方法。该方法包括将固定长或者可变长的数字化信号用单位时间进行压缩并将前面良好的信息包缓冲的步骤;将固定长或者可变长的数字化信号用单位时间进行压缩并将下一个良好的信息包缓冲的步骤;将固定长或者可变长的数字化信号用单位时间进行压缩、确定连续损失信息包数的步骤;将固定长或者可变长的数字化信号用单位时间进行压缩并确定前面良好信息包的模式的步骤;将固定长或者可变长的数字化信号用单位时间进行压缩并确定后续良好信息包的模式的步骤。
本发明的第二方法是通过在单位时间或者其它特定时间(可变时间等)中产生统计、根据给在任意时间中计算或者测量的数字信号损失中提供数值,来提供错误损失模式之描述的模式描述方法。当损失之间的间隔是两个数字信号损失之间的时间或者以信息包单位表现的距离值,成组传输损失被定义作为在单位时间或者其它特定时间(可变时间等)中数字信号的连续损失时,上述统计包括在具有错误的数字信号或者损失数字信号(以后称为“错误或者损失数字信号)之间的最大间隔;错误或者损失数字信号之间的平均间隔;从由无错数字信号的连续单元(unit)构成的最后批次(batch)的第一例到用于错误模式描述的特定时间之最后为止所测量的错误或者损失数字信号之间的第一间隔;最大成组传输错误或者损失数字信号;平均成组传输错误或者损失数字信号;从由有错数字信号的连续单元构成的最后批次到用于错误模式描述的特定时间之最后为止所测量的错误或者损失数字信号的最后成组传输时间;从用于错误模式描述的特定时间的开头到无错数字信号第一例的开头为止所测量的错误或者损失数字信号的第一成组传输时间。
本发明的第三方法是用于选择错误隐蔽算法的方法。该方法包括确定用于进行错误隐蔽的现在可利用的余量计算资源的步骤;基于错误隐蔽计算时间和资源消费而将现在的资源与各种错误隐蔽算法进行比较的步骤;确定在前面良好信息包所压缩的数字信号的特性的步骤;确定在预定时间帧上接收的数字信号之错误模式的步骤;基于从上述最大间隔、平均间隔、最后间隔、第一间隔、最大成组传输错误或者损失数字信号、平均成组传输错误或者损失数字信号、最后成组传输时间以及第一成组传输时间所收集的输入,选择错误隐蔽算法的步骤。
本发明第四方法是在接收压缩了数字化音频信号的数据信息包之前,接收机预先确定错误隐蔽算法的方法。该方法包括从接收压缩了数字化信号之数据信息包的有源接收机接收有关信息包损失率之反馈报告的步骤;基于上述模式描述方法而报告错误信息包的发生和基于测量方法而生成信息包损失统计的步骤;将该统计传送到用于接收或者要接收在连续的数据信息包中发送的数字信号流的接收机上的步骤。
本发明的第五方法是对于成组传输损失,选择器能够动态选择不同错误隐蔽方法的方法。该方法包括当平均采样振幅比阈值T小时,将错误隐蔽方法从第一方法切换到第二方法的切换步骤;通过减小连续的分别被错误隐蔽的错误信息包的振幅,对于音频或者声音,慢慢减小被再生信息包的振幅,最终带来静音效果的静音切换步骤;为了在良好信息包和隐蔽信息包之间以及在隐蔽信息包和良好信息包进行更光滑的过渡,在成组传输损失的开头和结尾两者,进行区域具有的多段信息包合并的合并步骤。
优选地,上述切换步骤包括初始化包含阈值列表的表的步骤;将各个阈值映射(map)到一个错误隐蔽算法的步骤;基于错误损失模式和环境条件来计算阈值T的步骤;将上述计算的阈值T与上述被初始化的阈值列表的值进行比较的步骤;选择最接近上述所计算T值的算法的步骤。
优选地,上述静音切换步骤包括设定静音阈值ST的步骤;将信息包内各个采样信号与具有小于1的常数C相乘的步骤;对上述采样信号,计算平均功率P的步骤;平均功率和静音阈值ST相比较的步骤;当平均功率P比上述阈值ST小时,切换到静音模式的步骤。
优选地,上述合并步骤包括确定由n个采样信号构成的模板窗口W1的步骤;将在成组传输区域中错误隐蔽信号的n个采样与上述模板窗口W1中的采样相乘的步骤;将作为该相乘结果所获得的信号标准化的步骤;代替区域中错误隐蔽信息包的段,使用上述被标准化的信号的步骤。
本发明的第六方法是当区域中错误隐蔽信号的n个采样是静音时,在成组传输损失的开始和结尾将区域合并的方法。该方法包括确定由n个采样信号构成的模板窗口W2的步骤;将模板窗口W2中的n个信号标准化到良好信息包区域段中的n个信号的步骤;代替区域中错误隐蔽信息包的段,使用上述被标准化的采用的步骤。
本发明的信息包接收机包括信息包接收装置,其从网络中接收数据信息包,检测该接收的数据信息包的损失,以及输出其检测结果;上述选择装置,其基于从上述信息包接收装置输出的检测结果,对损失数据信息包选择最合适的错误隐蔽方法并进行错误隐蔽处理;变换装置,其将从上述选择装置输出的被错误隐蔽的数字信号变换成模拟信号并输出。
优选地,在上述信息包接收机中,上述信息包接收装置将信息包报头追加到所接收的数据信息包上并输出,该信息包报头由表示错误信息的错误指示符字段和表示所接收的各个信息包的连续序列号的序列号字段构成。
优选地,上述选择装置将作为包括上述信息包报头和由上述信息包报头后续的一个信息包大小数据构成的有效载荷的信息包、上述错误指示符字段指示“没有损失”的信息并且序列号字段是正确顺序的信息包判断为良好信息包。
优选地,上述选择装置将包括上述信息包报头并且在上述信息包报头后没有后续有效载荷数据的信息包、上述错误指示符字段指示“损失”信息并且序列号字段是正确顺序的信息包判断为损失信息包。
本发明的第七方法是用于确定连续成组传输损失数的方法。该方法包括获得各个信息包的报头并检查错误指示符字段的步骤;当遇见成组传输损失的开始时,记录序列号x的步骤;当遇见成组传输损失的结尾时,记录序列号y的步骤;将连续信息包成组传输损失数计算作为(y-x)+1信息包的步骤。
优选地,检查上述成组传输损失开始的方法包括检测现在的信息包是损失信息包的步骤;以及检测前面的信息包是良好信息包的步骤。
优选地,检查上述成组传输损失结尾的方法包括检测现在的信息包是损失信息包的步骤;以及检测后续信息包是良好信息包的步骤。
本发明的第八方法为基于本发明的第二方法,收集网络统计,通过使用在能够生成错误模式格式的音频信息包接收机或者其它有可靠性的网络节点上生成的错误统计,不存储用于分析的长期的音频数据而选择音频错误隐蔽算法。


图1是动态错误隐蔽选择器的框图。
图2(a)是表示有效信息包之字段(报头和数据)的示意图,图2(b)是表示损失信息包之字段(没有数据只有报头部)的示意图。
图3(a),图3(b),图3(c)和图3(d)是表示在图1的装置主要部分上的信号的示意图。
图4(a),图4(b),图4(c)和图4(d)是表示各种算法的说明图。
图5是错误隐蔽选择处理的流程图。
图6是表示获得成组传输损失数之方法的流程图。
图7是用于处理最初n个连续信息包的选择处理流程图。
图8是用于处理后续p个连续信息包的选择处理流程图。
图9是表示包括八个连续漏缺信息包之信息流的一部分的示意图。
图10是表示静音切换处理之流程的示意图。
图11是说明当错误被隐蔽的信息包不是静音替代时的合并处理的流程图。
图12是说明当错误被隐蔽的信息包是静音替代时的合并处理的流程图。
图13是表示在音频信息包缓冲器中被检测的错误模式被变换到错误隐蔽所使用的数学统计的示意图。
图14是安装了本发明错误隐蔽选择器模块的声音信息包接收机的框图。
具体实施例方式
下面,参考附图,说明本发明的实施方式。
图1所示错误隐蔽装置具有漏缺信息包检测器1;信息包音频缓冲器2;损失模式检测器3;多路转换器4。多路转换器4还具有作为数字式音频有效载荷合并器的功能。还具有包含声音检测器5和能量计算器6的信号分析器7。而且具有错误隐蔽选择器8和算法支持器9。这些部件1~9由计算机10控制。
下面说明错误隐蔽装置的操作。在信息包1中载有图3(a)所示的声音信号(有效载荷)。声音信号是诸如电话通信的声音信号。声音信号通过脉冲编码调制(PCM)被信号处理,被分成多个信息包后发送。图3(a)所示例子表示了被分成14个信息包后传送的例子。而且,该例表示出在14个信息包内漏缺了从003号信息包到010号信息包的例子。考察这种部分信息包漏缺的声音信号被输入到漏缺信息包检测器1中的情况。
在漏缺信息包检测器1中,通过检测信息包序列号并判断序列号是否为连号来进行是否具有漏缺信息包的判断。没有漏缺的有效信息包将0标志授予该信息包的开头并输出。当发现信息包的漏缺时,构建补充信息包,在将序列号提供给该补充信息包的同时在其开头建立表示是补充信息包的标志1并输出。
从漏缺信息包检测器1输出的信息包报头如图2(b)所示由“错误指示符”字段和“序列号”字段构成。有效信息包即没有漏缺的信息包由报头和有效载荷构成。该有效载荷如图2(a)所示由PCM信号23构成。图2(b)表示了只由没有有效载荷之报头构成的补充信息包。错误指示符标志在如果没有错误时就表示0,如果是漏缺信息包就表示1。序列号字段包括漏缺信息包和表示连续序列号。
图3(b)表示来自漏缺信息包检测器1的输出信号,即增加了补充信息包的信号。
信息包音频缓冲器2从漏缺信息包检测器1接收图3(b)的信号,在临时保存并延迟该信号的同时基于标志分开信息包。该延迟例如相当于到达接收机之信息包的PCM信号的大小。具有标志0的有效信息包按原样从信息包音频缓冲器2输出,输出到多路转换器4,同时还输出到算法支持器9。
在信息包音频缓冲器2的输出中可以省略标志。
从信息包音频缓冲器2到损失模式检测器3的输出只输出各个信息包的报头部分(至少包含标志和序列号)。因此,损失模式检测器3变成接收标志和与此对应的序列号。在图3(b)信号的情况下,损失模式检测器3在接收标志的模式、即00111111110000之标志模式信号的同时,还接收有关各个标志的序列号(图示情况是从001号到014号)。只有报头被去掉的信息包的PCM数据部分从信息包音频缓冲器2被送到信号分析器7。而且,也可以是附带报头的情况。
信号分析器7接收来自损失模式检测器3的标志模式,在标志模式中的标志从0替换到1时取入标志0所属有效信息包中所含有的PCM数据。在图3(b)例子的情况下,信号PCM2被取入。取入到信号分析器7的PCM信号作为模板信号并分析该信号。模板信号可以是由一个有效信息包的PCM信号构成的短信号,也可以是由多个有效信息包的PCM信号构成的长信号。在声音检测器5中判断被取入的模板信号(信号PCM2)是声音信号还是非声音信号。即进行判断声音信号是电话中的会话信号或者是除此之外的信号。该判断可以用例如非专利文献6中所示的方法进行。因此,从声音检测器5输出了表示是声音信号或者是非声音信号的信号。能量计算器6将PCM信号的能量即表示PCM信号被解调的信号振幅所产生的平均振幅W之值的信号输出作为能量信息。
算法支持器9保存了用于产生补充信息包使用的替换PCM信号的各种算法的程序。图4例子表示出四个算法。
图4(a)所示的算法1是通过使用在漏缺信息包之前的有效信息包的PCM信号而产生该漏缺信息包的PCM信号的算法。即,将从有效信息包的PCM信号解调的声音信号的全部或者其终点的一部分特定作为窗口W0,扩展被特定的窗口使得覆盖窗口W0的一部分和下一个漏缺信息包之声音信号的一部分,被扩展的声音信号被再次调制到PCM信号,由此产生补充信息包。该算法被称为音调(pitch)波形替换。
图4(b)所示的算法2是通过原样拷贝漏缺信息包之前的有效信息包的PCM信号而产生补充信息包的算法。该算法被称为信息包重复。
图4(c)所示的算法3是通过用相当于白噪声信号的PCM信号代替漏缺信息包的PCM信号而产生补充信息包的算法。该算法被称为噪声替换。
图4(d)所示的算法4是通过用相当于静音信号的PCM信号代替漏缺信息包的PCM信号而产生补充信息包的算法。该算法被称为静音替换。
这样在算法支持器9中准备了多个算法,各个算法准备了用于产生漏缺信息包的PCM信号和产生补充信息包的算法。
在这样准备的多个算法中,通过来自错误隐蔽选择器8的选择信号特定应该选择哪一个算法。下面进行错误隐蔽选择器8的说明。
错误隐蔽选择器8在接收来自损失模式检测器3的标志模式信号、来自信号分析器7的声音/非声音信号以及能量信息的同时,还接收来自计算机10的作为表示计算机使用程度之信息的环境信息。如表3所示,用参数t1表示了计算机之CPU的使用率。在CPU使用率为70%以上时将参数设定为0,使用率为50%~70%时将参数设定为0.15,使用率为30%~50%时将参数设定为0.3,使用率为30%以下时将参数设定为0.5。而且如表4所示,当计算机之存储器的使用率为70%以上时将参数t2设定为0,使用率为50%~70%时设定为0.15,使用率为30%~50%时设定为0.3,使用率为30%以下时设定为0.4。
将这样设定的参数t1和t2相加,设定余量值T。
错误隐蔽选择器8根据来自声音检测器5的信号判断作为此时产生的补充信息包的PCM信号应该为声音信号或者应该为非声音信号。就是说,如果在漏缺信息包之前的有效信息包是声音信号则产生作为声音信号的PCM信号,若是非声音信号则产生作为非声音信号的PCM信号。
表1表示出当判断是声音信号时用于判断应该作为音调波形替换或者应该作为信息包重复的选择。就是说,如果余量值T是0.4以上,则输出作为算法1的选择音调波形替换的信号。在余量值T是0~0.4时输出选择信息包重复、即算法2的信号。
表2表示出当判断是非声音信号时用于判断应该作为噪声替换或者应该作为静音替换的选择。当平均功率W是0.3以上时输出用于选择噪声替换、即算法3的选择信号,如果平均功率W是0~0.3则输出用于选择算法4、即静音替换的选择信号。
按上述选择的算法选择信号被输出到算法支持器9以选择算法。基于选择的算法产生补充信息包的PCM信号,并且附加上包含序列号的报头,进而输出到多路转换器4。因此,来自算法支持器9的图3(d)产生的补充信息包或者来自信息包音频缓冲器2的图3(c)的有效信息包被送到多路转换器4。多路转换器4将没有错误的有效信息包和产生的补充信息包以序列号的顺序被并列输出到数字模拟变换器。
当选择的算法数少例如为两个时,只通过来自声音检测器5的信号进行选择,或者只通过来自能量计算器6的信号进行选择,或者只通过余量值T进行选择。
图5是用于说明错误隐蔽方法之选择处理的流程图。首先,从信息包音频缓冲器2的信息包中获得报头(步骤S1)。然后,检查在信息包音频缓冲器2上是否存在新的信息包(步骤S2)。如果在缓冲器2中没有新的信息包,则结束选择处理。如果不是这样,则检查错误指示符字段的标志(步骤S3)。如果错误指示符字段的标志等于1,则将现在的信息包识别作为补充信息包(图2(b))。如果该值为0,则识别作为有效信息包(图2(a))。
(实例1接收补充信息包的情况)实现错误隐蔽。检查关于现在资源利用的第一信息。计算现在CPU使用和存储器使用的程度(步骤S5)。之后,计数连续的补充信息包数(步骤S6)。这是在损失模式检测器3中进行的。获得该补充信息包数的方法是在图6的流程图中说明。首先,检测补充信息包的开始(步骤S21)。这是通过检查信息包的错误指示符字段以及通过检测前面的信息包是有效信息包而现在的信息包是补充信息包实现的。在检测出补充信息包的开始之后,记录该补充信息包的序列号x(步骤S22)。然后,检测补充信息包的结束(步骤S23)。这是通过检查错误指示符字段以及通过检测现在的信息包是补充信息包而下一个信息包是有效信息包实现的。在检测出补充信息包的结束之后,记录该补充信息包的序列号y(步骤S24)。然后,将连续的补充信息包数计算作为(y-x)+1个数(步骤S25)。
再次参考图5。在步骤S6处理连续的补充信息包。连续的补充信息包的每一个被分别进行处理。就是说,所使用的错误隐蔽技术在信息包之间可以不同。在步骤S7中,检查是否处理全部的补充信息包。在步骤S8中,检查是否处理n个全部的信息包。首先,在连续的补充信息包中,处理最初n个补充信息包(步骤S9)。基于连续的补充信息包数计算n。在图7的流程图中说明关于最初n个信息包处理的细节。在n个信息包被处理之后,处理后续剩余的(在这里p个)信息包(步骤S10)。在图8的流程图中说明关于该p个信息包处理的细节。
(实例2接收有效信息包的情况)在接收有效信息包时,图2(a)所示数据段23被缓存并送到多路转换器4(步骤S4)。该有效信息包在下次检测到补充信息包时作为模板信号在信号分析器7中被利用。
最初n个补充信息包的处理在图7中说明。首先,将n个补充信息包之前的有效信息包送到声音检测器5并作为模板信号存储(步骤S31)。通过声音检测器5检测该有效信息包的PCM信号是声音信号还是非声音信号(步骤S32)。如果该有效信息包是声音信号,则通过可以使用CPU和利用存储器的现在环境条件来计算余量值T。该余量值T与用于处理声音信号之规定的错误隐蔽技术的列表(表1)阈值T1进行比较(步骤S35)。判断该计算的余量值T属于表1的哪一个范围并选择错误隐蔽方法(步骤S36),错误隐蔽基于所选择的算法实现。
在步骤S32,如果有效信息包是非声音信号,则计算关于全部信号的平均功率W(步骤S33)。基于该平均功率的值从非声音列表(表2)中选择错误隐蔽方法(步骤S34)。就是说,将平均功率W与阈值T2进行比较。如果该平均功率W小(如果在表2中是0~0.3的值)可考虑忽视时,则使用静音替换。如果平均功率W超过阈值T2(在表2中是0.3),则生成包括类似于白噪声之平均功率的噪声替换,其成为补充信息包的替换。
在补充信息包长时,最初n个信息包替换后被置换的p个信息包(多个)其振幅慢慢减小,最终趋向静音(消音)。
说明通过动态选择器能够选择的错误隐蔽方法有四个的情况。这四个错误隐蔽方法是从声音列表中选择了两个,从非声音列表中选择了两个。
声音列表由以下替换构成。
表1声音信号时的算法选择

非声音列表由以下替换构成。
表2非声音信号时的算法选择

当接收连续的补充信息包时,(在图5步骤S6中检查),例如如图9所示,当接收8个连续的补充信息包时,n被设定为式1[(0.3*漏缺信息包)]=3 (1)最初n个信息包即3个补充信息包用图7所示方法处理。3个补充信息包前面的有效信息包作为模板信号被保存在信号分析器7中。首先,为了检查是声音信号/非声音信号的哪一个,该模板信号被送到声音检测器5(S31)。本例中,模板信号是声音信号,声音检测器5返回声音标志(S32)。其后,检查现在的资源利用。基于两个基准值计算余量值T。这些是CPU使用率和存储器的使用率MEC。如果CPU的利用超过了70%,余量值的值t1是0。如果存储器的使用超过了被分配的全部存储器的70%,则阈值T2是0。余量值计算如下。
表3CPU使用率参数的设定

表4存储器使用率参数的设定

余量值T的计算由下式(2)表示。
式2T=t1+t2 (2)如果现在的CPU利用率是40%,存储器利用率是50%,则余量值T等于0.45。前面的有效信息包由于是声音信号,余量值T与T1进行比较(S35)。如果其是非声音信号,则平均功率W与T2进行比较。此时,代替平均功率W,将余量值T与T2进行比较也是可以的。选择基准是选择T超过T1或者T2任何一个中的值且具有其最近值的错误隐蔽方法。这种情况下,由于余量值T是0.45,选择音调波形替换(S36)。因此,最初三个补充信息包的波形通过使用音调波形替换法被隐蔽。
基于图8所示算法进行后续替换。在步骤S41中所示的X-n的值在本例中是(8-3)=5。就是说,X表示连续的补充信息包的数,n表示位于开头、重复完成同等处理的补充信息包数。表5是表示在前面选择的错误隐蔽方法和在后面应该选择的错误隐蔽方法之间关系的表。前面补充信息包的错误隐蔽方法如果是音调波形替换,则后面补充信息包的错误隐蔽方法是被C倍(C<1)的信息包重复。前面补充信息包的错误隐蔽方法如果是信息包重复,则后面补充信息包的错误隐蔽方法是被C倍(C<1)的信息包重复。前面补充信息包的错误隐蔽方法如果是噪声替换,则后面补充信息包的错误隐蔽方法也是噪声替换。前面补充信息包的错误隐蔽方法如果是静音替换,则后面补充信息包的错误隐蔽方法也是静音替换。
在上述例子中,由于前面的补充信息包是音调波形替换,接着进行信息包重复,再接着还进行信息包重复。其振幅慢慢地减小,信息包重复被连续使用。进行5次错误隐蔽重复(步骤S43)。在每个信息包上都进行信息包的置换,直到剩余5个全部信息包被隐蔽为止(步骤S44)。在第5个信息包被隐蔽之后,信息包的处理结束。
表5下一个信息包替换表

当如上述那样替换连续时,替换功率被慢慢地减小,当平均功率比静音余量值ST小时,全部的后续替换由静音替换置换。
图10是表示该静音切换处理流程的示意图。静音切换处理例如由下述步骤构成设定静音余量值ST的步骤;将信息包内各个采样信号与具有小于1的值之常数C相乘的步骤(S51);对在步骤S51获得的采样信号,计算信息包或者信息包一部分之平均功率P的步骤(S52);将平均功率P和静音余量值ST进行比较的步骤(S53);当平均功率P比上述余量值ST小时切换到静音模式的步骤(S54)。
在有效信息包和补充信息包之间的区域中,为了保证平滑过渡,可以进行合并(merging)。如果区域中的平均功率的差比规定值Y小,合并是完全不需要的。当不是这样时,需要合并。这是在多路转换器4中实现的。
下面,使用图11和图12说明该合并处理。图11是用于说明当被错误隐蔽的信息包不是静音替换时的合并处理的流程图。预先确定的模板窗口由信号的n个采样构成。通过窗口We获取连续的有效信息包的终端。通过窗口Ws获取随此之后连续的补充信息包的先端(步骤S61)。因此,窗口We、Ws特定了有效信息包和补充信息包的区域部分。求得窗口We中的平均功率。根据该平均功率标准化窗口Ws中的功率(步骤S62)。为了使窗口We、Ws中的功率变化进行平滑变化,置换窗口Ws的采样信号(步骤S63)。
图12是用于说明当被错误隐蔽的信息包是静音替换时的合并处理的流程图。模板窗口W2被定义为仅仅针对利用静音替换。模板窗口W2被标准化为良好信息包之区域段的平均功率值(步骤S71)。之后,对于被错误隐蔽的信息包的区域段,直接置换该被标准化的采样(步骤S72)。
能够基于从网络性能统计产生的信息来执行选择处理。该统计通过能够产生这种信息的网络节点以类似于Pattern_Loss结构的形式通过网络发送。或者,基于通过信息包音频缓冲器长期接收的信息包音频损失模式来生成该信息。该选择处理以长期分析为基础,其将信息包音频缓冲器缓冲的音频的时间间隔定义作为渡过的错误损失模式的时间间隔。涉及长期渡过的错误隐蔽,对于在图1信息包音频缓冲器2中接收的音频数据,为了进行错误隐蔽,能够使用在Pattern_Loss结构中的数据要素。
就是说,在上面,说明了短期分析(通过只处理在信息包音频缓冲器2输入的连续信息包来选择隐蔽方法的分析)。下面,说明长期分析(通过利用在规定长的时间(图13所示的缓冲器帧时间)内连续检查在信息包音频缓冲器2输入的信息包来选择隐蔽方法的分析)。在长期分析中,在每经过一次缓冲器帧时间,都更新后面说明的从(1)到(9)的信息的值。
通过模式损失检测器3形成短期分析或者长期分析。
在音频播放环境中,为了用相同方法进行错误隐蔽,这些Pattern_Loss结构形式的统计有可能用错误隐蔽被合并的方法实现。尽管存在接收机开始接收相同音频播放的时间是不同时的情况,但能够使选择实现的算法成为同一算法。当接收机的计算能力没有剩余时,可以关断模式损失检测器3。根据长期分析的错误隐蔽选择依赖于通过信息包音频缓冲器所推测的限定的损失模式(即上述标志模式)和通过图1模式损失检测器3产生的损失模式的统计平均(在后面说明的从(1)到(9)的信息)。可以通过使用长期分析结果和短期分析结果两者来选择算法,也可以通过使用长期分析结果和短期分析结果的任何一个来选择算法。
由模式损失检测器3产生的错误统计是在缓冲器帧时间中测量的在下面的结构中展示的那种格式。在确定暂时损失模式和其时间时所使用的缓冲器帧时间被定义作为单位时间或者作为由多个被数字化的音频数据信息包构成的数字音频信号的块。而且,取得的效果是缓冲器帧时间比信息包音频缓冲器所保存的信息包时间更长。
Pattern_Loss{(1)Dalay;/*秒或者信息包有效载荷大小(字节/位)的单位*/在时间轴上表示一个信息包PCM信号大小的延迟52)(2)Mean Loss Interval;/*两个信息包损失之间的平均时间间隔*/(L_I的平均)(3)Max Loss Interval;/*两个信息包损失之间的最大时间间隔*/(L_I(max)54)(4)First Loss Interval;/*从缓冲器帧的开头到最初信息包损失被测量为止的时间间隔*/(L_I(p)53)(5)Last Loss Interval;/*从没有错误之信息包的最后组的第一个信息包开始到缓冲器帧的最后为止所测量的时间间隔*/(TLLI)(6)Mean Burst Interval;/*两个错误/没有损失信息包之间的平均时间间隔*/(B_L的平均)(7)Max Burst Interval;/*两个错误/没有损失信息包之间的最大时间间隔*/(B_L(max))(8)First Burst Interval;/*从缓冲器帧的开头到有错误信息包组之最后信息包的最后为止所测量的连续错误/有损失信息包的第一组*/(FBL)(9)Last Burst Interval;/*从有错误之信息包的最后组的第一个信息包开始到缓冲器帧的最后为止所测量的时间间隔*/(LBI)}图13说明如上述Pattern_Loss结构中所示的在通过生成统计而确定和描述错误模式时使用的方法。提供了由确定错误模式之任意长度的音频数据信息包构成的缓冲器帧的例子51。该实施例信息包的长度是固定大小,由参数延迟52确定。平均损失检测(Mean Loss Interval)是在缓冲器帧内测量的全部损失间隔的平均值。在本例中,由Mean Loss Interval={L_I(max)+L_I+L_I(p)}/没有错误信息包的总间隔;表示。
平均成组传输间隔(Mean Burst Interval)是在缓冲器帧内测量的全部成组传输间隔的平均值。在本例中,由Mean Burst Interval={B_L(max)+B_L+B_L(n)}/有错误信息包的总间隔;表示。
变量L_I(p)53提供了Pattern_Loss结构的First Loss Interval要素的值。变量L_I(max)54提供了Pattern_Loss结构的Max Loss Interval要素的值。变量L_I55是用于测量缓冲器帧内之损失间隔所使用的数据值之一。Pattern_Loss结构的Last Burst Interval要素等于变量B_L(n)56。变量B_L(n)57是在该缓冲器帧内测量的成组传输错误值之一。变量B_L(max)58是与图13作为例子所示的缓冲器帧的Pattern_Loss结构的MaxBurst Interval要素相等同的。
为了对错误隐蔽算法的选择进行更好的确定,该错误隐蔽算法用于生成被适当错误隐蔽的无错音频流,以下的表6表示出针对通过隐蔽选择器而能够使用在Pattern_Loss结构中所获得的错误损失统计之哪一种的多个例子。错误隐蔽被适用于在图1缓冲器2中存储的音频信息包。缓冲器2在某些情况中只能够存储短期的音频信号。尽管音频信号的特定时间间隔和在这里所示的损失时间间隔没有数值,但代替它可显示使用用于相对比较的高和低。在具体实施中,必需知道音频信号的信息包大小和采样率以及可利用的错误隐蔽算法的种类。
表6

上述Pattern_Loss结构是在记述错误损失信息包时使用的统计的一个例子,不局限于此。缓冲器帧时间和信息包损失之间的间隔等可不用时间表示,也可用位数表示。
图14是安装了本发明错误隐蔽选择器模块的声音信息包接收机的框图。图14中的接收机70由声音信息包接收部71、声音信息包解码部72、错误隐蔽选择器模块部73和声音输出部74构成。声音信息包接收部71从网络中接收声音信息包,并进行所接收声音信息包是否漏缺的检测。当检测出声音信息包的漏缺时,将检测的信息输出到声音信息包解码部72。声音信息包解码部72在从声音信息包接收部71输出的声音信息包是被编码的声音时进行解码,并生成PCM声音。错误隐蔽选择器模块部73产生必要的PCM信息包。错误隐蔽选择器模块部73是相当于图1所示的框图。而且,声音信息包解码部72获取由声音信息包接收部71检测的信息包损失信息,并将该信息输出到错误隐蔽选择器模块部73。错误隐蔽选择器模块部73判断从声音信息包解码器72输入的信息包是良好的信息包还是损失信息包,并进行与该结果对应的处理。错误隐蔽选择器模块部73将由通过声音信息包接收部71追加的信息包报头和信息包报头后续的有效载荷构成的、错误指示符字段表示“没有损失”的信息、并且序列号字段的序列号的顺序为正确的信息包判断为良好信息包。错误隐蔽选择器模块部73将在通过声音信息包接收部71追加的信息包报头中的错误指示符字段表示出“损失”的信息并且序列号字段的序列号的顺序为正确的信息包判断为损失信息包。声音输出部74将通过错误隐蔽选择器模块部73处理和输出的数字化声音变换到模拟声音并输出到扬声器等。声音信息包解码部72在从声音信息包接收部71输出的声音信息包不是被编码的PCM声音时是可以省略的。
本发明可以使用根据实际场合而不同的错误隐蔽方法的组合。最合适的选择部分是可以在运行时间被动态地选择。当资源少时,能够使用复杂性小的错误隐蔽算法,如果检测到足够的资源,能够选择更有效更复杂的算法。选择是根据包括不同特性的预先确定的算法集合进行的。声音段的错误隐蔽能够从方法列表中选择,当为非声音段时,能够从列表中选择已有的一个方法。在多个连续信息包变为漏缺的成组传输损失时,该选择器可以将隐蔽错误的各种方法用来处理该成组传输损失。本发明可以将音频缓冲器容量小的等待时间(潜伏期)短的音频接收机通过使用错误统计来实现复杂的错误隐蔽,该错误统计用于测量信息包被分割的音频流的错误模式。基于收集的错误统计,错误隐蔽选择器能够更好地确定对特定音频损失帧所使用的错误隐蔽的种类和获得错误隐蔽更好的音频输出。
权利要求
1.一种错误隐蔽装置,其检测由多个信息包构成的声音信号的、信息包的漏缺,并为隐蔽漏缺的信息包而生成补充信息包,其特征在于,具有漏缺信息包检测装置(1),用于在所接收的有效信息包列中检测漏缺的信息包;提取装置(2,3),用于提取在漏缺信息包之前存在的有效信息包,并具有缓冲器;分析装置(7),用于分析在所提取的有效信息包中保存的声音信号;算法保存装置(9),用于保存多个算法,通过使用多个算法内的任何一个来生成补充信息包;选择装置(8),用于通过使用所述分析装置的分析结果,确定选择多个算法的哪一个;和多路转换器(4),用于在有效信息包列中,将补充信息包插入在漏缺信息包的位置上。
2.根据权利要求1所述的错误隐蔽装置,其特征在于,还具有进行操作控制的CPU(10)、与CPU配合的存储器(10)、用于测量表示CPU和存储器余量程度的余量值的余量值测量装置(10);所述选择装置还通过使用余量值来确定选择多个算法的哪一个。
3.根据权利要求1所述的错误隐蔽装置,其特征在于,所述分析装置(7)具有声音检测器(5),其用于判断声音被包含在声音信号中还是处于静音状态。
4.根据权利要求1所述的错误隐蔽装置,其特征在于,所述分析装置(7)具有能量计算器(6),其用于计算声音信号的能量。
5.根据权利要求1所述的错误隐蔽装置,其特征在于,所述漏缺信息包检测装置(1)对于应该接收的全部信息包赋予了用于识别是有效信息包或者是漏缺信息包的标志。
6.根据权利要求5所述的错误隐蔽装置,其特征在于,所述提取装置提取标志并生成将标志排列后的标志模式。
7.根据权利要求6所述的错误隐蔽装置,其特征在于,所述选择装置分析标志模式,并基于标志模式的分析结果确定选择多个算法的哪一个。
8.根据权利要求1所述的错误隐蔽装置,其特征在于,所述多个算法具有第一算法,通过修正漏缺信息包之前的有效信息包的声音信号,产生该漏缺信息包的声音信号;第二算法,通过按原样拷贝漏缺信息包之前的有效信息包的声音信号,产生该漏缺信息包的声音信号;第三算法,通过使用白噪声而产生漏缺信息包的声音信号;和第四算法,通过使用静音信号而产生漏缺信息包的声音信号。
9.一种错误隐蔽方法,其检测由多个信息包构成的声音信号的、信息包的漏缺,并为隐蔽漏缺的信息包而生成补充信息包,其特征在于,具有在所接收的有效信息包列中用于检测漏缺信息包的步骤;用于提取在漏缺信息包之前存在的有效信息包的步骤;用于分析在所提取有效信息包中保存的声音信号的步骤;用于保存多个算法并通过使用多个算法内的任何一个算法来生成补充信息包的步骤;用于通过使用分析结果来确定选择多个算法的哪一个的步骤;和用于在有效信息包列中,将补充信息包插入在漏缺信息包的位置上的步骤。
10.根据权利要求9所述的错误隐蔽方法,其特征在于,还具有用于测量余量值的步骤,该余量值表示在进行操作控制的CPU(10)和与CPU配合的存储器(10)的余量程度;还通过使用所述余量值来确定选择多个算法的哪一个。
11.根据权利要求9所述的错误隐蔽方法,其特征在于,所述分析步骤具有用于判断声音被包含在声音信号中还是处于静音状态的步骤。
12.根据权利要求9所述的错误隐蔽方法,其特征在于,所述分析步骤具有用于计算声音信号之能量的步骤。
13.根据权利要求9所述的错误隐蔽方法,其特征在于,具有对于应该接收的全部信息包赋予用于识别是有效信息包或者是漏缺信息包之标志的步骤。
14.根据权利要求13所述的错误隐蔽方法,其特征在于,具有提取标志并生成将标志排列后的标志模式的步骤。
15.根据权利要求14所述的错误隐蔽方法,其特征在于,具有分析标志模式并基于标志模式的分析结果确定选择多个算法的哪一个的步骤。
16.根据权利要求9所述的错误隐蔽方法,其特征在于,所述多个算法具有第一算法,通过修正漏缺信息包之前的有效信息包的声音信号,产生该漏缺信息包的声音信号;第二算法,通过按原样拷贝漏缺信息包之前的有效信息包的声音信号,产生该漏缺信息包的声音信号;第三算法,通过使用白噪声而产生漏缺信息包的声音信号;和第四算法,通过使用静音信号而产生漏缺信息包的声音信号。
全文摘要
在接收侧能够在运行时间动态地选择最合适的错误隐蔽方法。提供了能够动态选择适用各种错误隐蔽技术的方法和装置。准备了多个用于进行错误隐蔽的算法,通过使用任何一个算法而进行错误隐蔽。由选择信号确定选择哪一个算法。选择信号根据表示计算机处理能力的各种参数、声音信号的特征而制作。
文档编号G10L19/005GK1589550SQ0282277
公开日2005年3月2日 申请日期2002年11月15日 优先权日2001年11月15日
发明者谢佩恩, 陈必耀, 佐藤正树 申请人:松下电器产业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1