具有附加信息容量的多媒体编码和解码的制作方法

文档序号:7940431阅读:106来源:国知局

专利名称::具有附加信息容量的多媒体编码和解码的制作方法具有附加信息容量的多媒体编码和解码相关申请的交叉引用本申请要求根据2007年9月28日提交的名为“MULTIMEDIACODINGANDDECODINGWITHADDITIONALINFORMATIONCAPABILITY”的美国临时申请60/976,185而享有优先权,其中该申请的公开内容通过引用合并在此。
背景技术
:多媒体信号编码和解码(例如视频和/或声音的编码和解码)可以依靠极端压缩来减少经由信道发送的信息量。编码器通常会执行全面优化例程,以便选择对信号执行最有效编码的压缩参数。
发明内容本申请描述的是用于将辅助信息连同视频信号一起传送的技术,其中该辅助信息可以通过所使用的具体编码处理的限制而被编码。这里的实施例可以具有预测类型的限制。这里的实施例还可以包括起始码和结束码。一些实施例可以包括将多种辅助信息嵌入独立于传输层的视频比特流。辅助信息可以是一系列由编码器编码并且随后被解码的比特。对旧有系统来说,编码处理可以是完全透明的。这里的一些实施例可以显示编码决定(例如次最优编码决定)如何通过后续的编码决定而被至少部分地补偿。无论旧有系统是否支持辅助信息,这里的一些实施例都可以与旧有系统结合使用。现在将参考附图来详细描述这些和其他方面,在附图中图1描述的是AVC视频编码标准中的不同的宏块和子宏块分区的示例;图2描述的是AVC标准中的不同的4X4帧内预测模式的示例;图3描述的是AVC标准中的不同的16X16帧内预测模式的示例;图4和图5分别示出的是AVC内部的帧内预测组块和4X4组块扫描的示例;图6描述的是示出了编码和解码序列示例的框图;图7示出的是起始码/结束码和信令的示例;图8描述的是例示的视频编码器的框图;图9描述的是例示的视频解码器的框图;图10示出的是消息定位器实施例的示例;以及图11示出的是视频编码内部的标记处理的示例。具体实施例方式在这里将会描述例示的实施例。出于说明目的,在以下描述中将会阐述众多具体细节,以便全面理解本发明。然而非常明显,本发明的实施例是可以在没有这些具体细节的情况下实现的。在其他实例中,众所周知的结构和设备会以框图的形式显示,以免不必要地与本发明相混淆。综述在一些方面中,一些实施例表征了一种用于编码离散时间媒体信号的方法。该方法包括接收媒体信号,获取将被编码在媒体信号内的补充信息,使用该补充信息从多种不同编码类型中选择一种编码类型,以及使用该编码类型来编码媒体信号。该编码类型代表所述补充信息。这些和其他实施例可以可选地包含一个或多个下列特征。媒体信号可以是视频信号。编码类型可以包括用于视频信号的多种预测模式中的至少一种。该方法可以包括将预测模式集合成信令群组,并且这些信令群组将会被选择以减小对编码性能的影响。该方法可以包括定义起始码和/或结束码和/或长度码中的至少一个,并且在与补充信息相邻的视频信号位置内使用编码类型代表起始码和/或结束码和/或长度码中的至少一个。所述起始码和/或结束码可以代表不太可能在真实视频中出现的编码决定序列。补充信息可能与视频信号内容相关,并且可能在时间上与视频信号的不同部分同步。该补充信息也可能与视频信号不相关。该方法可以包括确定性能大致相似的编码类型,并且集合编码方案以形成群组,这些群组可以减小使用步骤对编码性能的影响。该方法可以包括检测基于辅助信息而被选择的第一编码类型。所述方法可以包括基于所述检测来覆盖(override)该选项。所述第一编码类型有可能导致视频降级。覆盖该编码类型的步骤可以包括延迟对辅助信息的编码直至接收到视频的不同区域。该检测可以包括以检测视频信号内变化的步骤为基础。所述覆盖步骤可以包括在用于表示补充信息的帧间编码与帧内编码之间变化。该方法可以包括在视频信号内使用外部信令来指示补充信息的开端和/或末端中的至少一个。用于对补充信息进行编码的不同编码类型可以包括帧内-帧间预测(intra-versusinter-prediction)、预测定向(predictiondirection)、子分区、参考索引、运动和照明变化参数、变换和/或量化参数。在一些方面,一些实施例表征了一种方法,包括对编码媒体信号执行解码,并且确定用于编码媒体信号的编码类型是多种不同编码类型中的一种。该方法包括使用该编码类型来访问媒体编码类型与信息比特之间的关系,以及从解码处理中获取作为补充信息的信息比特。这些和其他实施例可以可选地包括一个或多个下列特征。媒体信号可以是视频信号,并且媒体编码类型可以包括视频编码模式。该编码类型可以包括用于视频信号的多种预测模式中的至少一种。该方法可以包括从信息比特中确定起始码和/或结束码中的至少一个,以及检测与起始码和/或结束码相邻的补充信息。该方法可以包括检测在时间上与视频信号的不同部分同步的补充信息。该方法还可以包括检测出补充信息与视频信号不相关。所述编码类型可以包括用于表示补充信息的帧间编码和帧内编码处理。该方法可以包括在视频信号内部检测用于表示补充信息的开端和/或末端中的至少一个的外部信令。用于对补充信息进行编码的不同编码类型可以包括帧内-帧间预测、预测定向、子分区、参考索引、运动和照明变化参数、变换和/或量化参数。在一些方面,一些实施例包含了一种设备,该设备包括采用多种不同预测模式中的一种预测模式来对媒体信号进行编码的媒体编码器,用于将被编码成媒体信号的一部分的补充信息的输入,以及决定部分,其包括通过使用补充信息来根据所述补充信息选择多种预测模式中的一种预测模式,以及表示该补充信息。这些和其他实施例可以可选地包含一个或多个下列特征。媒体信号可以包括视频信号和/或音频信号。该媒体编码器可以是语音编码器。决定部分可以包括将预测模式与补充信息的比特相关的预测表,其中所述表可以将预测模式集中成信令群组,选择该信令群组以减小对编码性能的影响。由于补充信息对编码性能的影响,决定部分可以故意不用信号通告补充信息。该补充信息可以预先用纠错方案编码。该方法可以包括保存起始码和/或结束码中的至少一个,以及在与补充信息相邻的视频信号位置内使用编码器类型来表示起始码和/或结束码中的至少一个。这些和其他实施例可以可选地包括一个或多个下列特征。起始码和/或结束码可以表示不太可能在实际视频中出现的编码决定序列。补充信息可能与视频信号的内容相关,并且在时间上有可能与视频信号的不同部分同步。该补充信息也可能与视频信号不相关。决定部分可以包括用于表示具有大致相似性能的编码方案以及减小了所述使用步骤对编码性能的影响的编码方案群组的信息。视频编码器可以检测基于辅助信息选择的第一编码类型,其中所述第一编码类型将会导致视频降级。该视频编码器可以根据所述检测来覆盖使用第一编码类型的步骤。视频编码器的覆盖操作步骤可以包括延迟对辅助信息的编码直至所述视频的不同区域。视频编码器的覆盖步骤可以包括在用于表示补充信息的帧间编码与帧内编码之间变化。这些和其他实施例可以可选地包括一个或多个下列特征。该设备可以包括与外部信令的连接,以便在视频信号内指示补充信息的开端和/或末端中的至少一项。用于编码补充信息的不同编码类型可以包括帧内-帧间预测、预测定向、子分区、参考索引、运动和照明变化参数、变换和/或量化参数。在一些方面,一些实施例表征了一种设备,该设备包括用于对经编码的媒体信号进行解码并且确定用于解码的编码类型的解码器。该解码器确定用于解码所述媒体信号的多种不同编码类型中的一种编码类型。所述设备包括逻辑部分,逻辑部分用于接收编码类型,并且使用该编码类型访问视频编码类型与信息比特之间的关系并输出来自解码处理的信息比特作为补充信息。这些和其他实施例可以可选地包括一个或多个下列特征。该媒体信号可以是视频信号和/或音频信号。媒体解码器可以是语音解码器。逻辑部分可以存储用于媒体信号的多种预测模式以及与预测模式相关联的比特。该逻辑部分可以从信息比特中检测起始码和/或结束码中的至少一个,并且可以检测与起始码和/或结束码相邻的补充信息。该逻辑部分可以检测并纠正嵌入在媒体信号中的比特信息的差错。该逻辑部分可以检测在时间上与媒体信号的不同部分同步的补充信息。该逻辑部分还可以检测出补充信息与媒体信号不相关。该逻辑部分可以检测在媒体信号内表示补充信息的开端和/或末端中的至少一个的外部信令。用于编码补充信息的不同编码类型可以包括帧内-帧间预测、预测定向、子分区、参考索引、运动和照明变化参数、变换和/或量化参数。这里描述的任何方法和技术还可以在系统、装置或设备、机器、计算机程序产品中实施,或者在软件、硬件或软硬件组合中实施。例如,计算机程序产品可以被有形地编码在计算机可读介质上(例如数据存储单元),并且可以包括用于促使数据处理设备(例如数据处理器)执行用于这里描述的任何方法的一个或多个操作。带有附加信息容量的多媒体编码和解码发明人认识到,有些时候较为理想的是将辅助信息连同所传送媒体信息一起传送,其中该媒体可以包括视频、音频、静止图像或其他多媒体信息。这些实施例可以仅仅涉及视频。但是应该理解,同样旨在涵盖包括音频在内的其他形式。这个辅助信息可以代表信息,并且可以用于这里描述的某些功能。第一类别的辅助信息可以包括与诸如视频之类的媒体自身相关联的信息。与媒体自身相关联的辅助信息通常被称为元数据。这种辅助信息可以提供关于所传送的内容的附加信息。例如,元数据在视频传输系统中的不同用途可以包括关于版权通知的信息,可以用于帮助或增强解码处理的信息,或是关于视频的补充信息。这些信息可用于各种应用。当辅助信息是元数据时,很重要的一点是要将元数据与媒体同步,例如与视频馈送同步。此外,即便在执行传输层变化的时候也要保持元数据同步,这一点同样是非常重要的。举个例子,如果元数据信号内部的比特与视频信号内部的画面的组块或宏块相关联,那么将会是非常理想的。作为替换,辅助信息也可以是非元数据信息,该信息是与媒体部分或者完全不相关的信息。举例来说,它可以是保密通信,或是用于支持旧有系统的信息。在一个实施例中,除非解码器专门配备了特殊的解码部分,否则补充通信信道对解码器而言是透明的。辅助信息的应用可以包括3D图像重建,高动态范围图像生成,降噪,时间内插,超分辨率图像生成以及差错隐蔽。在技术中可以使用上述应用来向最终用户提供保密消息或其他信息。该系统可以用于数字签名,例如,该信息可以用于用信号通告加密或非加密消息,由此可以用于专有的后处理系统以增强解码视频的质量。其他应用包括信息隐藏(steganography),密码加密,后处理或速率整形信令,转码提示,差错隐藏,诸如当前场景中的演员或位置之类的视频内容信息,广告信息,频道指南信息,不同类型的视频加扰,其中所述视频加扰包括在没有解扰码的情况下完全禁止观看的第一类型,或是在没有扰码时允许观看较低质量图像以及在提供扰码时改善图像的第二类型。该辅助信息可以是BIOS或其他软件更新信息等等。技巧模式功能同样是得到支持的,在该模式中可以提供关于当前与即将到来的画面之间的关系的提示。然后,该信息可以供解码器使用,以便提供快进或回退功能。该系统还可以用于比特速率扩缩目的。这里公开的多个实施例中的任一实施例均可用于上述应用的任何组合。一个实施例描述的是与编码系统结合工作的系统的运用,其中举例来说,该编码系统可以是在第一实施例中使用的MPEG-4AVC标准。这些编码系统代表了使用多种不同编码模式的组块划分。具体的模式通常是由编码器以一种尽可能有效压缩组块中信息的方式选择的。不同的模式使用了不同的预测技术来预测视频信号内的纹理、运动和照明变化。例如,该预测可以包括帧内预测和帧间预测。子分区方法同样是可以使用的。例如,组块的帧内编码处理可以是针对4X4、8X8、或16X16的预测组块来预测的。对帧间预测来说,一种模式可以用信号通告在宏块或组块之类的当前位置内的子分区方法。每一个子分区可以进一步与一个参考画面索引相关联,以便实施帧间预测。除了运动矢量之外,其他信息同样是可以使用的,这其中包括变换大小,可以是平移、仿射或其他类型的运动矢量自身,以及诸如加权、偏移参数、不同的变换和量化参数之类的照明参数。通常,这其中每一种不同的信号编码方法都被称为预测信息,其示例包括帧内-帧间预测、预测定向、子分区、参考索引、运动和照明变化参数、变换和/或量化参数。一个实施例使用了特定类型的预测信息,以便根据代表了预测信息与某些数据比特之间的关系的信息来编码补充信息。该信息可以是查找表,或是其他那些将模式与信息相关的类似表格。图1-5示出的是编解码器(诸如基于MPEG-4AVC/H.264标准的编解码器)如何可以使用多种不同的模式来表示宏块。作为例示,考虑图1所示的宏块。如果将其设想成是16X16的宏块,那么可以采用多种不同的方式来预测整个宏块。100显示的是被预测成具有单个运动矢量的单一16X16分区的宏块。102显示的是16X8分区,而104显示的则是8X16分区。106显示的是正在使用的四个独立的8X8分区。以类似的方式,每一个分区都可以具有不同的运动矢量。对双向预测而言,可以为每一个组块传送两组运动矢量。对于运动补偿预测而言,参考帧有可能高达16个,并且在这里可以为这些帧向下指定8X8的组块大小。所执行的运动补偿还可以向下精确到四分之一像素的精度。加权预测方法可以用于提高性能,在存在照明变化的情况下尤其如此。对帧内编码而言,可以使用将会提高编码性能的帧内预测。例如,图2显示了多个不同的4X4组块大小以及如何可以在这些组块大小中使用帧内编码来产生一种模式,其中该模式在200中是垂直的,在202中是水平的,在204中是DC,在206中是朝着左下方的对角线,在208中是朝着右下方的对角线,在210中是垂直向右,在212中是水平向下,在214中是垂直向左以及在216中是水平向上。这些预测模式为每一个4X4组块都提供了九种预测模式。预测还可以结合其他的组块大小来执行。例如,图3示出了AVC如何可以考虑将16X16的帧内预测模式用于预测。400示出的是垂直预测模式,402示出的是水平预测模式,404示出的是DC预测模式,以及406示出的是平面预测模式。所述预测还可以在使用8X8模式的AVC内部执行,而当前或未来的其他编解码器则可以考虑其他预测组块大小或模式。图4和图5分别示出的是4X4组块大小的帧内预测组块及其在AVC内部的相应扫描顺序。这些图示出了一些可以用于编码的不同预测处理。编码器通常会选择提供优选操作模式的编码模式。在大多数情况中,该选择是以编码预测为基础的,其中该预测在预定质量量度、比特数量和/或复杂度方面提供了最佳质量。发明人认识到,该选择处理可以用于其自身对信息进行编码,以使所述特定模式编码该信息。根据一个实施例,用于编码的特定模式是以一种确定的方式选择的。所述特定选择将被执行,以便代表补充信息。图6示出的是使用这种确定性编码器600来编码视频流内的附加信息的实施例。该确定性编码器600是在图6中显示的,它接收将要被编码的视频605,并且产生经编码的视频610。如上所述,这种编码器既可以使用MPEG-4AVC标准,也可以使用允许采用多种不同编码技术之一编码的其他任何编码方案。但是,图6的确定性编码器使用了模式表620来确定使用哪一种预测或编码方案。该补充信息625被输入到编码器。模式表620规定了不同预测/编码方案之间的关系,以及将要由这些编码方案代表的补充信息的数字比特。在操作中,编码器600根据补充信息来执行操作,以便从模式表620中选择代表该补充信息的模式。已经根据补充信息625对经编码的视频610进行了编码。但是,由于该视频是根据该标准编码的,并且在其内并未添加特殊部分,因此,诸如650之类的特殊解码器和诸如690之类的旧有解码器都可以解码该视频610。旧有解码器690解码该视频并产生输出视频699。补充信息将会丢失,但是解码处理不会受到影响。从专门被配置成解码模式信息的解码器650中可以检索到辅助信息。该解码器650包括模式表621,其中所述模式表与编码器600使用的模式表可以是相同的。该模式表621受解码器做出的使用哪一种编码模式的决定所驱动,从而有效解码那些被编码在所用编码方案选项中的补充信息。解码器内的逻辑模块651确定视频610是用该信息专门编码的,它从视频和模式表中检索补充信息652,并且将其输出。输出的补充信息可以与视频区域在时间上同步,其中举例来说,该视频区域可以是包含该补充信息的帧。模式表可以通过建立信息比特或字节与特定编码组块类型之间的关系来形成。例如,表1示出了帧内宏块类型及其与补充数据符号的指派关系。表1-帧内宏块类型及其与元数据符号的指派关系<table>tableseeoriginaldocumentpage11</column></row><table><table>tableseeoriginaldocumentpage12</column></row><table><table>tableseeoriginaldocumentpage13</column></row><table>特。不同的宏块类型代表了不同的辅助数据信号。对使用AVC的实施例来说,即便在没有考虑色度预测的情况下,不同的帧内4X4预测模式的不同可能组合也会多达169种。附加组合可以使用8X8或16X16的帧内预测以及用于色度预测的模式导出。在本实施例中,预测是由补充信息而不是最有效的编码方案规定的。而其他的标准或未来的标准也可以使用更多或更少的模式。但是,如果强加某种特定的视频预测,那么也有可能产生次最优的编码系统。在一个实施例中,由于不恰当的预测造成的任何伪影都可以通过后续的残余编码来补偿。这种处理可以减轻质量影响。根据一些实施例,预测信号是以一种尝试将性能损害减至最小的方式分组的。例如,一个实施例可以根据模式在预测方面的相似性来分离各个模式。在诸如AVC之类的视频压缩中,任何一次的编码决定都有可能影响未来的决定和性能。特别地,使用模式AO来编码图像组块有可能导致值为costO的速率失真成本。然而这个第一编码决定还有可能影响到相邻组块的压缩性能。特别地,如果相邻组块是用模式BO编码的,那么它有可能导致costl。因此,使用模式AO和BO的这两个组块的总成本是costO+cost1ο一种替换的决定可以在将模式Al用于第一组块以及将模式Bl用于第二组块的情况下编码这些组块。然后,Al、Bl有可能导致产生用于第一组块的cost2以及用于第二组块的cost3。总的成本是cost2+cost3。虽然costO有可能小于cost2,但是cost2+cost3也有可能与costO+costl相类似(两个组块的联合失真)。当出现这种情况时,在模式BO之后使用模式Al据说与在模式Bl之后使用模式Al是等价的。本实施例将不同的二进制签名指派给每一种模式,在本范例中则是指派给模式配对。举例来说,这样做将会允许将“0”指派给Α0Β0,以及将“1”指派给A1B1。由于它们具有等价的性能,因此,信息可以在没有编码方面的相应成本的情况下通过选择而被用信号通告。这种分离处理可以确保存在相同性能方面的组块对,并且还可以确保发现用于压缩的优良模式。这种技术可以推广到更多的组块、模式和用信号通告的比特。例如,图4显示了16个不同的4X4组块,并且这些组块可以产生若干种模式组合。这其中的某些组合可以导致产生等价的性能,其中如果经过测量,则会允许确定如何将元数据二进制签名指定给模式组合。据此,表1显示了用A和B标记的两个不同的辅助信息符号。表1显示了用于组块a00的模式0与用于组块a01的模式1的组合如何平均提供与分别用于组块a00和a01的模式2和模式0相似的性能。在没有开销信令信息的情况下,解码器使用了相同的确定规则来检测和解码辅助信息。在实施例中,起始和结束码可以用区别辅助信息的区段。其他开销信令信息也可以用于帮助解码处理或者为其提供提示。一个实施例使用这样一种技术,其中该技术采取了最小化效率影响的方式来分类那些可以集中在一起用于信令目的的预测模式。在本实施例中使用了一组预测采样Pi来产生所有或大多数预测组块,这其中用到了所有或某些可用的帧内预测模式。对每一种预测模式j来说,Pi将会导致产生预测组块Bijtl对每一来说,与所有其他预测模式相对的绝对距离被确定成是Duk,模式j与k之间的距离是距离(Bij-Bik^与模式k相对的模式j的累积平均距离是如下计算的CDjk=^distanceCBi,-Β()(工)。该距离是使用图形理论并且通过将累积距离选定成是两种预测模式之间的成本来评估的。然后,通过将这些预测模式视为最短路径问题(例如,旅行推销员问题)来对其进行排序。根据所述解,所有或某些预测模式可以分段,以便实现最佳的编码性能。更具体地说,该图表中的每个节点都是根据最短路径解扫描的,并且每个节点都会根据该次序而被指派给一个不同的群集/符号。如果有N个符号和M个有序节点,并且M>N,则将节点M指派给符号S(M%N),其中%是模运算符。通过首先将问题拆分成多个子问题,也可以考虑次最优但却更为简单的解决方案,其中每一个子问题只考虑帧内预测模式的一个子集以便使用相似的技术来进行优化。这些子集可以使用预先已经定义的规则来确定,例如已经知道相反预测方向的两个模式非常不同并且由此可以将其一起考虑的事实。另一个实施例信令为编码其他大小的当前宏块而进行的变换,例如所述大小可以是得到诸如VC-l、AVS、VP-6或VP-7之类的其他编解码器支持的4X4、4X8、8X4或其他任何宏块大小。另一个实施例可以为诸如P和B时间片(slice)之类的帧间时间片执行该处理。即使所有可能的帧内编码模式都可以用于信令信息,但与帧内/运动补偿编码模式相比,它们也还是具有相对较低的编码效率。相应地,使用帧内编码模式有可能导致编码效率受到影响。而帧间模式则可以用于时间片类型内部的信令。图1示出的是AVC标准如何支持四种不同的分区类型,从而使用分别被显示为100、102、104和106的帧间预测来编码宏块,以便实施运动补偿,其中所述被显示为100、102、104和106的帧间预测分别支持16X16、16X8、8X16和8X8分区。每一个8X8分区可以进一步分成4个较小的8X8子分区,例如在图1中被显示成108的8X8分区,在图1中被显示为110的8X4分区,在图1中被显示成112的4X8分区,以及在图1中被显示成114的4X4分区。即使忽略了用于检测可用宏块的等级和配置文件的限制,这样做也仍旧允许44=256种可能的组合(对于8X8的子分区而言)或是每个宏块具有八个比特。每一个8X8分区还可以考虑多达16种的不同参考索引。这些组合乃至信令所代表的签名的数量将会变得很多。举个例子,如果使用16个索引,则允许多达412=16777216种可能的组合或是每个宏块具有24比特。这些模式还可以被聚集在一起,以便减小编码开销以及性能影响。如果将帧间模式用于比特信令,那么有可能对视觉质量具有相对较小的影响。另一个实施例可以仅仅将有限数量的模式用于信令目的,以便在容量与压缩效率之间提供折衷。根据该实施例,只有帧间宏块分区才被用于信令,这样做忽略了8X8子宏块分区中的参考索引。但是这样做仍旧允许具有每一个宏块两个比特的信令。编码器通过使用与该组合相关联的模式同时禁止其他模式来用信号通告某种比特组合。然后,运动估计和参考索引选择可以采用与正常编码器相同的方式来执行。对于包含了396个宏块的CIF分辨率(352X288)来说,这意味着每个帧有能力传送396X2=792个比特或是99字节的信息。表2示出的是用于P时间片的帧间宏块类型以及与符号的指派关系。表2-用于时间片的帧内MB类型以及与补充信息符号的可能指派关系<table>tableseeoriginaldocumentpage16</column></row><table>该方法可以扩展到B时间片。表3示出了如何将B时间片中下至8X8宏块分区的每一个帧间模式指定给四比特消息。以与P时间片相似的方式,如果给出了某个四比特消息,那么编码器将会选择要通告的恰当模式。而选择处理则会对辅助信息进行编码。表3-用于B时间片的帧间MB类型以及针对元数据符号的可能指派考虑到模式的增多,可以通过扩展信令来覆盖更多比特。<table>tableseeoriginaldocumentpage17</column></row><table>从元数据信令可以排除一些模式,以便提供性能或是减轻质量降级。假设采用了这样一种情况,与当前的辅助信息符号SYM^规定的模式相比,宏块j可以通过使用被排除的模式之一而以相对较好的质量和性能来编码宏块j,然后可以选择被排除的模式以进行编码。符号SYM^则改为用于编码宏块j+Ι或是第一后续宏块,其中与符号j指示的模式相比,被排除的模式并没有在群组编码性能方面为第一后续宏块提供显著改进。举个例子,如果新区域未被覆盖或者在视频场景内部出现了新的对象,那么可以在不影响质量并且没有损失辅助信息信号的任何比特的情况下安全地使用帧内编码。单个帧的嵌入容量有可能会减小,但是对于压缩效率以及后续质量的相应影响有可能会降低。与选择关联于辅助信息符号的模式相比较,在出于压缩效率目的而对排除的模式进行选择之间,还可以在编码器中调整容限。该处理可以在嵌入容量与编码性能之间提供折衷。过多的辅助信息有可能会影响压缩效率。某些场景中有可能需要仅仅将辅助信息插入视频序列内部的某些帧或画面。该辅助信息将会附加在一些画面(帧)上,或者仅仅处于比特流内部的某些画面中。其中举例来说,这种处理可以采用周期性或伪随机方式来完成。例如,这种处理可以用来提供启用诸如快进和回退或随机访问之类的视频技巧模式的辅助信息。虽然可以在已知/预定位置插入消息,但是出于各种原因,消息也可以在任意位置插入。因此,在此类情况中,非常重要的一点是能够检测存在性,并且由此能够充分解码该消息。根据一个实施例,解码器650应该能够检测消息,并且应该能够确保其正在检测故意编码的消息,从而避免检测当时不存在的消息。同样重要的是避免错误否定,例如即便在消息存在的情况下也没有检测到消息。在一个实施例中,在用信号通告辅助信息之前和之后会在视频流内部嵌入起始码和结束码。该起始码和结束码可以通过使用与用于实际辅助信息的技术相同的技术来运用嵌入到视频流内部的预定比特序列。例如,该处理可以通过将序列的比特映射到宏块和/或块编码模式来完成。这些码是作为在真实视频中极少或者从不出现的编码决定序列选择的,由此可以避免错误肯定。举个例子,通常不太可能遭遇到分别将三个相邻宏块先编码到16X8分区、再编码到8X16分区、以及随后编码到16X8分区的情形。由于这些模式与水平边缘中的对象边缘具有很强的关系,因此,这种组合是不太可能出现的。出现这种情况的唯一时刻是对象具有处于垂直方向的左和右宏块内部的水平边缘的时刻。另一个实施例可以保留那些只能用于该目的而不能用于比特流内部的其他任何目的的起始码和结束码。该实施例可以改进检测。一种替换的起始码可以使用四个宏块以及序列0110011来通告,其中该序列可以依次使用模式16X16、8X8、16X16以及8X8来表示。相应地,增加起始码序列的长度可以减小错误肯定的概率。但是,这么做的代价是减小了视频流的嵌入容量。因此,应该结合预定应用来仔细检查起始码长度与错误肯定之间的折衷。例如,用于低分辨率视频的应用可以使用较短的起始码,而较高清晰度的材料则有可能需要较长的起始码以便提高鲁棒性。辅助信息可以紧跟在起始码之后。在一个实施例中,消息数据的大小可以是固定数字M。动态长度信息同样可以在起始码之后立即在辅助信息的比特或字节中通告。图7显示的是依照表2的信令方法来放置补充信息的实施例。诸如图7的700的每一个框表示一个宏块、帧或画面。跟随在起始码705之后的是长度码710,该长度码由来自四个宏块的八个比特组成,以便指示辅助信息的长度。跟随在该长度码之后的是以715为开始的消息。720标记通告消息结束的结束码。如果在预期位置没有遭遇到结束码签名,则意味着信息不代表有效消息或者遭遇到了某些其他错误。正如本文所说明的那样,检查处理是作为图11的一部分显示的。在一个实施例中,起始码和结束码消息可以跨越序列内部的多个相邻画面。另一个实施例使用了外部信令方法来用信号通告消息的存在和位置,从而取代起始和停止码。例如,一个实施例允许使用现有的补充增强(SEI)消息来执行该处理。错误肯定可以通过在相同画面内部或是序列内部的多个画面中重复该消息来降低。例如,假设未被重复的消息是噪声或差错。如果可能的起始码/消息/结束码由此在后续画面中不具有起始码/消息/结束码的确切时间序列,则可以将其丢弃。起始码和结束码在画面之间没有必要是不变的。使用奇偶性方案的数据验证和差错校正技术也可用于编码该消息,以便减小错误肯定并且提高消息的鲁棒性。此外,某些宏块对于辅助信息信号而言未必是良好的候选者,并且较为优选的有可能是用已排除的模式来编码。在用信号通告实际消息的比特数量时,并不需要考虑已排除模式的宏块。在一个实施例中,较为优选的是为了压缩效率允许在消息内部引入差错。如上所述,为宏块辅助编码选择的模式有可能对编码效率产生负面影响。如果在将消息比特嵌入比特流之前使用纠错技术,那么可以在不影响消息可恢复性的情况下故意添加消息差错。图8显示了使用本申请的技术的视频编码器。输入视频800由变换设备802变换并由量化设备804量化。作为环路过滤器810形成的环路的一部分,反馈结构806与运动补偿和帧内预测模块808以及运动评估模块868—起使用的。还使用了画面参考存储器812。这其中的每个装置一起被用于执行预测和压缩,并产生比特流815。消息820被输入到可选的加密单元822以及可选纠错编码器824中。如上所述,模式映射826执行消息820与视频编码模式之间的模式映射。图9显示的是例示解码器,其中该解码器接收比特流815,并且使用逆量化、逆变换、运动补偿以及参考画面缓冲器来解码比特流,其中所述缓冲器还用于存储用于参考的画面。消息传递检测器和模式映射设备900执行检测消息处理,其中举例来说,该处理是通过检测起始和停止比特来完成的,此外,该设备还结合纠错解码器902来解码纠错信息,并且结合解密设备904来执行解密,如有必要还输出消息820。另一个实施例描述的是对其中已经具有元数据的比特流执行代码转换的代码转换单元,其中该比特流以不同的比特率、不同的分辨率或是使用不同的编解码器编码的,但是在其内保留了辅助信息。图10所示的另一个实施例包括首先对一个名为消息定位器的单独消息进行编码。该消息定位器提供了关于在后续帧和视频内部如何以及从哪里能够解码实际消息的准确信息。例如,该消息定位器可以提供与用来嵌入消息的一个或多个位置相关的路线图,比特映射模式,加密方法,以及关于信号一般重建的其他信息。在图10中,消息定位器1000直接跟在起始码1002之后。这样做允许在时间和空间上检测到消息的实际位置以及实际消息的大小。如图10所示,在不同的时间,消息定位器1000指向处于不同宏块的位置1010。画面中的消息定位器处于时刻t,而该消息定位器所引用的宏块则在时刻t+ι处于该画面。由此,初始消息的时间和空间可以采用这种方式来编码。如果加密了消息定位器,那么侵入者很难实际检测到始于1010的消息。图11示出的是标记示例的流程图。在1100,视频编码处理开始,并且在1102、1104为每一个帧确定该位置是否要被标记。如果是,则在1106将分别代表起始码起始位置、以比特为单位的大小、消息大小和结束码大小的scpos、scsize,mdsize和ecsize设置成其初始值。1108示出的是确定那些代表了不同的值的大小和位置的值,其后跟随的是在1110进行的模式决定。1112代表的是根据该模式决定来编码宏块。在上文中已经描述了使用视频压缩的实施例。但是,这里公开的技术同样适用于其他媒体,包括音频和语音编解码器。IS0/MEPG-4AAC压缩标准包含了使用这里公开的技术可以用于信令补充信息的众多音频编码模式。例如,编解码器使用11个可选霍夫曼码本来对经量化的变换系数进行无损编码。在给出了音频采样的输入帧的情况下,AAC编码器会选择一组将编码变换系数所需要的比特数量减至最少的霍夫曼码本。该实施例的AAC编码器可以接收要传送的元数据比特,然后对霍夫曼码本的选择进行相应的变更。编码模式同样是可用的,在被设置成次最优状态时,可以通过后续编码决定来至少部分弥补所述设置。其示例包括变换窗口类型(sine/KBD)、联合立体声编码决定(Mid/侧编码(sidecoding))以及TNS过滤器长度、顺序、分辨率和方向。在AMRNB语音编解码器内部,经编码的脉冲的位置和符号、LPC模型系数(矢量量化的线频谱对)以及基音滞后将会充当可以被本实施例使用的编码模式。在这里描述了一般的结构和技术,以及可以用于影响更常见目标的不同执行方式的更具体的实施例。虽然在上文中仅仅详细公开了少量实施例,但是其他实施例同样是可行的,并且发明人旨在将这些实施例包含在本说明书以内。本说明书描述了用于完成可能采用别的方式完成的更常见目标的具体实施例。本公开是例示性的,并且权利要求旨在覆盖本领域普通技术人员能够预见到的任何修改或变更。例如,可以使用其他编码处理。该系统可以与其他媒体一起使用。此外,虽然在上文中将特征描述成是在某些组合中产生作用的,并且在一开始是以相同的方式要求保护的,但是在一些情况下,来自要求保护的组合的一个或多个特征是可以从该组合中排除的,并且要求保护的组合有可能针对的是子组合或是子组合变体。此外,发明人还意图依照35USC112第六段来解释那些使用了单词“用于......的装置”的权利要求。此外,除非在权利要求中明确包含了来自说明书的限制,否则在任何权利要求中都不应该加入来自说明书的限制。这里描述的计算机可以是任何类型的计算机,该计算机既可以是通用计算机,也可以是工作站或机顶盒之类的专用计算机。该计算机可以是运行WindowsXP或Linux的Pentium级计算机,或者也可以是Macintosh计算机。编码和/或解码处理同样可以在FPGA或芯片之类的硬件中实施。程序可以用C、Java或其他任何编程语言来编写。这些程序可以驻留在磁性或光学存储介质之类的存储介质上,例如计算机硬盘驱动器、可移除碟片或其他可移除介质。此外,该程序还可以在网络上运行,例如使用服务器或是其他那些向本地机发送信号的机器来执行,这样做允许本地机执行这里描述的操作。在这里描述了本公开的特定实施例,但是其他实施例也处于后续权利要求的范围以内。权利要求一种用于编码离散时间媒体信号的方法,包括接收媒体信号;获取要在所述媒体信号内编码的补充信息;使用所述补充信息从多种不同的编码类型中选择一种编码类型;以及使用所述一种编码类型来编码所述媒体信号,其中该编码类型代表补充信息。2.根据权利要求1所述的方法,其中所述媒体信号是视频信号。3.根据权利要求2所述的方法,其中所述编码类型包括用于视频信号的多种预测模式中的至少一种。4.根据权利要求3所述的方法,还包括将预测模式集中成被选择以减小对编码性能的影响的信令群组。5.根据权利要求2所述的方法,还包括定义起始码、结束码、或长度码中的至少一个,以及在与补充信息相邻的视频信号位置内使用所述编码类型来表示所述起始码、结束码、或长度码中的所述至少一个。6.根据权利要求5所述的方法,其中所述起始码或结束码代表不太可能在真实视频中出现的编码决定序列。7.根据权利要求2所述的方法,其中所述补充信息与视频信号的内容相关,并且在时间上与视频信号的不同部分同步。8.根据权利要求2所述的方法,其中所述补充信息与视频信号不相关。9.根据权利要求3所述的方法,还包括确定具有大致相似性能的编码类型,以及分组所述编码方案以形成减小所述使用对编码性能的影响的群组。10.根据权利要求2所述的方法,还包括检测根据辅助信息选择的第一编码类型,其中第一编码类型导致视频降级,以及根据所述检测来覆盖所述选择。11.根据权利要求10所述的方法,其中所述覆盖所述编码类型的处理包括延迟辅助信息的编码直至接收到视频的不同区域。12.根据权利要求10所述的方法,其中所述检测包括以视频信号内部的变化为基础来执行所述检测。13.根据权利要求12所述的方法,其中所述覆盖包括在用于表示补充信息的帧间编码与帧内编码之间变化。14.根据权利要求2所述的方法,还包括使用外部信令来指示补充信息在视频信号内部的开端和末端中的至少一个。15.根据权利要求2所述的方法,其中用于编码所述补充信息的所述不同编码类型包括帧内-帧间预测、预测定向、子分区、参考索引、运动和照明变化参数、变换和/或量化参数。16.一种方法,包括对经编码的媒体信号进行解码,并且将用于编码该媒体信号的编码类型确定为多种不同编码类型中的一种编码类型;使用所述一种编码类型访问媒体编码类型与信息比特之间的关系;以及从所述解码中获取所述信息比特作为补充信息。17.根据权利要求16所述的方法,其中所述媒体信号是视频信号,并且所述媒体编码类型包括视频编码模式。18.根据权利要求17所述的方法,其中所述编码类型包括用于视频信号的多种预测模式中的至少一种。19.根据权利要求18所述的方法,还包括从所述信息比特确定起始码或结束码中的至少一个,以及检测与所述起始码或所述结束码相邻的补充信息。20.根据权利要求17所述的方法,还包括检测在时间上与视频信号的不同部分同步的所述补充信息。21.根据权利要求17所述的方法,还包括检测所述补充信息与视频信号不相关。22.根据权利要求17所述的方法,其中所述编码类型包括用于表示补充信息的帧间编码和帧内编码。23.根据权利要求17所述的方法,还包括检测用于指示视频信号内的补充信息开端或末端中的至少一个的外部信令。24.根据权利要求17所述的方法,其中用于编码所述补充信息的所述不同编码类型包括帧内-帧间预测、预测定向、子分区、参考索引、运动和照明变化参数、变换、或量化参数。25.一种设备,包括媒体编码器,操作以便以多种不同的预测模式中的一种预测模式来编码媒体信号;用于将被编码成媒体信号一部分的补充信息的输入;以及决定部分,使用所述补充信息以便根据所述补充信息来选择所述多种预测模式中的一种预测模式,以及表示所述补充信息。26.根据权利要求25所述的设备,其中所述媒体信号是视频信号。27.根据权利要求25所述的设备,其中所述媒体信号是音频信号。28.根据权利要求27所述的设备,其中所述媒体编码器是语音编码器。29.根据权利要求25所述的设备,其中所述决定部分包括将预测模式与补充信息比特相关的预测表,以及所述表将预测模式集中成被选择以减小对编码性能的影响的信令群组。30.根据权利要求25所述的设备,其中由于补充信息对编码性能的影响,所述决定部分故意不用信号通告补充信息。31.根据权利要求30所述的设备,其中补充信息已在之前使用纠错方案编码。32.根据权利要求26所述的设备,其中还包括存储起始码或结束码中的至少一个,以及使用所述编码器类型在与补充信息相邻的视频信号位置内表示所述起始码或结束码中的所述至少一个。33.根据权利要求32所述的设备,其中所述起始码或结束码代表不太可能在真实视频中出现的编码决定序列。34.根据权利要求26所述的设备,其中所述补充信息与视频信号的内容相关,并且在时间上与视频信号的不同部分同步。35.根据权利要求26所述的设备,其中所述补充信息与视频信号不相关。36.根据权利要求26所述的设备,其中所述决定部分包括用于指示具有大致相似性能的编码方案的信息,以及用于减小所述使用对编码性能的影响的编码方案的群组。37.根据权利要求26所述的设备,其中所述视频编码器检测基于辅助信息选择的会导致视频降级的第一编码类型,并且根据所述检测来覆盖所述第一编码类型的所述使用。38.根据权利要求37所述的设备,其中所述视频编码器的所述覆盖操作包括延迟对辅助信息的编码直至该视频的不同区域。39.根据权利要求37所述的设备,其中所述视频编码器的所述覆盖操作包括在用于表示补充信息的帧间编码与帧内编码之间变化。40.根据权利要求26所述的设备,还包括与外部信令的连接,所述外部信令指示视频信号内的补充信息的开端或末端中的至少一个。41.根据权利要求26所述的设备,其中用于编码所述补充信息的所述不同编码类型包括帧内-帧间预测、预测定向、子分区、参考索引、运动和照明变化参数、变换、或量化参数。42.一种设备,包括解码器,解码经编码的媒体信号,并且确定用于解码的编码类型,所述解码器确定多种不同编码类型中用于解码媒体信号的一种编码类型;逻辑部分,接收所述编码类型,并且使用所述编码类型来访问视频编码类型与信息比特之间的关系,以及从所述解码中输出信息比特作为补充信息。43.根据权利要求42所述的设备,其中所述媒体信号是视频信号。44.根据权利要求42所述的设备,其中所述媒体信号是音频信号。45.根据权利要求44所述的设备,其中所述媒体解码器是语音解码器。46.根据权利要求41所述的设备,其中所述逻辑部分存储了用于媒体信号的多种预测模式,以及与所述预测模式相关的比特。47.根据权利要求41所述的设备,其中所述逻辑部分还从所述信息比特中检测起始码或结束码中的至少一个,以及检测与所述起始码或所述结束码相邻的补充信息。48.根据权利要求46所述的设备,其中所述逻辑部分检测并纠正嵌入在媒体信号中的比特信息的差错。49.根据权利要求41所述的设备,其中所述逻辑部分检测在时间上与媒体信号的不同部分同步的所述补充信息。50.根据权利要求41所述的设备,其中所述逻辑部分检测所述补充信息与媒体信号不相关。51.根据权利要求41所述的设备,其中所述逻辑部分检测用于指示媒体信号内的补充信息开端或末端中的至少一个的外部信令。52.根据权利要求43所述的设备,其中用于编码所述补充信息的所述不同编码类型包括帧内-帧间预测、预测定向、子分区、参考索引、运动和照明变化参数、变换、或量化参数。全文摘要本发明公开了一种多媒体编码和解码系统及方法,其中在考虑并提供编码性能与元数据容量之间的折衷的同时,该系统和方法使用特定预测模式用信号通告补充信息,例如元数据。预测模式可以依照将模式与比特相关的模式表并通过考虑编码影响而被编码。起始和停止码可以用于用信号通告消息,与此同时还给出了如何恰当设计模式比特表的各种技术。文档编号H04N7/26GK101810007SQ200880108809公开日2010年8月18日申请日期2008年8月8日优先权日2007年9月28日发明者A·多拉佩斯,A·莱昂塔佩斯,K·J·斯泰克申请人:杜比实验室特许公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1