用于有效的可伸缩流适配的系统和方法

文档序号:7641055阅读:155来源:国知局

专利名称::用于有效的可伸缩流适配的系统和方法
技术领域
:本发明涉及可伸缩媒体编码、解码、存储和传输。
背景技术
:多媒体应用包括本地回放、流传输或随需(on-demand)、会话和广播/多播服务。多媒体应用所涉及的技术例如包括媒体编码、存储和传输。媒体类型包括语音、音频、图像、视频、图像和时间文本。已经针对不同的技术规定了不同的标准。视频编码标准包括ITU-TH.261、ISO/IECMPEG-l视频、ITU-TH.262或ISO/IECMPEG-2视频、ITU-TH.263、ISO/IECMPEG-4视频和ITU-TH.264(也称为ISO/IECMPEG-4AVC)。此外,还在开发新的纟见频编码标准。例如,正在进行可伸缩纟见频编码(SVC)标准的开发。此标准将成为H.264/AVC的可伸缩扩展。同样,正在进行中国视频编码标准的开发。可伸缩^L频编码可以^是供可伸缩^L频比特流。可伸缩一见频比特流的一部分可以被提取并解码,其具有劣化的回放视觉质量。可伸缩视频比特流包含非可伸缩基本层和一个或多个增强层。增强层可以增强时间分辨率(即帧率)、空间分辨率或者仅仅是由较低层或其部分表示的视频内容的质量。在有些情况下,增强层的数据可以在特定位置之后、甚至在任意位置被截短。每个截短位置可以包括一些表示逐渐增强的视觉质量的附加数据。这种可伸缩性被称为精细颗粒(粒度)可伸缩性(FGS)。与FGS相对,由不提供精细颗粒可伸缩性的质量增强层提供的可伸缩性被称为粗颗粒可伸缩性(CGS)。当前草案SVC标准中的可伸缩层结构的特征在于三个变量,称为时间—纟及另ll(temporal—level)、/人属—id(dependency—id)禾口质量_级别(quality—level),这些变量在比特流中用信号发送或者可以根据规范推导出。时间—级别用于指示时间可伸缩性或帧率。包含具有较小时间—级别值的图像的层具有比包含具有较大时间—级别的图像的层更小的帧率。从属—id用于指示层间编码的从属等级。在任何时间位置,具有较小从属Jd值的图像可以用于对具有较大从属—id值的图像编码的层间预测。质量—级别用于指示FGS层的等级。在任何时间位置并且具有相同的从属Jd值的情况下,具有质量一级别值等于QL的FGS图像使用该FGS图像或具有质量_级别值等于QL-1的基本质量图像(也即当QL-1=0时为非FGS图像)来进行层间预测。图1示出了示例性可伸缩视频流的时间片段,显示了上述三个变量的值。应当注意,时间值是相对的,也即,时间=0不一定是指比特流中按显示顺序排在第一的图像的时间。图2示出了该示例的典型预测参考关系,其中实线箭头指示沿水平方向的帧间预测参考关系,虛线空心箭头指示层间预测参考关系。(箭头)所指向的实例使用(箭头)另一方向的实例以用于预测参考。如此处所讨论的,层被定义为分别具有相同的时间—级别、从属—id和质量一级别的值的图像的集合。为了解码和回放增强层,通常包括基本层的较低层也应为可用的,因此较低层可以直接或间接地用于编码增强层中的层间预测。例如,在图l和图2中,(t,T,D,Q)等于(0,0,0,0)和(8,0,0,0)的图像属于基本层,它们可以独立于任何增强层而解码。(t,T,D,Q)等于(4,1,0,0)的图像属于双倍于基本层的帧率的增强层;该层的解码需要存在基本层图像。(t,T,D,Q)等于(O,O,O,l)和(8,0,0,1)的图像属于以FGS方式增强基本层的质量和比特率的增强层;该层的解码也需要存在基本层图像。在H.264/AVC标准中,如下定义了即时解码刷新(IDR)图像。所有片是I或者SI片的编码图像使得解码进程在解码该IDR图像之后立即将所有参考图像标记为"未用于参考"。在解码IDR图像之后,按解码顺序随后的所有编码图像可以在没有来自任何先于该IDR图像解码的图像的内部预测的情况下被解码。每个编码视频序列的第一幅图像是IDR图像。IDR图像的概念也运用在当前的草案SVC标准中,其中该定义适用于分别具有相同的从属—id(dependencyjd)和质量_级别(quality—level)值的图像。换句话说,IDR图像是这样的编码图像,其中该IDR图像以及所有在同一层中(也即与IDR图像具有分别相同的从属—id和质量—级别值)按解码顺序随后的编码图像的解码可以在没有来自任何在同一层中按解码顺序先于该IDR图像解码的图像的帧间预测的情况下执行。IDR图像使得解码进程在解码该IDR图像之后立即将同一层中所有参考图像标记为"未用于参考"。应当注意,此处针对当前草案SVC标准上下文所使用的术语"在同一层中"是指解码图像具有与IDR图像分别相同的从属—id和质量—级别值。要么所有具有相同的图像次序数值(即,在同一时间位置)、但是不同dependency—id或quality—level值的图像被编码为IDR图像,要么特定图像次序数值的图像不被编码为IDR图像。换句话说,要么所有位于存取单元(包括所有具有相同的图像次序数值的图像)的图像是IDR图像,要么存取单元中没有图像是IDR图像。可用的媒体文件格式标准包括ISO文件格式(ISO/IEC14496-12)、MPEG-4文件格式(ISO/IEC14496-14)、AVC文件格式(ISO/IEC14496-15)以及3GPP文件格式(3GPPTS26.244)。SVC文件格式目前正由ISO/IECMPEG开发,其可以在MPEGN7477,"VMStudyTextforScalableVideoCoding(SVC)FileFormat"73rdISO/IECMPEGmeeting,Poz醒,Poland,2005年7月中找到,其全文在此通过参考结合引入。可伸缩编码相比于单层编码的一个优点在于在可伸缩编码的情况下,单个流可以满足不同的质量、比特率、显示尺寸等的需求,而在单层编码的情况下,必须使用多个流。使用多个流花费更多的存储空间,并且在联播中,需要更多的传输带宽。在流传输应用中,当传输网络或接收方的能力相对于它们的早期状态发生改变时,例如传输带宽变化时,需要流适配。网关和其他可知纟某体(media-aware)网元(MANE)也可以执行流自适应。当可伸缩编码文件在"本地"(即,文件驻留在与解码器相同的设备中或者驻留在通过快速链接连接到解码设备的存储器中)播放时,如果解码器与某些其他处理共享计算资源,则可能需要流适配。例如,如果在运行多进程操作系统的通用处理器上执行解码,则解码器可能在某一时间能够使用整个计算功率并且解码所有的可伸缩层。然而,在另一时间,解码器可能只具有处理器的计算功率的子集以用于解码可用可伸缩层的子集。适配的流可以具有变化的比特流、帧率和/或视频分辨率。在单层编码的情况下,流适配可以通过流切换或代码转换来执行。在单个可伸缩流的情况下,流适配可以通过层切换来执行。在可伸缩编码中,从高到低的层切换可以在任何位置执行。然而,从低到高的层切换则不同,因为对切换到的高层中的图像的解码通常需要同一层中存在解码顺序中一些先前的图像。对于当前的草案SVC标准,从低到高的层切换可以在IDR存取单元(包括IDR图像)中执行。然而,依靠IDR存取单元要么导致由于对IDR存取单元的频繁编码而降低的编码效率,要么导致不即时的流适配。这两个问题都与终端用户的体验密切相关。理i仑上还有可能利用SP/SI图像编码或渐进解码刷新技术来执行从低到高的层切换。不过,这些技术都是针对单层编码设计的。因此,这些技术目前不可用于可伸缩编码。而且,即使将这些技术扩展为可在可伸缩编码中使用之后,它们的应用也将导致额外的编码约束(以等同于较低编码效率的形式)或者实现复杂性。因此需要支持在可伸缩视频编码中简单有效的从低到高的层切换。而且,还需要支持在文件格式层筒单有效的从低到高的层切换的信号发送,使得不需要解析和分析视频比特流就能查找从低f)J高的层切换的位置,因为对流的解析和分析需要复杂的计算。
发明内容本发明提供一种系统和方法,用于在文件格式层中信号发送从低到高的层切换点以支持在流服务器和本地文件回放中的有效的可伸缩流切换。本发明还公开了一种系统和方法,用于在视频比特流中信号发送从低到高的层切换点,例如,用于支持在可知媒体网元中智能转发可伸缩层或者在流接收方中计算上的可伸缩解码。本发明支持针对可伸缩流适配的简单有效的从低到高的层切换。本发明使得不需要流服务器对视频比特流进行大量地解析和分析,否则该解析和分析可能要求相当重的计算和实现负担。本发明实际上可以用于任何可伸缩媒体应用。本发明的这些和其他优点和特征及其构造和操作方式,将在下面结合附图的详细描述中变得很明显,其中下面描述的多个附图中相同的部件具有相同的附图标记。图1示出了示例性可伸缩视频流的时间片段,显示了三个变量时间—级别、从属jd和质量—级别的值;图2是针对图1所示的时间片段的典型的预测参考关系;图3是可以实现本发明的系统的纵览图4是可以体现本发明的原理的电子设备的透视图5是图4的电子设备的电路示意图;以及图6是可以应用本发明的可伸缩编码等级的通用多媒体数据流传输系统的图示。具体实施例方式参考图6,描述了用于应用本发明的过程的典型的多媒体流传输系统。多媒体数据流传输系统通常包括一个或多个多媒体源100,诸如视频照相机和麦克风,或者存储在存储器载体中的视频图像或计算机图形文件。从不同多媒体源100获得的原始数据在编码器102中组合成多媒体文件,该编码器也可以称为编辑单元。来自一个或多个多媒体源100的原始数据首先使用包含在编码器102中的捕获装置104进行捕获,该捕获装置通常可以实现为不同的接口卡、控制卡的功能的驱动软件或应用软件。例如,视频数据可以使用视频捕获卡及相关的软件进行捕获。捕获装置104的输出通常是未压缩的或者轻度压缩的数据流,例如当涉及视频捕获卡时,为YUV4:2:0格式或动画-JPEG图像格式的未压缩一见频帧。编辑器106将不同的媒体流链接在一起以同步将要如所期望地同时重现的^L频流和音频流。编辑器106也可以对每个々某体流(诸如视频流)进行编辑,例如通过将帧率减半或者降低空间分辨率。分离的媒体流在压缩器108中进行压缩,尽管这些媒体流已经同步,但是在压缩器中每个媒体流使用适合于该媒体流的压缩器分别进行压缩。例如,YUV4:2:0格式的视频帧可以-使用ITU-T推荐H.263或H.264进行压縮。分离的、已同步的且已压缩的媒体流通常在复用器110中交织,从编码器102获得的输出是单个、统一的比特流,其包括多个媒体流的数据,并且可以称为多媒体文件。应当注意,多媒体文件的形成不一定要求将多个媒体流复用为单个文件,不过流传输服务器可以就在发送这些媒体流之前,对它们进行交织。多媒体文件被传送到流传输服务器112,因而流传输服务器能够将其作为实时流传输进行执行或者以渐进式下载形式执行。在渐进式下载中,多媒体文件首先存储在服务器112的存储器中,当需要时可以从该存储器取回多媒体文件以进行传输。在实时流传输中,编辑器102向流传输服务器112发送连续的多媒体文件的媒体流,并且服务器112将流直接转发给客户端114。作为另一选择,也可以这样执行实时流传输以使得多媒体文件存储在服务器112可存取的存储装置中,当需要时可以从该存储装置驱动实时流传输以及启动连续的多媒体文件的媒体流。在这种情况下,编辑器102不一定需要任何装置来控制流传输。流传输服务器112依照客户端114的可用带宽或最大解码和回放速率,执行多媒体数据的流量整形,流传输服务器112能够调整媒体流的比特速率,例如通过从传输中省去B-帧或者通过调整可伸缩层的数量。进一步,流传输服务器112可以修改复用媒体流的报头字段以减少其尺寸,并且将多媒体数据封装入适合于在所采用的通信网络中传输的数据分组中。客户端114通常可以通过使用合适的控制协议来调整(至少在一定程度上)服务器112的操作。客户端114至少能够以这种方式控制服务器112,即能够选择期望的传输至客户端的多媒体文件,此外,客户端114通常能够停止和中断多媒体文件的传输。当客户端114正在接收多媒体文件时,该文件首先被提供给解复用器116,解复用器116将包含在该多媒体文件中的媒体流分离。分离的、压缩的媒体流继而被提供给解压缩器118,在解压缩器118中,每个分离的媒体流被适合于每个特定媒体流的解压缩器进行解压缩。经解压缩和重构的媒体流提供给回放单元120,在回放单元处媒体流根据它们的同步数据以正确的步调再现并提供给呈现装置124。实际的呈现装置124例如可以包含计算机或移动台显示器和扬声器装置。客户端114通常也包括终端用户一般通过用户接口进行控制的控制单元122,其通过上述控制协议控制服务器的操作,并且基于终端用户给出的指令控制回放单元120的操作。应当注意,多媒体文件从流传输服务器112到客户端114的传送通过通信网络进行,传送路径通常包括多个通信网元。因此有可能至少某个网元能够至少部分地以与上面结合流服务器描述的相同的方式、在客户端114的可用带宽或最大解码和回放速率方面执行多媒体数据的流量整形。本发明提供一种系统和方法,用于在文件格式层中信号发送从低到高的层切换点以支持在流传输服务器和本地文件回放中的有效的可伸缩流切换。本发明还7>开了一种系统和方法,用于在^L频比特流中信号发送从低到高的层切换点,例如,用于支持在可知媒体网元中智能转发可伸缩层或者在流接收方中计算上的可伸缩解码。在此描述本发明的多个示例性实现。不过,应当注意,这些实现的其他变形也是有可能的,例如通过组合此处讨论的可选实施方式的子集。以文件格式信号发送从低到高的层切换点的第一实现包括将信号发送从低到高的层切换点用作可伸缩信息的一种。在此实施方式中,针对每个层的信号发送从低到高的层切换点定义新的盒子(box)。该盒子包含在包含每个可伸缩层的可伸缩信息的数据结构中,例如在svc文件格式的草案标准文本中定义的ScalableLayerEntry()结构。该盒子定义如下盒子类型(BoxTypes):'lswp,容器(Container):ScalableLayerEntry强制(Mandatory):否数量(Quantity):0或者1该盒子为流内的各个层提供从低到高的层切换点的简明标记。按照采样号递增的顺序严格排列表格。如果对于某个层不存在层切换点盒子,则对于该层没有额外的从低到高的层切换点,除了在同步采样盒子中用信号发送的同步采样或者在阴影同步采样盒子中用信号发送的阴影同步采样。classLayerSwitchingPointBoxextendsBox(*lswp,){xmsigneiiiat(32)entry—count;for(i=0;i<entry—conint;i4+){unsignedint(32)s咖ple一n咖b汰;unsignedint(8)entry—co加2;for(j=0;j<節try一count2;j++)signedint(16)ddta一layer—id;在此示例中,"entry—count"给出了后面表格中条目的数量。"sample—number"给出了此类采样的采样号,该采样的针对当前层的从低到高的层切换点的信息在后面表格中用信号发送。"entry—count2"给出了后面表格中条目的数量。"delta—layer—id"4旨定了在采才羊号等于sample—number的当前采样处,流可以从当前层切换到的较高层,或者可以从其切换到当前层的较低层。等于或大于零的值指示在当前采样处,该流可以从当前层切换到层标识符等于(layerld+delta—layer—id+1)的较高层。小于零的值指示在当前采样处,该流可以从层标识符等于(layerld+delta—layer—id)的较低层切换到当前层。每个层的layerld从包含每个可伸缩层的可伸缩信息的数据结构中找到。以文件格式信号发送从低到高的层切换点的第二实现包括在专用盒子中信号发送所有层的从低到高的层切换点。该盒子定义如下。盒子类型(BoxTypes):'lswp,容器(Container):(采样表格盒子)('stbl,)强制(Mandatory):否数量(Quantity):0或者1该盒子为流中的所有层提供从低到高的层切换点的筒明标记。按照采样号递增的顺序严格排列表格。如果不存在层切换点盒子,则没有额外的从低到高的层切换点,除了在同步釆样盒子中用信号发送的同步采样或者在阴影同步采样盒子中用信号发送的阴影同步采样。classLayerSwitchin^PointBoxextendsBox('lsvvp,)(unsignedint(32)entry—count;intijj,k;forCi<entry—count;i++){unsignediirt(32)sample—oumber;加signedint(S)entry—co加t2;for(j=0;j<entjy一count2;{unsignedint(8)layer—id;unsignedint(8)entry一courrt3;for(k=0;lc<entry一count3;signedint(16)delta一lay汰一id;在此实施方式中,"entry—count"给出了后面表格中条目的数量。"sample—number"给出了此类采样的采样号,该采样的从低到高的层切换点的信息在后面表格中用信号发送。"entry—count2"给出了后面表格中条目的数量。"layer—id"给出了从低到高的层切换点的信息在后面表格中用信号发送的层的层标识符。"entry—count3"给出了后面表格中条目的数量。"delta—layer_id"指定了在采样号等于sample—number的当前采样处,流可以从当前层切换到的较高层,或者可以从其切换到当前层的较低层。不小于零的值指示在当前釆样处,该流可以从当前层切换到层标识符等于(layer—id+delta—layer—id+1)的较高层。小于零的值指示在当前采样处,该流可以从较低层切换到层标识符等于(layer—id+delta—layer—id)的当前层。在本发明的此特定实施方式中,也有可能将smaple_number的循环放入layer_id的循环内,代替当前的将sample—nmber循环方文入layer—id的循环内。以文件格式信号发送从低到高的层切换点的第三实现包括使用信号发送轨道(track)切换点。此实施方式还可以与上述任何其他实施方式同时使用。此实施方式应用在这样的情形中,其中可伸缩层的可独立解码组合通常通过使用参考而被组合以形成独立轨道。在ISO基本媒体文件格式中,媒体数据由一组网络独立的轨道表示,其中线索轨道(hinttrack)包含网络相关的传输封装信息并且将媒体采样或其部分与传输分组相关联(通过从线索轨道到媒体轨道的参考)。提取器轨道包含对媒体轨道的参考,使得针对SVC存取单元的编码图像的子集形成提取器轨道中的样本。因此,每个提取器轨道将代表不同的可伸缩层子集,并且每个提取器轨道在不解码同一媒体轨道的其他提取器轨道的情况下将是可确定的。在此特定实现中,可以标识线索轨道之间或者提取器轨道之间的切换点。包含或引用可伸缩层的充分子集的轨道通过轨道参考容器盒中的轨道参考类型'tswf链接到此轨道,其中可伸缩层支持切换到该轨道中至少一个指示的切换点采样。此轨道包含可伸缩层的充分子集所针对的轨道通过轨道参考容器盒中的轨道参考类型'tSWt,链接到此轨道,其中可伸缩层支持切换到那些轨道中至少一个指示的切换点采样。盒子类型(BoxType):'tswd,容器(Container):SampleTableBox('stbl,)(采样表才各盒子)强制(Mandatory):否数量(Quantity):0或者正好1该盒子提供线索轨道之间或者提取器轨道之间从低到高的层切换点的简明标记。按照采样数目递增的顺序严格排列表格。如果不存在轨道切换点盒子,则没有额外的从低到高的层切换点,除了在同步采样盒子中用信号发送的同步采样或者在阴影同步采样盒子中用信号发送的阴影同步采样。d鹏TradcSwitchingPohi伤oxextendsBox('tswp,)(鹏ignedint(32)atry—comrt;intiJ',for(i=0;i<entry—count;i"H-){加sigaedint(32)sample一mimber;咖ignedint(8)entiy—ccmnt2;for(j=0;j<entry—count2;unsignedint(32)src—trade—id;■unsignedixit(8)節try—count3;for(j=0;j<entry—count3;加signedint(32)destjxa改一id;在此情形中,"entry—count"给出了后面表格中条目的数量。"sample—number"给出切换点采样的采样数量。"entry—count2,,给出了后面表格中条目的数量。"sre—track—id"指示包含流可以从其切换至包含在当前轨道中的层的较低层的轨道的轨道标识符。"entry—count3,,给出了后面表格中条目的数量。"desk—track—id"指示包含流可以从包含在当前轨道的层切换到的更高层的轨道的轨道标识符。应当注意,也有可能4吏用可选的语法定义。例如,可以省略entry—count3及针对desk—track—id值的相关循环。而且,如果在'tswf轨道参考中只指示了一个轨道,则针对src—tmckjd值的循环就不是必需的。也可以独立地使用TrackSwitchingPointBox语法而不需要轨道参考'tswf和/或'tswt,。而且,可以重新使用在使用第一或第二可选方案的媒体轨道中用信号发送的消息,以获得在线索或提取器轨道中从低到高的层切换点,其中针对每个线索或提取器轨道用信号发送层标识符,例如在轨道报头中或采样条目中。下面讨论用于在比特流中信号发送从低到高的层切换点的可选方法。第一个此类可选方案包括使用新的网络提取层(NAL)单元类型,以指示包含该NAL单元类型的已编码片的图像是增强层即时解码刷新(EIDR)图像。EIDR图像是这样的已编码图像,该EIDR图像以及在同一层中(也即具有与该EIDR图像分别相同的temporal—level、dependency—id禾口quality—level<直)4安解;马力质序卩逸后的所有已编码图像的解码可以在没有来自任何在同一层中按解码顺序先于该EIDR图像的图像的帧间预测的情况下执行。EIDR图像使得解码进程在解码该EIDR图像之后立即将同一层中所有参考图像标记为"未用于参考,,。EIDR图像不会使temporal—level、dependency—id和quality—level全部等于零。应当注意,此处针对此可选方案上下文所使用的"在同一层中"是指解码图像具有与EIDR图4象分另'J相同的temporal—level、dependency—id和quality—level<直。应当注意,该在同一层中的概念相比于最近草案svc标准的差别在于此处考虑了temporal—level。通过将temporal—level考虑在内,就能支持从具有较低帧率的层到具有较高帧率的层的从低到高的层切换。而且,EIDR图像的编码效率提高了,这是因为具有较高temporal—level值的参考图像自动从参考图像列表中删除,使得节省了一些参考图像列表重排序命令或者参考图像的索引值变得更小,从而提高了熵编码的编码效率。因为可伸缩编码的特性使得较低层不能依靠较高层,因此EIDR图像不能从位于同一层以及更高层的图像进行预测,不过其仍然能够从来自较低层的图像进行预测,包括时间上较低的层。这样就支持在EIDR图像的位置处从下一个较低层到包含该EIDR图像的层的层切换。例如,新的NAL单元类型可以如下表1所示定义。值22用作该新的NAL单元类型,并且NAL单元类型20的含义从"可伸缩扩展中非IDR图像的已编码片"变为"可伸缩扩展中非IDR图像和非EIDR图像的已编码片"。表1<table>tableseeoriginaldocumentpage22</column></row><table><table>tableseeoriginaldocumentpage23</column></row><table>此设计可应用于使用可伸缩扩展编码的可伸缩层,其中temporal—level、dependency—id和quality—level用信号发送。H.264/AVC标准本身可以用于提供时间可伸缩性,其可以使用子序列信息SEI消息来用信号发送。不过,在此情况下,不发送temporaljevel,因此根据当前草案SVC标准,对于所有时间可伸缩层,temporal—level都推断为零。为了支持在时间层之间有效的从低到高的层切换并且不中断H.264/AVC流兼容性,新的SEI消息用于指示图像是EIDR图像。然而,通过使用SEI消息,EIDR图像的参考管理功能就不可能做到了,即,由SEI消息指示的EIDR图像可以用于从低到高的层切换,但是它不会使得解码进程将同一层中的所有参考图像标记为"未用于参考"。这归因于事实上SEI消息对于符合标准的解码器来说是可选的。SEI消息规定如下。EIDR图像SEI消息语法<table>tableseeoriginaldocumentpage24</column></row><table>EIDR图像SEI消息语义。上述语义如下。如果存在EIDR图像SEI消息,则其于已编码图像相关联,其中在比特流中没有为该已编码图^f象^是供temporal—level、dependency—id和quality—level,因jt匕所有这些都被推断为零。目标图像也与子序列信息SEI消息相关联,其中用信号发送sub_sq—layer_num以指示时间可伸缩性等级。EIDR图像SEI消息的存在指示了目标图像是EIDR图像,其中该图像以及在同一层中(也即,其temporal—level、dependency—id和quality—level均等于0并且具有与EIDR图像相同的sub_sq—layer_num值)按解码顺序随后的所有已编码图像的解码可以在没有来自任何在同一层中按解码顺序先于该EIDR图像的图像的帧间预测的情况下进行解码。"temporal—layer_num"具有与子序列信息SEI消息中的语法元素sub—s叫—layer—num相同的语义。其值与同一目标图像相关联的子序列信息SEI消息中的sub_sq—layer_num—致。也可以将语法元素temporaljayer_num从SEI消息的语法中排除。不过,如果这么4故,就需要对子序列SEI消息进行解析以知道该EIDR图像属于哪个时间可伸缩层。在比特流中信号发送从低到高的层切换点的第二可选实现包括改变IDR图像的定义以及放松对IDR图像的编码的约束。在此实现中,如下对IDR进行改变。如果temporal—level、dependency—id和quality—level中的任一个不等于零,则IDR图像是这样的已编码图像,其中该IDR图像以及在同一层中(也即,具有与该IDR图像分别相同的temporal—level、dependency—id详口quality—leveli"直)i安解石马力顷序随后的所有已编码图像的解码可以在没有来自任何在同一层中按解码顺序先于该IDR图像的图像的帧间预测的情况下执行。而且,此类IDR图像使得解码进程在解码该IDR图像之后立即将同一层中所有参考图像标记为"未用于参考,,。否则,如果temporal—level、dependency—id和quality—level都等于零,则IDR图像是这样的已编码图像,其中该IDR图像以及按解码顺序随后的所有已编码图像的解码可以在没有来自任何按解码顺序先于该IDR图像的图像的帧间预测的情况下执行。此类IDR图像使得解码进程在解码该IDR图像之后立即将所有参考图像标记为"未用于参考"。如下放松对IDR图像的编码的约束(即,要么存取单元中的所有图像是IDR图像,要么存取单元中没有图像是IDR图像)。如果具有temporal_level、dependency_id和quality—levelii老卩等于零的图像是IDR图像,则位于同一存取单元的所有其他图像都是IDR图像。由于放松了对IDR图像的编码的约束,因此可以在一个存取单元中具有增强层中的IDR图像,其中基本层图像是非IDR图像。从该第二可选方案中可以观察到,当temporal—level、dependency—id和quality—level中任一不等于零时,IDR图像的定义与上面讨论的用于在比特流中信号发送从低到高的层切换点的第一可选方案中的EIDR图像定义相同。因此,EIDR图像的所有获益都是有效的。此处将IDR图像的编码定义为支持在该IDR图像位置处从下一个较低层到包含该IDR图像的层的层切换。此特定设计可应用于使用可伸缩扩展编码的可伸缩层,其中temporal—level、dependency—id和quality—level用信号发送。可以釆用与可选方案1中相同的方法来支持在使用H.264/AVC标准本身编码的时间层之间有效的从低到高的层切换。用于在比特流中信号发送从低到高的层切换点的第三可选实现包括放松对IDR图像的编码的约束以及为时间可伸缩层使用SEI消息。在此可选方案中,IDR图像的定义保持不变,但是对IDR图像的编码的约束如下进行放松。^口果具有temporal—level、dependency—id禾口quality_level^f直^卩等于零的图像是IDR图像,则位于同一存取单元的所有其他图像都是IDR图像。此放;hH吏得IDR图像的编码能够在不同dependency—id或者quality—level值之间进行从低到高的层切换。不过,因为IDR图像的定义没有改变,即,在指定可伸缩层中没有包括temporal—level,因此在时间层之间从低到高的层切换问题仍然没有解决。为了解决在时间层之间从低到高的层切换问题,不管它们是使用可伸缩扩展进行编码还是使用H.264/AVC标准本身进行编码,使用类似于上述针对第一可选方案所描述的EIDR图像SEI消息来指示与SEI消息相关联的目标图像是可以用于从低到高的层切换的EIDR图像。尽管如此,由SEI消息所指示的EIDR图像不具有参考管理功能,因为SEI消息对于符合标准解码器是可选的。SEI的语法与用于在比特流中信号发送从低到高的层切换点的第一可选方案中的相同。当目标图像使用H.264/AVC标准本身进行编码时,语义也相同。当目标图像使用可伸缩扩展编码时,语义改变如下。EIDR图像SEI消息的存在指示了目标图像是EIDR图像,其中该图像以及在同一层中(也即,具有与该EIDR图像相同的temporal—level、dependency—id禾口quality_level4直)才要解石马》顷序P逸后的所有已编码图像的解码可以在没有来自任何在同一层中按解码顺序先于该EIDR图像的图像的帧间预测的情况下进行解码。"temporal一layer一num"指示EIDR图^(象的temporal—level值。当EIDR图像使用可伸缩扩展进行编码时,也可以将语法元素temporal—layer—num从SEI消息的语法中排除。用于在比特流中信号发送从低到高的层切换点的第四可选方案包括针对所有可伸缩层使用SEI消息。在此可选方案中,EIDR图像SEI消息类似于在上面第三可选方案中定义的消息,其用来指示与SEI消息相关联的目标图像是可以用于从低到高的层切换的EIDR图#^。然而,在此特定实施方式中,SEI消息也可以用于解决在不同dependencyjd或者quality—level值之间的,人低到高的层切换的问题。图3示出了可以利用本发明的系统10,包括能够通过网络通信的多个通信设备。系统IO可以包括有线或无线网络的任意组合,其包括但不限于,移动电话网络、无线局域网(LAN)、蓝牙个域网络、以太网LAN、令牌环LAN、广域网、互联网等。系统10可以包括有线和无线通信设备二者。例如,图3中示出的系统10包括移动电话网络11和互联网28.到互联网28的连接可以包括但不限于,长距离无线连接、短距离无线连接、以及各种包括但不限于电话线、电缆线、电力线等等的有线连接。系统10的示例性通信设备可以包括但不限于,移动电话12、PDA和移动电话的组合14、PDA16、集成消息发送设备(IMD)18、台式计算机20、以及笔记本计算机22。通信设备可以是静止的或移动的,如当其被正在移动的个体携带时。通信设备还可以处于运输工具模式中,这些运输工具包括但不限于,汽车、卡车、出租车、公共汽车、轮船、飞机、自行车、摩托车等。通信设备中的某些或全部可以发送和接收呼叫和消息,并且可以通过无线连接25连接到基站24与服务提供商通信。基站24可以连接到网络服务器26,该网络服务器26允许在移动电话网络11和互联网28之间通信。系统10可以包括另外的通信设备和不同类型的通信设备。通信设备可以使用各种传输技术进行通信,这些传输技术包括但不限于,码分多址(CDMA)、全球移动通信系统(GSM)、通用移动通信系统(UMTS)、时分多址(TDMA)、频分多址(FDMA)、传输控制协议/互联网协议(TCP/IP)、短消息服务(SMS)、多媒体消息服务(MMS)、电子邮件、即时消息服务(IMS)、蓝牙、IEEE802.11等等。通信设备可以使用各种介质通信,这些介质包括但不限于,无线电、红外、激光、电缆连接等等。图4和图5示出了一个可实施本发明的具有代表性的移动电话12。但是应当理解的是,本发明并不旨在局限于一种特定类型的移动电话12或者其它电子设备。图13和图14的移动电话12包括壳体30、液晶显示屏形式的显示器32、小键盘34、麦克风36、耳机38、电池40、红外端口42、天线44、才艮据本发明的一种实施方式的UICC形式的智能卡46、读卡器48、无线接口电路52、编解码器电路54、控制器56和存储器58。各个电路和元件都是本领域公知的类型,例如在诺基亚移动电话的范围内。本发明是以方法步骤的一般上下文方式描述的,这种方法步骤在一种实施方式中可以由程序产品来实施,该程序产品包含由联网环境中的计算机执行的例如程序代码的计算机可执行指令。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例行程序、程序、对象、组件、数据结构等等。计算机可执行指令、相关联的数据结构以及程序模块表示用于执行本文所述方法步骤的程序代码的示例。这种可执行指令或相关联的数据结构的特定顺序表示用于实施这些步骤中所描述的功能的相应动作的示例。本发明的软件和web实现可以通过具有基于规则的逻辑以及其它用以完成各种数据库搜索步骤、相关步骤、比较步骤和决策步骤的逻辑的标准编程技术来完成。还应当指出的是,此处以及权利要求中使用的词语"组件"和"模块"意在包含使用一行或多行软件代码的实施和/或硬件实施和/或用于接收手动输入的装备。本发明实施方式的上述说明是为了说明和描述的目的。其并不意在穷举或是将本发明限制为所公开的精确形式,并且修改和变化可以参照上述教导作出,或者可以从本发明的实践中获得。选择和改以适应于特定的预期应用。权利要求1.一种支持在包括基本层和至少一个增强层的视频比特流中从低到高的可伸缩层切换的方法,包括对该视频比特流中多个从低到高的层切换点进行编码,其中该多个从低到高的层切换点不在即时解码刷新(IDR)存取单元的位置处。2.根据权利要求1所述的方法,还包括使用所述已编码的切换,泉从所述视频比特流中的较低层切换到所述视频比特流中的较高层。3.根据权利要求1所述的方法,其中通过定义NAL单元类型以指示包含特定NAL单元类型的已编码片的图像是增强层即时解码刷新(EIDR)图像来对所述切换点进行编码。4.根据权利要求1所述的方法,其中通过定义补充增强信息(SEI)消息以指示图像是EIDR图像来对所述切换点进行编码。5.根据权利要求1所述的方法,其中按如下方式对所述切换点进4亍纟扁;马长口果temporal—level、dependency—id和quality—level寸直;l卩等于零,则将IDR图像定义为这样的已编码图像,其中该IDR图像以及按解码顺序随后的所有已编码图像的解码能够在没有来自任何按解码顺序先于该IDR图像的图像的帧间预测的情况下执行;以及,如果temporal—level、dependency—id和qualitylevel值中任一不等于零,则将IDR图像定义为这样的已编码图像,其中该IDR图像以及在同一层中按解码顺序随后的所有已编码图像的解码能够在没有来自任何在同一层中具有与该IDR图像分别相同的temporal—level、dependency—id和quality—level值的、按解码顺序先于该IDR图像的图像的帧间预测的情况下执行,其中如果两幅图像具有相同的temporallevel、dependency—id和quality—level^f直,则这两幅图4象i人为是在同一层中。6.根据权利要求5所述的方法,其中如果temporal—level、dependency—id和quality—level中任一不等于零,则在解码所述IDR图像之后,立即将所有具有与所述IDR图像分别相同的temporal—level、dependency—id和quality—level值的参考图4象标i己为"未用于参考"。7.根据权利要求5所述的方法,其中如果temporal—level、dependencyjd和quality—level都等于零,则在解码所述IDR图像之后,立即将所有参考图像标记为"未用于参考"。8.根据权利要求1所述的方法,其中按如下方式对所述切换点进4亍编石马浊口果temporal—level、dependency—id和qualityjevel渚卩等于零的图像是IDR图像,则将位于同一存取单元的所有其他图像都定义为IDR图像。9.根据权利要求8所述的方法,其中通过定义补充增强信逸、(SEI)消息以指示图像是EIDR图像来对所述切换点进行编码。10.根据权利要求1所述的方法,其中通过针对所有可伸缩层使用SEI消息以指示与该SEI消息相关联的目标图像是能够用于从低到高的层切换的EIDR图像来对所述切换点进行编码。11.一种支持在包括基本层和至少一个增强层的视频比特流中从低到高的可伸缩层切换的方法,包括对该视频比特流的文件格式层内的多个从低到高的层切换点进行编码,其中该多个从低到高的层切换点不在即时解码刷新(IDR)存取单元的位置处。12.根据权利要求11所述的方法,还包括使用所述已编码的切换点从所述视频比特流中的较低层切换到所述视频比特流中的较高层。13.根据权利要求11所述的方法,其中通过在包含针对每个可伸缩层的可伸缩性信息的数据结构中包括盒子来对所述切换点进行编码。14.根据权利要求11所述的方法,其中通过在所述视频比特流中包括指示所有层的切换点的盒子来对所述切换点进行编码。15.根据权利要求11所述的方法,其中通过包括指示存在于线索轨道或提取器轨道之间的从低到高的层切换点的盒子来对所述切换点进行编码。16.根据权利要求15所述的方法,其中在媒体轨道中用信号发送的信息被重新利用以便获得存在于所述线索轨道或提取器轨道之间的所述从低到高的层切换点。17.—种支持在包括基本层和至少一个增强层的视频比特流中从低到高的可伸缩层切换的计算机程序产品,包括用于在所述视频比特流中对多个从低到高的层切换点进行编码的计算机代码,其中所述多个从低到高的层切换点不在即时解码刷新(IDR)存取单元的位置处。18.根据权利要求17所述的计算机程序产品,还包括用于使用所述已编码的切换点从所述视频比特流中的较低层切换到所述视频比特流中的较高层的计算机代码。19.根据权利要求17所述的计算机程序产品,其中通过定义NAL单元类型来指示包含特定NAL单元类型的已编码片的图像是增强层即时解码刷新(EIDR)图像来对所述切换点进行编码。20.根据权利要求17所述的计算机程序产品,其中通过定义补充增强信息(SEI)消息以指示图像是EIDR图像来对所述切换点进行编码。21.根据权利要求17所述的计算机程序产品,其中按如下方式只于戶斤述+刀才灸点进4亍编石马^口果temporal—level、dependency—id和quality—level值都等于零,则将IDR图像定义为这样的已编码图像,其中该IDR图像以及按解码顺序随后的所有已编码图像的解码能够在没有来自任何按解码顺序先于该IDR图像的图像的帧间预测的情况下执行;以及,如果temporal—level、dependency—id和qualityjevel值中任一不等于零,则将IDR图像定义为这样的已编码图像,其中该IDR图像以及在同一层中按解码顺序随后的所有已编码图像的解码能够在没有来自任何在同一层中具有与该IDR图像分别相同的temporal—level、dependency—id和quality—level值的、按解码顺序先于该IDR图像的图像的帧间预测的情况下执行,其中如果两幅图像具有相同的temporal—level、dependency—id和quality—level4直,贝'J这两幅图像认为是在同一层中。22.根据权利要求21所述的计算机程序产品,其中如果temporal—level、dependency—id和quality—level中任一不等于零,则在解码所述IDR图像之后,立即将所有具有与所述IDR图像分别相同的temporal—level、dependency—id和quality—level值的参考图"f象标记为"未用于参考"。23.根据权利要求21所述的计算机程序产品,其中如果temporal—level、dependency—id和quality—level都等于零,贝'j在解码所述IDR图像之后,立即将所有参考图像标记为"未用于参考"。24.根据权利要求17所述的计算机程序产品,其中按如下方式对所述切4灸点进4亍编石马如果temporal—level、dependency—id和quality—level都等于零的图像是IDR图像,则将位于同一存取单元的所有其他图像都定义为IDR图像。25.根据权利要求24所述的计算机程序产品,其中通过定义补充增强信息(SEI)消息以指示图像是EIDR图像来对所述切换点进行编码。26.根据权利要求17所述的计算机程序产品,其中通过针对所有可伸缩层使用SEI消息以指示与该SEI消息相关联的目标图像是能够用于从低到高的层切换的EIDR图像来对所述切换点进行编码。27.—种支持在包括基本层和至少一个增强层的视频比特流中从低到高的可伸缩层切换的计算机程序产品,包括用于对该视频比特流的文件格式层内的多个从低到高的层切换点进行编码的计算机代码,其中该多个从低到高的层切换点不在即时解码刷新(IDR)存取单元的位置处。28.根据权利要求27所述的计算机程序产品,其中通过在包含针对每个可伸缩层的可伸缩性信息的数据结构中包括盒子来对所述切换点进行编码。29.根据权利要求27所述的计算机程序产品,其中通过在所述视频比特流中包括指示所有层的切换点的盒子来对所述切换点进行编码。根据权利要求27所述的计算机程序产品,其中通过包括指示存在于线索轨道或提取器轨道之间的从低到高的层切换点的盒子来对所述切换点进行编码。30.根据权利要求31所述的计算机程序产品,其中在媒体轨道中用信号发送的信息被重新利用以便获得存在于所述线索轨道或提取器轨道之间的所述从低到高的层切换点。31.—种电子设备,包括处理器;以及存储器单元,可操作地连接到所述处理器,并且包括用于支持在包括基本层和至少一个增强层的视频比特流中从低到高的可伸缩层切换的计算机程序产品,包括用于在所述视频比特流中对多个从低到高的层切换点进行编码的计算机代码,其中所述多个从低到高的层切换点不在即时解码刷新(IDR)存取单元的位置处。32.根据权利要求33所述的电子设备,其中所述存储单元还包括用于使用所述已编码的切换点从所述视频比特流中的较低层切换到所述视频比特流中的较高层的计算机代码。33.根据权利要求33所述的电子设备,其中通过定义NAL单元类型以指示包含特定NAL单元类型的已编码片的图像是增强层即时解码刷新(EIDR)图像来对所述切换点进行编码。34.根据权利要求33所述的电子设备,其中通过定义补充增强信息(SEI)消息以指示图像是EIDR图像来对所述切换点进行编码。35.根据权利要求33所述的电子设备,其中按如下方式对所述切换点进4亍编码其中如果temporal—level、dependency—id和qualityjevel值都等于零,则将IDR图像定义为这样的已编码图像,其中对该IDR图像以及按解码顺序随后的所有已编码图像的解码能够在没有来自任何按解码顺序先于该IDR图像的图像的帧间预测的情况下执行;以及,如果temporal—level、dependency—id和quality—level值中任一不等于零,则将IDR图像定义为这样的已编码图像,其中该IDR图像以及在同一层中按解码顺序随后的所有已编码图像的解码能够在没有来自任何在同一层中具有与该IDR图像分别相同的temporal—level、dependency—id和quality一level值的、按解码顺序先于该IDR图像的图像的帧间预测的情况下执行,其中如果两幅图像具有相同的temporal—level、dependency—id和quality—level值,贝寸这两幅图^象认为是在同一层中。36.根据权利要求37所述的电子设备,其中如果temporal」evel、dependency—id和quality—level中任一不等于零,则在解码所述IDR图像之后,立即将所有具有与所述IDR图像分别相同的temporal—level、dependency—id和quality—level4直的参考图j象标i己为"未用于参考"。37.根据权利要求37所述的电子设备,其中如果temporal—level、dependency—id和quality—level都等于零,则在解码所述IDR图像之后,立即将所有参考图像标记为"未用于参考"。38.根据权利要求33所述的电子设备,其中按如下方式对所述士刀才奂点进4亍编石马唢口果temporal—level、dependency—id和quality—level都等于零的图像是IDR图像,则将位于同一存取单元的所有其他图像都定义为IDR图像。39.根据权利要求40所述的电子设备,其中通过定义补充增强信息(SEI)消息以指示图像是EIDR图像来对所述切换点进行编码。40.根据权利要求33所述的电子设备,其中通过针对所有可伸缩层使用SEI消息以指示与该SEI消息相关联的目标图像是能够用于从低到高的层切换的EIDR图像来对所述切换点进行编码。41.一种电子设备,包括处理器;以及存储器单元,可操作地连接到所述处理器,并且包括用于支持在包括基本层和至少一个增强层的视频比特流中从低到高的可伸缩层切换的计算机程序产品,包括用于对该视频比特流的文件格式层内的多个从低到高的层切换点进行编码的计算机代码,其中该多个从低到高的层切换点不在即时解码刷新(IDR)存取单元的位置处。42.根据权利要求43所述的电子设备,其中所述存储单元还包括用于使用所述已编码的切换点从所述视频比特流中的较低层切换到所述视频比特流中的较高层的计算机代码。43.根据权利要求43所述的电子设备,其中通过在包含针对每个可伸缩层的可伸缩性信息的数据结构中包括盒子来对所述切换点进行编码。44.根据权利要求43所述的电子设备,其中通过在所述视频比特流中包括指示所有层的切换点的盒子来对所述切换点进行编码。45.根据权利要求43所述的电子设备,其中通过包括指示存在于线索轨道或提取器轨道之间的从低到高的层切换点的盒子来对所述切换点进行编码。46.根据权利要求47所述的电子设备,其中在媒体轨道中用信号发送的信息被重新利用以便获得存在于所述线索轨道或提取器轨道之间的所述从低到高的层切换点。47.—种流传输系统中的单元,包括第一组件,用于接收包括至少两个可伸缩层的视频比特流;第二组件,用于标识所述视频比特流内从低到高的层切换点,其中所述从低到高的层切换点不在任何即时解码刷新(IDR)存取单元的位置处;以及第三组件,用于在所述从低到高的层切换点处从可伸缩层的子集的传输切换到可伸缩层的更大子集。48.—种流传输系统中的单元,包括第一组件,用于接收包括至少两个可伸缩层的视频比特流;第二组件,用于标识所述视频比特流的文件格式层内的从低到高的层切换点,其中所述从低到高的层切换点不在任何即时解码刷新(IDR)存取单元的位置处;以及第三组件,用于在所述从低到高的层切换点处从可伸缩层的子集的传输切换到可伸缩层的更大子集。全文摘要一种系统和方法,用于在文件格式层中信令从低到高的层切换点,以支持在流服务器和本地文件回放中的有效的可伸缩流切换。本发明还提供一种系统和方法,用于在视频比特流中信令从低到高的层切换点,例如,用以支持在可知媒体网元中的智能转发可伸缩层或者在流接收方的计算上的可伸缩解码。文档编号H04N7/26GK101317460SQ200680044490公开日2008年12月3日申请日期2006年10月11日优先权日2005年10月11日发明者M·安尼克塞拉,Y-K·王申请人:诺基亚公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1