用于视频流拼接的方法及装置的制作方法

文档序号:7936586阅读:100来源:国知局
专利名称:用于视频流拼接的方法及装置的制作方法
技术领域
本原理总地涉及视频编码与解码,并更具体地涉及用于视频流拼接的方法及装置。

背景技术
视频流拼接是经常使用的例程。流拼接的典型应用包括例如视频编辑、并行编码和广告插入等等。
由于经常通过通道(channel)传输经过压缩的视频流,因此需要在编码器和解码器处使用缓冲机制来对比特率变化进行平滑。物理缓冲器的大小是有限的,因此,编码器应当约束比特率变化以满足在缓冲器限制之内。视频编码标准未要求特定编码器或解码器缓冲机制,但指定了编码器控制比特率波动,使得给定缓冲器大小的假定参考解码器(hypothetical reference decoder,HRD)将解码视频比特流,而不遭受缓冲器上溢或下溢。
假定参考解码器是基于理想化的解码器模型的。假定参考解码器的目的在于对已编码的流中比特率随时间的变化设置基本的缓冲约束。这些约束然后使得较高的层能够复用流,并使得节省成本的(cost-effective)解码器能够实时解码流。假定参考解码器一致性(conformance)是在国际标准化组织/国际电工委员会(ISO/IEC)运动画面专家组-4(MPEG-4)第10部分高级视频编码(AVC)标准/国际电信联盟电信部门(ITU-T)H.264建议(下文中“MPEG-4AVC标准”)中的规范性的部分,因此,任何源的符合MPEG-4AVC标准的流内在地满足假定参考解码器要求。
拼接符合MPEG-4AVC标准的视频流(下文中“MPEG-4AVC标准流”)的主要挑战之一是确保利用两个独立的源流拼接的流仍然满足如由MPEG-4AVC标准所定义的假定参考解码器要求。然而,使用现有规范,不能保证由已经符合HRD的源流组合成的流仍然将符合HRD。因此,拼接MPEG-4AVC标准流不是简单的剪切-粘贴操作。
在MPEG-4AVC标准中指定了假定参考解码器。如MPEG-4AVC标准中所定义的,假定参考解码器模型防止已经按顺序编码的MPEG-4AVC流在解码器处导致缓冲器上溢或下溢。然而,已经认定了在当今的假定参考解码器模型中阻止拼接后的流符合假定参考解码器的三个问题。这些问题是 1.接合点之后的第一画面从编码画面缓冲器中移除的不正确的移除时间。
2.当与具有不同的初始解码画面缓冲器延迟的源流接合时的不正确的画面输出定时。
3.违背等式C-15和C-16,这可能导致缓冲器下溢或上溢。
因此,根据本原理,这里提供的方法和装置至少解决现有技术的上述缺陷,以确保拼接后的流是符合假定参考解码器的。
现在将提供与本原理有关的一些术语及其对应的定义。
tr,n(n)访问单元n的标称(nominal)移除时间,即,用于从编码画面缓冲器(CPB)中移除访问单元n的移除时间。
tr(n)访问单元n的实际移除时间,即,用于从编码画面缓冲器移除访问单元n并立刻解码的实际时间。
tai(n)访问单元n的最初到达时间,在该时间,访问单元n的第一比特开始进入编码画面缓冲器。
taf(n)访问单元n的最终到达时间,在该时间,访问单元n的最后一比特进入编码画面缓冲器。
to,dpb(n)解码画面缓冲器(DPB)输出时间,即,访问单元n从解码画面缓冲器输出的时间。
num_units_in_tick是序列参数集中指定以频率time_scale Hz操作的时钟的时间单元的数量的语法元素,所述频率time_scale Hz对应于时钟计时单元(clock tick)计数器的一个增量(称为时钟计时单元)。num_units_in_tick应当大于0。时钟计时单元是在编码数据中可以表示的最小时间间隔。例如,当视频信号的时钟频率是60000÷1001Hz时,time_scale可以等于60000,并且num_units_in_tick可以等于1001。
time_scale是在一秒内经过的时间单元的数量。例如,使用27MHz时钟来测量时间的时间坐标系统具有27000000的time_scale。time_scale应当大于零。
画面定时SEI消息存储画面定时信息的语法结构,如cpb_removal_delay,dpb_output_delay。
缓冲时段SEI消息存储缓冲时段信息的语法结构,如initial_cpb_removal_delay。
缓冲时段按解码顺序在缓冲时段补充增强信息消息的两个实例之间的访问单元的设置。
SchedSelldx指示选择哪组假定参考解码器参数(传输速率、缓冲器大小、以及初始缓冲器充满程度(fullness))的索引。比特流可符合多组假定参考解码器参数。
在拼接点处的cpb_removal_delay的不正确的值 在当前的假定参考解码器要求中,cpb_removal_delay指定在从该缓冲器中移除与画面定时补充增强信息消息相关联的访问单元数据之前,在从编码画面缓冲器中移除与最近的缓冲时段补充增强信息消息相关联的访问单元之后,要等待多少时钟计时单元。通过下式指定从编码画面缓冲器中移除访问单元n的标称移除时间 tr,n(n)=tr,n(nb)+tc*cpb_removal_delay(n) (C-8) 其中变量tc如下得出,并且被称为时钟计时单元。
tc=num_units_in_tick*time_scale(C-1) 对于缓冲时段的第一访问单元,tr,n(nb)是前一缓冲时段的第一访问单元的标称移除时间,这意味着需要知道前一缓冲时段的长度,以便正确地设置画面定时补充增强信息消息中的cpb_removal_delay。当独立地编码源流时,源流的简单接合(concatenation)将产生有问题的编码画面缓冲器移除定时。图1中示出了示例。
转到图1,通过参考标号100总地指示由不正确的cpb_removal_delay导致的示例性的有问题的解码定时情形。
在图1的情形中,从源流1提取片段A,并且从源流2提取片段D。流1和流2每个都是独立的符合HRD的流。接合片段A和片段D以形成新的流。假设每个片段从片段的起点开始仅具有一个缓冲时段。在拼接的流中,片段D的第一访问单元的标称移除时间是有问题的,这是因为它是从片段A中的第一访问单元的标称移除时间、结合从片段C的长度得到的cpb_removal_delay而得到的。
失配的初始dpb_output_delay 在当前版本的MPEG-4AVC标准中,如下定义来自解码画面缓冲器的画面输出定时。
画面n的解码画面缓冲器输出时间从下式得到 to,dpb(n)=tr(n)+tc*dpb_output_delay(n)(C-12) 其中dpb_output_delay指定在可以从解码画面缓冲器输出解码画面之前、从编码画面缓冲器中移除访问单元之后要等待多少时钟计时单元。
流的第一访问单元的dpb_output_delay是初始dpb_output_delay。最小初始dpb_output_delay用于确保解码和输出的因果关系(casual relation)。初始dpb_output_delay的最小要求取决于整个序列中的画面再排序关系。
作为示例,对于用GOP型IIIII...编码的序列,初始dpb_output_delay的最小要求是0帧,如图2所示。转到图2,通过参考标号200总地指示流A的示例性解码定时和显示定时之间的关系。具体地,通过参考标号210指示解码定时,并通过参考标号220指示显示定时。
应认识到,在图2-6中,无线条阴影线的实线指示I画面,对角线阴影线指示P画面,并且水平线阴影线指示B画面。
作为另一示例,对于用GOP型IbPbP...编码的序列,要求最小1帧的初始dpb_output_delay,如图3所示。转到图3,通过参考标号300总地指示流B的示例性解码定时和显示定时之间的关系。具体地,通过参考标号210指示解码定时,并通过参考标号320指示显示定时。
在流拼接中,所有源流的初始dpb_output_delay必须相同。否则,初始dpb_output_delay的失配将导致输出定时问题,如例如两个帧在同一时间输出(重叠)、或者在各帧之间插入额外的间隙。
转到图4,通过参考标号400总地指示流A和流B的接合(concatenation)的示例性解码定时和显示定时之间的关系。具体地,通过参考标号410指示解码定时,并通过参考标号420指示显示定时。
转到图5,通过参考标号500总地指示流B和流A的另一接合的示例性解码定时和显示定时之间的关系。具体地,通过参考标号510指示解码定时,并通过参考标号520指示显示定时。
图4和5图示在失配的初始dpb_output_delay值的情况下的输出定时问题。
为了满足因果关系,所有源流的初始dpb_output_delay的值必须相同,并且不小于所有源流的最大初始dpb_output_delay,如图6所示。
转到图6,通过参考标号600总地指示具有不小于最大初始dpb_output_delay的相同的初始dpb_output_delay值的所有源流的示例性解码定时和显示定时之间的关系。具体地,通过参考标号610指示解码定时,并通过参考标号620指示显示定时。
违背等式C-15/C-16 当前的假定参考解码器对缓冲时段补充增强信息消息中的initial_cpb_removal_delay设置了如下约束。
对于与缓冲时段SEI消息相关联的每个访问单元n,其中n>0,Δtg,90(n)由下式指定 Δtg,90(n)=90000*(tr,n(n)-taf(n-1)) (C-14) 如果cbr_flag[SchedSelldx]等于0,则 initial_cpb_removal_delay[SchedSelldx]<=Ceil(Δtg,90(n)) (C-15) 否则(cbr_flag[SchedSelldx]等于1),则 Floor(Δtg,90(n))<=initial_cpb_removal_delay[SchedSelldx]<=Ceil(Δtg,90(n)) (C-16) 当独立编码各源流时,因为施加到后面的源流的initial_cpb_removal_delay的约束(Δtg,90(n))发生了改变,所以拼接的流可能很容易违背这些条件。转到图7,通过参考标号700总地指示违背initial_cpb_removal_delay约束的拼接视频的示例。具体地,通过参考标号710指示第一源流,并且通过参考标号720指示第二源流。
在之前的视频编码标准中,如例如在国际标准化组织/国际电工委员会(ISO/IEC)运动画面专家组-2标准(下文中“MPEG-2AVC标准”)中,流拼接不是挑战,这是因为MPEG-2视频缓冲器验证器(与MPEG-4AVC标准中的假定参考解码器类似的概念)的行为在实现方式上、并最终在最后的结果上与MPEG-4AVC标准中的假定参考解码器不同。由于以下原因,由关于MPEG-4AVC标准的HRD行为所导致的问题在关于MPEG-2标准的视频实现方式中不存在 1.通过前一画面的类型得到画面的解码时间,因此,在简单接合的情况下解码时间不存在问题。
2.对于画面输出定时没有要求。
3.对于initial_cpb_removal_delay没有限制。初始缓冲器充满程度基于随每个画面发送的vbv_delay。可通过插入零填充比特或额外等待时间来防止缓冲器下溢或上溢。
MPEG-2基本流还可以封装到传送流(TS)中以用于传输。电影和电视工程师协会(SMPTE)对MPEG-2传送流的拼接进行了标准化。基本思想是定义MPEG-2传送流的约束,使得能够拼接MPEG-2传送流而无需修改其中包括的分组化的基本流(packetized elementary stream,PES)分组的有效负荷。
然而,对于MPEG-4AVC流,还不存在克服与其相关联的上述问题的解决方案。


发明内容
通过本原理来解决现有技术的这些和其他缺点和劣势,本原理针对用于视频流拼接的方法和装置。
根据本原理的一方面,提供了一种装置。所述装置包括拼接视频流生成器,用于使用假定参考解码器参数来创建拼接的视频流。
根据本原理的另一方面,提供了一种装置。所述装置包括拼接视频流生成器,用于通过修改至少一个与假定参考解码器相关的高级语法元素的标准值来创建拼接的视频流,所述拼接的视频流防止与所述拼接的视频流相关的解码器缓冲器上溢和下溢状况。
根据本原理的另一方面,提供了一种方法。所述方法包括使用所述假定参考解码器参数来创建拼接的视频流。
根据本原理的另一方面,提供了一种方法。所述方法包括通过修改至少一个与假定参考解码器相关的高级语法元素的标准值来创建拼接的视频流,所述拼接的视频流防止与所述拼接的视频流相关的解码器缓冲器上溢和下溢状况。
根据本原理的另一方面,提供了一种装置。所述装置包括拼接视频流生成器,用于接收拼接的视频流的假定参考解码器参数,并且用于使用所述假定参考解码器参数来再现所述拼接的视频流。
根据本原理的另一方面,提供了一种装置。所述装置包括拼接视频流生成器,用于接收与拼接的视频流相对应的、至少一个与假定参考解码器相关的高级语法元素的修改后的标准值,并且用于使用至少一个与假定参考解码器相关的高级语法元素的修改后的标准值来再现所述拼接的视频流,同时防止与所述拼接的视频流相关的解码器缓冲器上溢和下溢状况。
根据本原理的另一方面,提供了一种方法。所述方法包括接收拼接的视频流的假定参考解码器参数。所述方法还包括使用所述假定参考解码器参数来再现所述拼接的视频流。
根据本原理的另一方面,提供了一种方法。所述方法包括接收与拼接的视频流相对应的、至少一个与假定参考解码器相关的高级语法元素的修改后的标准值。所述方法还包括使用至少一个与假定参考解码器相关的高级语法元素的修改后的标准值来再现所述拼接的视频流,同时防止与所述拼接的视频流相关的解码器缓冲器上溢和下溢状况。
结合附图阅读示例性实施例的以下详细描述,本原理的这些和其他方面、特征及优点将变得明显。



根据下面的附图可以更好地理解本原理,附图中 图l是示出根据现有技术的、由不正确的cpb_removal_delay导致的示例性有问题的解码定时情形的图; 图2是示出根据现有技术的、在流A的示例性解码定时和显示定时之间的关系的图; 图3是示出根据现有技术的、在流B的示例性解码定时和显示定时之间的关系的图; 图4是示出根据现有技术的、在流A和流B的接合的示例性解码定时和显示定时之间的关系的图; 图5是示出根据现有技术的、在流B和流A的另一接合的示例性解码定时和显示定时之间的关系的图; 图6是示出根据现有技术的、对于具有不小于最大初始dpb_output_delay的相同的初始dpb_output_delay值的所有源流的示例性解码定时和显示定时之间的关系的图; 图7是示出根据现有技术的、违背initial_cpb_removal_delay约束的拼接的视频的示例的图; 图8是根据本原理的实施例的、可应用本原理的示例性视频编码器的框图; 图9是根据本原理的实施例的、可应用本原理的示例性视频解码器的框图; 图10是根据本原理的实施例的示例性HRD一致性验证器的框图; 图11A是根据本原理的实施例的、用于插入拼接补充增强信息(SEI)消息的示例性方法的流程图; 图11B是根据本原理的实施例的、用于插入拼接补充增强信息(SEI)消息的另一示例性方法的流程图; 图12是根据本原理的实施例的、用于解码拼接补充增强信息(SEI)消息的示例性方法的流程图; 图13是根据本原理的实施例的、用于得到标称移除时间tr,n(n)的示例性方法的流程图; 图14A是根据本原理的实施例的、用于得到解码画面缓冲器(DPB)输出时间to,dpb(n)的示例性方法的流程图; 图14B是根据本原理的实施例的、用于得到解码画面缓冲器(DPB)输出时间to,dpb(n)的另一示例性方法的流程图; 图15A是根据本原理的实施例的、用于插入补充增强信息(SEI)消息的另一示例性方法的流程图;以及 图15B是根据本原理的实施例的、用于解码补充增强信息(SEI)消息的另一示例性方法的流程图; 图16是根据本原理的实施例的示例性拼接流生成器的框图; 图17是根据本原理的实施例的、用于创建拼接的视频流的示例性方法的流程图; 图18是根据本原理的实施例的、用于再现拼接的视频流的示例性方法的流程图; 图19是根据本原理的实施例的、用于创建拼接的视频流的另一示例性方法的流程图;以及 图20是根据本原理的实施例的、用于再现拼接的视频流的另一示例性方法的流程图;
具体实施例方式 本原理针对用于视频流拼接的方法和装置。
本描述说明本原理。因此,应理解本领域技术人员将能够开发出体现本原理并被包括在本原理精神和范围之内的各种布置,尽管这些布置并未在这里被明确描述或示出。
这里叙述的所有示例和条件语句意图用于教学目的以便帮助读者理解本原理以及由发明者所贡献以促进本领域的构思,并且这里叙述的所有示例和条件语句应被解释为不限于这样具体叙述的示例和条件。
此外,这里叙述本原理的原理、方面和实施例以及本原理的具体示例的所有陈述意图包含其结构上的以及功能上的等效物。此外,意图使这样的等效物包括当前已知的等效物以及将来开发的等效物两者,即,不论结构如何、被开发来执行相同功能的任何元件。
因此,例如本领域技术人员将理解这里呈现的框图表示体现本原理的图示性电路的概念性视图。类似地,将理解任何流程图、流程图示、状态转换图、伪代码等表示可以被实质上表示在计算机可读介质中并且因此可以由计算机或处理器执行的各种处理,而不论是否明确示出了这样的计算机或处理器。
可以通过使用专用硬件以及与适当软件相关的、能够执行软件的硬件来提供图中所示的各种元件的功能。当通过处理器提供时,该功能可以通过单个专用处理器、通过单个共享处理器、或者通过多个单独的处理器来提供,所述多个单独的处理器中的一些处理器可以被共享。此外,术语“处理器”或“控制器”的明确使用不应被解释为排外地指代能够执行软件的硬件,并且可以隐含地包括但不限于数字信号处理器(“DSP”)硬件、用于存储软件的只读存储器(“ROM”)、随机存取存储器(“RAM”)以及非易失性存储装置。
还可以包括传统的和/或定制的其他硬件。类似地,图中所示的任何开关仅是概念性的。可以通过程序逻辑的操作、通过专用逻辑电路、通过程序控制与专用逻辑电路的交互作用、或者甚至是手动地执行它们的功能,如从上下文中更具体理解的,实施者可以选择具体技术。
在本申请权利要求书中,被表达为用于执行特定功能的部件的任何元件意图包括执行该功能的任何方式,包括例如a)执行该功能的电路元件的组合,b)与用于执行软件的适当电路相结合以执行该功能的任何形式的软件,因此包括固件、伪代码等。由这样的权利要求书限定的本原理在于以下事实以权利要求书要求的方式将由各种所叙述的部件提供的功能组合并结合在一起。因此,可以提供那些功能的任何部件被视为等效于这里示出的那些部件。
说明书中引用的本原理的“一个实施例”或者“实施例”指结合该实施例描述的特定特征、结构、特性等等包含在本原理的至少一个实施例中。由此,在贯穿说明书的各处出现的词句“在一个实施例中”或者“在实施例中”不一定都指同一实施例。
应该认识到,术语“和/或”的使用,例如在“A和/或B”的情况下,意图包括选择所列的第一选项(A)、选择所列的第二选项(B)、或者选择两个选项(A与B)。作为进一步的示例,在“A、B、和/或C”的情况下,此类词句意图包括选择所列的第一选项(A)、选择所列的第二选项(B)、选择所列的第三选项(C)、选择所列的第一与第二选项(A与B)、选择所列的第一与第三选项(A与C)、选择所列的第二与第三选项(B与C)、或者选择全部三个选项(A与B与C)。本领域与相关领域的普通技术人员容易理解,可以将此扩展到所列的诸多项目。
此外,应认识到,尽管在此关于MPEG-4AVC标准描述本原理的一个或多个实施例,但是本原理不仅限于该标准,并因此可关于其他视频编码标准、建议及其扩展(包括MPEG-4AVC标准的扩展)使用本原理,同时保持本原理的精神。
转到图8,通过参考标号800总地指示可应用本原理的示例性视频编码器。
视频编码器800包括帧排序缓冲器810,该帧排序缓冲器810具有与组合器885的同向输入端进行信号通信的输出端。组合器885的输出端以信号通信方式与变换器和均衡器825的第一输入端连接。变换器和均衡器825的输出端以信号通信方式与熵编码器845的第一输入端以及逆变换器和逆均衡器850的第一输入端连接。熵编码器845的输出端以信号通信方式与组合器890的第一同向输入端连接。组合器890的输出端以信号通信方式与输出缓冲器835的第一输入端连接。
编码器控制器805的第一输出端以信号通信方式与帧排序缓冲器810的第二输入端、逆变换器和逆均衡器850的第二输入端、画面类型判定模块815的输入端、宏块类型(MB类型)判定模块820的输入端、帧内预测模块860的第二输入端、去块(deblocking)滤波器865的第二输入端、运动补偿器870的第一输入端、运动估计器875的第一输入端、和参考画面缓冲器880的第二输入端连接。
编码器控制器805的第二输出端以信号通信方式与补充增强信息(SEI)插入器830的第一输入端、变换器和均衡器825的第二输入端、熵编码器845的第二输入端、输出缓冲器835的第二输入端、以及序列参数集(SPS)和画面参数集(PPS)插入器840的输入端连接。
画面类型判定模块815的第一输出端以信号通信方式与帧排序缓冲器810的第三输入端连接。画面类型判定模块815的第二输出端以信号通信方式与宏块类型判定模块820的第二输入端连接。
序列参数集(SPS)和画面参数集(PPS)插入器840的输出端以信号通信方式与组合器890的第三同向输入端连接。
逆均衡器和逆变换器850的输出端以信号通信方式与组合器819的第一同向输入端连接。组合器819的输出端以信号通信方式与帧内预测模块860的第一输入端和去块滤波器865的第一输入端连接。去块滤波器865的输出端以信号通信方式与参考画面缓冲器880的第一输入端连接。参考画面缓冲器880的输出端以信号通信方式与运动估计器875的第二输入端连接。运动估计器875的第一输出端以信号通信方式与运动补偿器870的第二输入端连接。运动估计器875的第二输出端以信号通信方式与熵编码器845的第三输入端连接。
运动补偿器870的输出端以信号通信方式与开关897的第一输入端连接。帧内预测模块860的输出端以信号通信方式与开关897的第二输入端连接。宏块类型判定模块820的输出端以信号通信方式与开关897的第三输入端连接。开关897的第三输入端确定开关的“数据”输入(与控制输入(即,第三输入端)相比)是由运动补偿器870提供还是由帧内预测模块860提供。开关897的输出端以信号通信方式与组合器819的第二同向输入端和组合器885的反向输入端连接。
帧排序缓冲器810和编码器控制器805的输入端可用作编码器800的、用于接收输入画面801的输入端。此外,补充增强信息(SEI)插入器830的输入端可用作编码器800的、用于接收元数据的输入端。输出缓冲器835的输出端可用作编码器800的、用于输出比特流的输出端。
转到图9,通过参考标号900总地指示可应用本原理的示例性视频解码器。
视频解码器900包括输入缓冲器910,该输入缓冲器910具有以信号通信方式与熵解码器945的第一输入端和补充增强信息(SEI)解析器907的第一输入端连接的输出端。熵解码器945的第一输出端以信号通信方式与逆变换器和逆均衡器950的第一输入端连接。逆变换器和逆均衡器950的输出端以信号通信方式与组合器925的第二同向输入端连接。组合器925的输出端以信号通信方式与去块滤波器965的第二输入端和帧内预测模块960的第一输入端连接。去块滤波器965的第二输出端以信号通信方式与参考画面缓冲器980的第一输入端连接。参考画面缓冲器980的输出端以信号通信方式与运动补偿器970的第二输入端连接。
熵解码器945的第二输出端以信号通信方式与运动补偿器970的第三输入端和去块滤波器965的第一输入端连接。熵解码器945的第三输出端以信号通信方式与解码器控制器905的第一输入端连接。SEI解析器907的输出端以信号通信方式与解码器控制器905的第二输入端连接。解码器控制器905的第一输出端以信号通信方式与熵解码器945的第二输入端连接。解码器控制器905的第二输出端以信号通信方式与逆变换器和逆均衡器950的第二输入端连接。解码器控制器905的第三输出端以信号通信方式与去块滤波器965的第三输入端连接。解码器控制器905的第四输出端以信号通信方式与帧内预测模块960的第二输入端、运动补偿器970的第一输入端、以及参考画面缓冲器980的第二输入端连接。
运动补偿器970的输出端以信号通信方式与开关997的第一输入端连接。帧内预测模块960的输出端以信号通信方式与开关997的第二输入端连接。开关997的输出端以信号通信方式与组合器925的第一同向输入端连接。
输入缓冲器910的输入端可用作解码器900的、用于接收输入比特流的输入端。去块滤波器965的第一输出端可用作解码器900的、用于输出输出画面的输出端。
如上所述,本原理针对用于视频流拼接的方法和装置。本原理主要关于对符合MPEG-4AVC标准的一个或多个流进行流拼接来进行描述。然而,应认识到,本原理不限于符合MPEG-4AVC标准的流,并且可以应用到具有与涉及MPEG-4AVC标准的现有技术的流拼接的问题类似的问题的其他视频编码标准和建议,同时保持本原理的精神。
假定参考解码器(HRD)一致性是MPEG-4AVC标准的规范化的部分。涉及MPEG-4AVC标准的流拼接的主要问题在于不能保证利用独立的符合HRD的源流拼接的流仍然是符合HRD的。
因此,本原理提供了能够创建拼接的流、同时确保该拼接的流符合MPEG-4AVC标准的方法和装置。根据本原理的方法和装置确保由符合假定参考解码器(HRD)的源流创建的流仍然是符合HRD的。在一个或多个实施例中,这通过改变在缓冲时段补充增强信息(SEI)消息和画面定时补充增强信息消息中设置的假定参考解码器参数、和/或通过修改在MPEG-4AVC标准中指定的假定参考解码器行为以支持流拼接来实现。
现在将提供关于这里使用的各种术语的定义。
内点(in-point)紧接在拼接边界之后的访问单元。内点必须是IDR画面,并且必须存在与内点相关联的缓冲时段SEI消息。
外点(out-point)紧接在拼接边界之前的访问单元。
拼接类型存在两类拼接,即,无缝拼接和非无缝拼接。无缝拼接允许流的完全的(clean)、即刻的切换。要拼接的视频流被创建为在该拼接处具有匹配的假定参考解码器缓冲器特性。旧流结束和解码最后的旧画面之间的时间要比新流的启动延迟恰好小一帧。非无缝拼接通过在两个流之间插入短暂的死区时间(dead time)来避免解码器缓冲器上溢。这确保了新流以空的缓冲器开始。拼接设备在插入新流之前等待,以确保解码器的缓冲器是空的,从而避免上溢的可能。在新流的启动延迟期间,解码器的画面应当静止(freeze)。
现在将描述根据本原理的视频流拼接的方法。
根据本方法,下述的新假定参考解码器可以简化流拼接操作。
与在当前版本的MPEG-4AVC标准中的假定参考解码器相比,这里描述的假定参考解码器包括/涉及下述内容添加用于指示接合的位置的新的语法元素;基于拼接的类型(即,无缝或非无缝拼接)、得到从编码画面缓冲器(CPB)中移除新流的第一访问单元的移除时间的新规则;以及得到拼接的流中的解码画面缓冲器(DPB)输出时间的新规则。
指示内点的位置并用于得到解码和输出定时的参数可通过高级语法作为流的一部分,例如在带内(in-band)或在带外(out-of-band)传递。
该语法元素的一个示例实现方式是添加用于拼接的新类型的补充增强信息(SEI)消息。拼接补充增强信息(SEI)消息的存在指示新源流的开始。通过拼接设备将拼接补充增强信息消息添加到内点访问单元。
现在将描述上述方法的实施例。
表1中示出拼接补充增强信息消息的语法。
表1 dpb_output_delay_offset用于与画面定时补充增强信息消息中的dpb_output_delay结合来指定解码画面缓冲器的输出延迟。
在该实施例中,明确地发送dpb_output_delay_offset。
缺点在于拼接设备必须解析源流,以便得到dpb_output_delay_offset的值。这对拼接设备增加了更多的工作负荷。因此,在一些情况下,对于在线或实况拼接,这可能不是最佳选择。
现在将描述上述方法的另一实施例。
表2中示出拼接补充增强信息消息的语法。
表2 在该实施例中,不发送dpb_output_delay_offset,而是隐含地得到。
优点在于拼接设备不必解析源流。在解码器侧得到dpb_output_delay_offset的值。
关于上述方法,现在将描述对应的假定参考解码器的行为。
与当前的假定参考解码器相比,如下所述,对拼接流改变假定参考解码器行为。
得到在内点处的画面的标称移除时间。如果访问单元是内点,则cpb_removal_delay指定在从缓冲器中移除与画面定时SEI消息相关联的访问单元之前,在从CPB中移除前一访问单元之后要等待多少时钟计时单元。
如下得到cpb_removal_delay(ns) cpb_removal_delay(ns)=Max(NumClockTS,Floor(initial_cpb_removal_delay[SchedSelldx]*90000)+taf(ns-1)-tr,n(ns-1))(1) 其中ns是内点。
该推导确保将不违背等式(C-15)或(C-16)。
注意,如果cpb_removal_delay(ns)=NumClockTS,则接合是无缝的,否则,接合是非无缝的。
从拼接补充增强信息消息得到解码画面缓冲器输出时间。
在拼接的流中,如下得出访问单元的解码画面缓冲器输出时间 to,dpb(n)=tr(n)+tc*(dpb_output_delay(n)+dpb_output_delay_offset(ns)) (2) 其中ns是最接近的前一内点。
如果应用上述方法的第一实施例,则通过补充增强信息消息中的语法元素传递dpb_output_delay_offset。
如下通过拼接设备得到dpb_output_delay_offset。
dpb_output_delay_offset(ns)=max_initial_delay-dpb_output_delay(ns) (3) 其中max_initial_delay不小于所有内点的dpb_output_delay的最大值。
如果应用上述方法的第二实施例,则如下得到dpb_output_delay_offset将max_initial_delay初始化为0;在每个内点处,如果max_initial_delay<dpb_output_delay,则max_initial_delay=dpb_output_delay;dpb_output_delay_offset(ns)=max_initial_delay-dpb_output_delay(ns)。
注意,如果以不小于所有内点的dpb_output_delay的最大值的值来初始化max_initial_delay,则拼接是无缝的。
因此,根据当前的假定参考解码器,不保证拼接的流仍然将是符合HRD的。
这是因为下述原因当前的标准中的cpb_removal_delay的语义与独立的编码源流的拼接不兼容;不同源流中的失配的初始解码画面缓冲器输出延迟将导致不正确的输出定时;并且initial_cpb_removal_delay将导致违背等式C-15/C-16。
根据本原理,修改当前的假定参考解码器以支持视频拼接。提出这样的解决方案,以通过在拼接点处增加新的补充增强信息消息来确保拼接的流的假定参考解码器一致性。可以解决由当前的假定参考解码器导致的问题并简化流拼接操作。
现在将描述根据本原理的视频流拼接的另一方法。
可通过在创建拼接的流后重新计算最终拼接的流的cpb_removal_delay和dpb_output_delay、并且相应地改变缓冲时段补充增强信息消息和画面定时补充增强信息消息,来解决由cpb_removal_delay和dpb_output_delay导致的问题。
然而,该方法要求替换/改变在每个源流的起点处的缓冲时段补充增强信息消息、以及几乎所有的画面定时补充增强信息消息,这因而要求拼接设备解析所有画面。该方法要求拼接设备中更高的复杂度,并且可能不适于实时视频拼接应用。
针对由initial_cpb_removal_delay导致的问题的任何解决方案通过仅改变缓冲时段补充增强信息消息中的initial_cpb_removal_delay的值来满足等式C-15/C-16中施加的条件将不会起作用。降低initial_cpb_removal_delay可能导致缓冲器下溢、以及之后的画面的最终到达时间的延迟,这可能转为之后的缓冲时段中对等式C-15/C-16的新的违背。
转到图10,通过参考标号1000总地指示对应于第一方法的示例性HRD一致性验证器。
HRD一致性验证器1000包括序列消息过滤器1010,该序列消息过滤器1010具有以信号通信方式与CPB到达和移除时间计算器1050的第一输入端连接的第一输出端。画面和缓冲消息过滤器1020的输出端以信号通信方式与CPB到达和移除时间计算器1050的第二输入端连接。画面大小计算器1030的输出端以信号通信方式与CPB到达和移除时间计算器1050的第三输入端连接。拼接消息过滤器1040的输出端以信号通信方式与CPB到达和移除时间计算器1050的第四输入端连接。
CPB到达和移除时间计算器1050的第一输出端以信号通信方式与约束检查器1060的第一输入端连接。CPB到达和移除时间计算器1050的第二输出端以信号通信方式与约束检查器1060的第二输入端连接。CPB到达和移除时间计算器1050的第三输出端以信号通信方式与约束检查器1060的第三输入端连接。
序列消息过滤器1010的第二输出端以信号通信方式与约束检查器1060的第四输入端连接。
序列消息过滤器1010、画面和缓冲消息过滤器1020、画面大小计算器1030、以及拼接消息过滤器1040的各自输入端可用作HRD一致性验证器1000的、用于接收输入比特流的输入端。
一致性检查器1060的输出端可用作HRD一致性验证器1000的、用于输出一致性指示符的输出端。
转到图11A,通过参考标号1100总地指示用于插入拼接补充增强信息(SEI)消息的示例性方法。
方法1100包括开始块1105,其将控制传到判定块1110。判定块1110确定该访问点是否是内点。如果是,则将控制传到功能块1115。否则,将控制传到结束块1149。
功能块1115将dpb_output_delay_offset(ns)设置为等于(max_initial_delay-dpb_output_delay(ns)),并将控制传到功能块1120。功能块1120将拼接补充增强信息(SEI)网络抽象层(NAL)单元写到比特流,并将控制传到结束块1149。
转到图11B,通过参考标号1150总地指示用于插入拼接补充增强信息(SEI)消息的另一示例性方法。
方法1150包括开始块1155,其将控制传到判定块1160。判定块1160确定该访问点是否是内点。如果是,则将控制传到功能块1165。否则,将控制传到结束块1199。
功能块1165将拼接补充增强信息(SEI)网络抽象层(NAL)单元写到比特流,并将控制传到结束块1199。
转到图12,通过参考标号1200总地指示用于解码拼接补充增强信息(SEI)消息的示例性方法。
方法1200包括开始块1205,其将控制传到功能块1210。功能块1210从比特流中读取网络抽象层(NAL)单元,并将控制传到判定块1215。判定块1215确定NAL单元是否是拼接补充增强信息(SEI)消息。如果是,则将控制传到功能块1220。否则,将控制传到功能块1225。
功能块1220将访问点指定为内点访问点,并将控制传到结束块1299。
功能块1225将访问点指定为非内点访问点,并将控制传到结束块1299。
转到图13,通过参考标号1300总地指示用于得到标称移除时间tr,n(n)的示例性方法。
方法1300包括开始块1305,其将控制传到判定块1310。判定块1310确定当前访问单元是否是内点访问单元。如果是,则将控制传到功能块1315。否则,将控制传到功能块1325。
功能块1315将cpb_removal_delay(ns)设置为等于Max(DeltaTfiDivisor,Ceil((initial_cpb_removal_delay[SchedSelldx].*90000)+taf(ns-1)-tr,n(ns-1)).*tc),并将控制传到功能块1320。功能块1320将tr,n(n)设置为等于tr,n(n-1)+tc*cpb_removal_delay(n),并将控制传到结束块1399。
功能块1325从比特流中读取cpb_removal_delay(n),并将控制传到功能块1330。功能块1330将tr,n(n)设置为等于tr,n(nb)+tc*cpb_removal_delay(n),并将控制传到结束块1399。
转到图14A,通过参考标号1400总地指示用于得到解码画面缓冲器(DPB)输出时间to,dpb(n)的示例性方法。
方法1400包括开始块1405,其将控制传到判定块1410。判定块1410确定当前访问单元是否是第一访问单元。如果是,则将控制传到功能块1415。否则,将控制传到判定块1420。
功能块1415将dpb_output_delay_offset(ns)设置为等于0,并将控制传到判定块1420。判定块1420确定当前访问点是否是内点访问点。如果是,则将控制传到功能块1425。否则,将控制传到功能块1430。
功能块1425从拼接补充增强信息(SEI)中读取dpb_output_delay_offset(ns),并将控制传递到功能块1430。
功能块1430将to,dpb(n)设置为等于tr(n)+tc*(dpb_output_delay(n)+dpb_output_delay_offset(ns)),并将控制传到结束块1449。
转到图14B,通过参考标号1450总地指示用于得到解码画面缓冲器(DPB)输出时间to,dpb(n)的另一示例性方法。
方法1450包括开始块1455,其将控制传到判定块1460。判定块1460确定当前访问单元是否是第一访问单元。如果是,则将控制传到功能块1465。否则,将控制传到判定块1470。
功能块1465将max_initial_delay设置为等于0,将dpb_output_delay_offset(ns)设置为等于0,并将控制传到判定块1470。
判定块1470确定当前访问单元是否是内点访问单元。如果是,则将控制传到判定块1475。否则,将控制传到功能块1490。
判定块1475确定max_initial_delay是否小于dpb_output_delay(n)。如果是,则将控制传到功能块1480。否则,将控制传到功能块1485。
功能块1480将max_initial_delay设置为等于dpb_output_delay(n),并将控制传到功能块1485。
功能块1485将dpb_output_delay_offset(ns)设置为等于max_initial_delay-dpb_output_delay(n),并将控制传到功能块1490。功能块1490设置to,dpb(n)=tr(n)+tc*(dpb_output_delay(n)+dpb_output_delay_offset(ns)),并将控制传到结束块1499。
转到图15A,通过参考标号1500总地指示用于插入补充增强信息(SEI)消息的示例性方法。
方法1500包括开始块1505,其将控制传到判定块1510。判定块1510确定是否已经违背任何HRD规则。如果是,则将控制传到功能块1520。否则,将控制传到结束块1549。
功能块1520计算cpb_removal_delay和dpb_output_delay的新的值,并将控制传到功能块1525。功能块1525替换画面定时SEI消息,并将控制传到功能块1530。功能块1530计算initial_cpb_removal_delay和initial_cpb_removal_delay_offset的新的值,并将控制传到功能块1535。功能块1535替换缓冲时段SEI消息,并将控制传到结束块1549。
转到图15B,通过参考标号1550总地指示用于解码补充增强信息(SEI)消息的示例性方法。
方法1550包括开始块1555,其将控制传到功能块1560。功能块1560从新的画面定时SEI消息中读取修改后的cpb_removal_delay和dpb_output_delay,并将控制传到功能块1565。功能块1565从新的缓冲时段SEI消息中读取修改后的initial_cpb_removal_delay或initial_cpb_removal_delay_offset,并将控制传到结束块1599。
转到图16,通过参考标号1600总地指示示例性拼接流生成器。拼接流生成器1600具有用于接收比特流1到比特流n的输入端1到n。拼接流生成器1600具有用于输出拼接后的流的输出端。
每个输入的比特流(1到n)对应于编码器(如图8的编码器800)的输出比特流。由拼接流生成器1600提供的输出比特流被输入到用于一致性检查的HRD验证器(如图10的HRD一致性验证器1000),和/或被输入到解码器(如图9的解码器900)。
转到图17,通过参考标号1700总地指示用于创建拼接的视频流的示例性方法。
方法1700包括开始块1705,其将控制传到功能块1710。功能块1710计算至少两个流中的至少一个流的访问单元的移除时间,从该至少两个流形成拼接的流,这样的计算基于前一访问单元的移除时间和时间偏置,并将控制传到功能块1715。可在画面定时SEI消息中的cpb_removal_delay字段中传递所述时间偏置,和/或可在解码所述拼接的视频流的对应解码器处计算所述时间偏置。
功能块1715基于访问单元的移除时间和给定时间偏置来计算访问单元的输出时间,并将控制传到功能块1720。所述给定时间偏置可等于dpb_output_delay语法元素和另一时间偏置的和,和/或可在解码所述拼接的视频流的对应解码器处计算所述给定时间偏置。另一时间偏置可等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差,可在SEI消息中传递,和/或可在解码所述拼接的视频流的对应解码器处计算。
功能块1720使用假定参考解码器参数(如通过功能块1710和1715计算的那些参数)来创建拼接的视频流,并将控制传到功能块1725。
功能块1725在带内和/或在带外指示所述拼接的视频流的拼接位置,并将控制传到结束块1799。
转到图18,通过参考标号1800总地指示使用假定参考解码器参数来再现拼接的视频流的示例性方法。
方法1800包括开始块1805,其将控制传到功能块1810。功能块1810在带内和/或在带外接收所述拼接的视频流的拼接位置,并将控制传到功能块1815。
功能块1815从基于至少两个流中的至少一个流的访问单元的前一访问单元的移除时间和时间偏置的先前计算中确定至少两个流中的至少一个流的所述访问单元的移除时间,要从所述至少两个流形成拼接的流,并将控制传到功能块1820。时间偏置可根据画面定时SEI消息中的cpb_removal_delay字段确定,和/或可在解码所述拼接的视频流的对应解码器处计算。
功能块1820从基于访问单元的移除时间和给定时间偏置的先前计算中确定访问单元的输出时间,并将控制传到功能块1825。给定时间偏置可等于dpb_output_delay语法元素和另一时间偏置的和,和/或可在解码所述拼接的视频流的对应解码器处计算。另一时间偏置可以等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差,可以在SEI消息中接收,和/或可以在解码所述拼接的视频流的对应解码器处计算。
功能块1825使用假定参考解码器参数(如通过功能块1815和1820确定和/或以其他方式获得的那些参数)来再现所述拼接的视频流,并将控制传到结束块1899。
转到图19,通过参考标号1900总地指示用于创建拼接的视频流的另一示例性方法。
方法1900包括开始块1905,其将控制传到功能块1910。功能块1910通过接合分开的比特流来创建拼接的视频流,并将控制传到功能块1915。
功能块1915调节所述拼接的比特流中的假定参考解码器参数语法值,以便防止与所述拼接的比特流相关的随后的解码器缓冲器上溢和下溢状况,并将控制传到结束块1999。
转到图20,通过参考标号2000总地指示用于再现拼接的视频流的另一示例性方法。
方法2000包括开始块2005,其将控制传到功能块2010。功能块2010解析所述拼接的比特流,并接收从所述拼接的比特流中提取的假定参考解码器参数,并将控制传到功能块2015。
功能块2015验证假定参考解码器一致性,并将控制传到结束块2099。
现在将描述本发明的许多伴随优点/特征中的一些,其中的一些已经在上面提及。例如,一个优点/特征是一种装置,其包括用于使用假定参考解码器参数来创建拼接的视频流的拼接视频流生成器。
另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中,在带内或在带外指示所述拼接的视频流的拼接位置。
又一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,在带内或在带外指示所述拼接的视频流的拼接位置,其中使用网络抽象层单元指示所述拼接位置。
又一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述使用网络抽象层单元指示所述拼接位置,其中所述网络抽象层单元是补充增强信息消息或流网络抽象层单元的结束。
此外,另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中基于至少两个流中的至少一个流的访问单元的前一访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的移除时间,从该至少两个流形成所述拼接的流。
另外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,基于至少两个流中的至少一个流的访问单元的前一访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的移除时间,从该至少两个流形成所述拼接的流,其中在画面定时补充增强信息消息中的cpb_removal_delay字段中传递所述时间偏置。
此外,另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中基于至少两个流中的至少一个流的访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的输出时间,从该至少两个流形成所述拼接的流。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,基于至少两个流中的至少一个流的访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的输出时间,从该至少两个流形成所述拼接的流,其中在解码所述拼接的视频流的对应解码器处计算所述时间偏置。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,在解码所述拼接的视频流的对应解码器处计算所述时间偏置,其中,时间偏置等于dpb_output_delay语法元素和另一时间偏置的和,所述dpb_output_delay语法元素在画面定时补充增强信息消息中设置。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,时间偏置等于dpb_output_delay语法元素和另一时间偏置的和,所述dpb_output_delay语法元素在画面定时补充增强信息消息中设置,其中在解码所述拼接的视频流的对应解码器处计算另一时间偏置。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,在解码所述拼接的视频流的对应解码器处计算另一时间偏置,其中所述另一时间偏置等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,时间偏置等于dpb_output_delay语法元素和另一时间偏置的和,所述dpb_output_delay语法元素在画面定时补充增强信息消息中设置,其中在补充增强信息消息中传递所述另一时间偏置。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,在补充增强信息消息中传递所述另一时间偏置,其中所述另一时间偏置等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,所述拼接视频流生成器用于通过修改至少一个与假定参考解码器相关的高级语法元素的标准值来创建拼接的视频流,所述拼接的视频流防止与所述拼接的视频流相关的解码器缓冲器上溢和下溢状况。
此外,另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中至少一个与假定参考解码器相关的高级语法元素包括画面定时补充增强信息消息中的cpb_removal_delay语法元素。
此外,另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中至少一个与假定参考解码器相关的高级语法元素包括画面定时补充增强信息消息中的dpb_output_delay语法元素。
此外,另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中至少一个与假定参考解码器相关的高级语法元素包括缓冲时段补充增强信息消息中的intial_cpb_removal_delay语法元素。
此外,另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中所述拼接视频流生成器(1600)创建符合国际标准化组织/国际电工委员会运动画面专家组-4第10部分高级视频编码标准/国际电信联盟电信部门H.264建议的比特流。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,所述拼接视频流生成器用于接收拼接的视频流的假定参考解码器参数,并用于使用所述假定参考解码器参数再现所述拼接的视频流。
另外,另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中在带内或在带外指示所述拼接的视频流的拼接位置。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述在带内或在带外指示所述拼接的视频流的拼接位置,其中使用网络抽象层单元指示拼接位置。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述使用网络抽象层单元指示拼接位置,其中所述网络抽象层单元是补充增强信息消息或流网络抽象层单元的结束。
此外,另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中基于至少两个流中的至少一个流的访问单元的前一访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的移除时间,从该至少两个流形成所述拼接的流。
另外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,基于至少两个流中的至少一个流的访问单元的前一访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的移除时间,从该至少两个流形成所述拼接的流,其中在画面定时补充增强信息消息中的cpb_removal_delay字段中传递所述时间偏置。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,在画面定时补充增强信息消息中的cpb_removal_delay字段中传递所述时间偏置,其中在解码所述拼接的视频流的对应解码器处计算所述时间偏置。
此外,另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中基于至少两个流中的至少一个流的访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的输出时间,从该至少两个流形成所述拼接的流。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,基于至少两个流中的至少一个流的访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的输出时间,从该至少两个流形成所述拼接的流,其中所述时间偏置等于dpb_output_delay语法元素和另一时间偏置的和,所述dpb_output_delay语法元素在画面定时补充增强信息消息中设置。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,时间偏置等于dpb_output_delay语法元素和另一时间偏置的和,所述dpb_output_delay语法元素在画面定时补充增强信息消息中设置,其中在解码所述拼接的视频流的对应解码器处计算另一时间偏置。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,在解码所述拼接的视频流的对应解码器处计算所述另一时间偏置,其中所述另一时间偏置等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,所述时间偏置等于dpb_output_delay语法元素和另一时间偏置的和,所述dpb_output_delay语法元素在画面定时补充增强信息消息中设置,其中在补充增强信息消息中传递所述另一时间偏置。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,在该拼接视频流生成器中,如上所述,在补充增强信息消息中传递另一时间偏置,其中所述另一时间偏置等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差。
此外,另一优点/特征是具有下述拼接视频流生成器的装置,所述拼接视频流生成器用于接收与拼接的视频流相对应的、至少一个与假定参考解码器相关的高级语法元素的修改后的标准值,并用于使用至少一个与假定参考解码器相关的高级语法元素的修改后的标准值来再现所述拼接的视频流,同时防止与所述拼接的视频流相关的解码器缓冲器上溢和下溢状况。
此外,另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中至少一个与假定参考解码器相关的高级语法元素包括画面定时补充增强信息消息中的cpb_removal_delay语法元素。
此外,另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中至少一个与假定参考解码器相关的高级语法元素包括画面定时补充增强信息消息中的dpb_output_delay语法元素。
此外,另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中至少一个与假定参考解码器相关的高级语法元素包括缓冲时段补充增强信息消息中的initial_cpb_removal_delay语法元素。
此外,另一优点/特征是具有如上所述的拼接视频流生成器的装置,其中所述拼接视频流生成器(1600)创建符合国际标准化组织/国际电工委员会运动画面专家组-4第10部分高级视频编码标准/国际电信联盟电信部门H.264建议的比特流。
基于这里的教导,本领域普通技术人员可以容易确定本原理的这些和其它特征和优点。应理解本原理的教导可以以硬件、软件、固件、专用处理器、或其组合的各种形式来实现。
更优选地,本原理的教导被实现为硬件与软件的组合。此外,软件可以实现为有形地体现在程序存储单元上的应用程序。应用程序可以被上载到包括任何适当结构的机器并由该机器执行。优选地,在具有诸如一个或多个中央处理单元(“CPU”)、随机存取存储器(“RAM”)、以及输入/输出(“I/O”)接口等的硬件的计算机平台上实现该机器。计算机平台还可以包括操作系统和微指令代码。这里描述的各种处理与功能可以是可以由CPU执行的微指令代码的一部分或是应用程序的一部分、或者是其任何组合。另外,各种其它外设单元可以连接到计算机平台,如附加数据存储单元以及打印单元。
还应理解,由于在附图中示出的一些组成系统组件和方法优选地以软件实现,因此这些系统组件或处理功能块之间的实际连接可能取决于本原理被编程的方式而有所不同。给出这里的教导,本领域普通技术人员将能够预期本原理的这些和类似的实现方式或配置。
尽管这里已经参考附图描述了示例实施例,应理解本原理不限于那些确切的实施例,并且本领域普通技术人员可以在其中进行各种改变和修改,而不偏离本原理的范围和精神。所有这些改变和修改意在被包括在所附权利要求所要求的本原理的范围之内。
权利要求
1.一种装置,包括
拼接视频流生成器(1600),用于使用假定参考解码器参数创建拼接的视频流。
2.如权利要求1所述的装置,其中在带内或在带外指示所述拼接的视频流的拼接位置。
3.如权利要求2所述的装置,其中使用网络抽象层单元指示所述拼接位置。
4.如权利要求3所述的装置,其中所述网络抽象层单元是补充增强信息消息或流网络抽象层单元的结束。
5.如权利要求1所述的装置,其中基于至少两个流中的至少一个流的访问单元的前一访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的移除时间,从该至少两个流形成所述拼接的流。
6.如权利要求5所述的装置,其中在画面定时补充增强信息消息中的cpb_removal_delay字段中传递所述时间偏置。
7.如权利要求1所述的装置,其中基于至少两个流中的至少一个流的访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的输出时间,从该至少两个流形成所述拼接的流。
8.如权利要求7所述的装置,其中在解码所述拼接的视频流的对应解码器处计算所述时间偏置。
9.如权利要求8所述的装置,其中,所述时间偏置等于dpb_output_delay语法元素和另一时间偏置的和,所述dpb_output_delay语法元素在画面定时补充增强信息消息中设置。
10.如权利要求9所述的装置,其中在解码所述拼接的视频流的对应解码器处计算所述另一时间偏置。
11.如权利要求10所述的装置,其中所述另一时间偏置等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差。
12.如权利要求9所述的装置,其中在补充增强信息消息中传递所述另一时间偏置。
13.如权利要求12所述的装置,其中所述另一时间偏置等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差。
14.一种装置,包括
拼接视频流生成器(1600),用于通过修改至少一个与假定参考解码器相关的高级语法元素的标准值来创建拼接的视频流,所述拼接的视频流防止与所述拼接的视频流相关的解码器缓冲器上溢和下溢状况。
15.如权利要求14所述的装置,其中至少一个与假定参考解码器相关的高级语法元素包括画面定时补充增强信息消息中的cpb_removal_delay语法元素。
16.如权利要求14所述的装置,其中至少一个与假定参考解码器相关的高级语法元素包括画面定时补充增强信息消息中的dpb_output_delay语法元素。
17.如权利要求14所述的装置,其中至少一个与假定参考解码器相关的高级语法元素包括缓冲时段补充增强信息消息中的intial_cpb_removal_delay语法元素。
18.如权利要求14所述的装置,其中所述拼接视频流生成器(1600)创建符合国际标准化组织/国际电工委员会运动画面专家组-4第10部分高级视频编码标准/国际电信联盟电信部门H.264建议的比特流。
19.一种方法,包括
使用假定参考解码器参数创建(1720)拼接的视频流。
20.如权利要求19所述的方法,其中在带内或在带外指示所述拼接的视频流的拼接位置(1220)。
21.如权利要求20所述的方法,其中使用网络抽象层单元指示所述拼接位置。
22.如权利要求21所述的方法,其中所述网络抽象层单元是补充增强信息消息或流网络抽象层单元的结束(1120,1165,1215)。
23.如权利要求19所述的方法,其中基于至少两个流中的至少一个流的访问单元的前一访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的移除时间,从该至少两个流形成所述拼接的流(1320,1330)。
24.如权利要求23所述的方法,其中在画面定时补充增强信息消息中的cpb_removal_delay字段中传递所述时间偏置(1325)。
25.如权利要求24所述的方法,其中在解码所述拼接的视频流的对应解码器处计算所述时间偏置(1315)。
26.如权利要求19所述的方法,其中基于至少两个流中的至少一个流的访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的输出时间,从该至少两个流形成所述拼接的流(1430)。
27.如权利要求26所述的方法,其中所述时间偏置等于dpb_output_delay语法元素和另一时间偏置的和,所述dpb_output_delay语法元素在画面定时补充增强信息消息中设置(1430)。
28.如权利要求27所述的方法,其中在解码所述拼接的视频流的对应解码器处计算所述另一时间偏置(1450)。
29.如权利要求28所述的方法,其中所述另一时间偏置等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差(1485)。
30.如权利要求27所述的方法,其中在补充增强信息消息中传递所述另一时间偏置(1120,1425)。
31.如权利要求30所述的方法,其中所述另一时间偏置等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差(1115)。
32.一种方法,包括
通过修改至少一个与假定参考解码器相关的高级语法元素的标准值来创建(1910,1915)拼接的视频流,所述拼接的视频流防止与所述拼接的视频流相关的解码器缓冲器上溢和下溢状况。
33.如权利要求32所述的方法,其中至少一个与假定参考解码器相关的高级语法元素包括画面定时补充增强信息消息中的cpb_removal_delay语法元素(1520)。
34.如权利要求32所述的方法,其中至少一个与假定参考解码器相关的高级语法元素包括画面定时补充增强信息消息中的dpb_output_delay语法元素(1520)。
35.如权利要求32所述的方法,其中至少一个与假定参考解码器相关的高级语法元素包括缓冲时段补充增强信息消息中的initial_cpbremoval_delay语法元素(1530)。
36.如权利要求32所述的方法,其中创建符合国际标准化组织/国际电工委员会运动画面专家组-4第10部分高级视频编码标准/国际电信联盟电信部门H.264建议的拼接的比特流。
37.一种装置,包括
拼接视频流生成器(1600),用于接收拼接的视频流的假定参考解码器参数,并用于使用所述假定参考解码器参数再现所述拼接的视频流。
38.如权利要求37所述的装置,其中在带内或在带外指示所述拼接的视频流的拼接位置。
39.如权利要求38所述的装置,其中使用网络抽象层单元指示所述拼接位置。
40.如权利要求39所述的装置,其中所述网络抽象层单元是补充增强信息消息或流网络抽象层单元的结束。
41.如权利要求37所述的装置,其中基于至少两个流中的至少一个流的访问单元的前一访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的移除时间,从该至少两个流形成所述拼接的流。
42.如权利要求41所述的装置,其中在画面定时补充增强信息消息中的cpb_removal_delay字段中传递所述时间偏置。
43.如权利要求42所述的装置,其中在解码所述拼接的视频流的对应解码器处计算所述时间偏置。
44.如权利要求37所述的装置,其中基于至少两个流中的至少一个流的访问单元的移除时间和时间偏置计算至少两个流中的至少一个流的所述访问单元的输出时间,从该至少两个流形成所述拼接的流。
45.如权利要求44所述的装置,其中,所述时间偏置等于dpb_output_delay语法元素和另一时间偏置的和,所述dpb_output_delay语法元素在画面定时补充增强信息消息中设置。
46.如权利要求45所述的装置,其中在解码所述拼接的视频流的对应解码器处计算所述另一时间偏置。
47.如权利要求46所述的装置,其中所述另一时间偏置等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差。
48.如权利要求45所述的装置,其中在补充增强信息消息中传递所述另一时间偏置。
49.如权利要求48所述的装置,其中所述另一时间偏置等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差。
50.一种装置,包括
拼接视频流生成器(1600),用于接收与拼接的视频流相对应的、至少一个与假定参考解码器相关的高级语法元素的修改后的标准值,并用于使用至少一个与假定参考解码器相关的高级语法元素的修改后的标准值来再现所述拼接的视频流,同时防止与所述拼接的视频流相关的解码器缓冲器上溢和下溢状况。
51.如权利要求50所述的装置,其中至少一个与假定参考解码器相关的高级语法元素包括画面定时补充增强信息消息中的cpb_removal_delay语法元素。
52.如权利要求50所述的装置,其中至少一个与假定参考解码器相关的高级语法元素包括画面定时补充增强信息消息中的dpb_output_delay语法元素。
53.如权利要求50所述的装置,其中至少一个与假定参考解码器相关的高级语法元素包括缓冲时段补充增强信息消息中的intial_cpb_removal_delay语法元素。
54.如权利要求50所述的装置,其中所述拼接视频流生成器(1600)创建符合国际标准化组织/国际电工委员会运动画面专家组-4第10部分高级视频编码标准/国际电信联盟电信部门H.264建议的比特流。
55.一种方法,包括
接收拼接的视频流的假定参考解码器参数;以及
使用所述假定参考解码器参数来再现(1825)所述拼接的视频流。
56.如权利要求55所述的方法,其中在带内或在带外指示所述拼接的视频流的拼接位置(1200)。
57.如权利要求56所述的方法,其中使用网络抽象层单元指示所述拼接位置。
58.如权利要求57所述的方法,其中所述网络抽象层单元是补充增强信息消息或流网络抽象层单元的结束(1200)。
59.如权利要求55所述的方法,其中从基于至少两个流中的至少一个流的访问单元的前一访问单元的移除时间和时间偏置的先前计算中确定至少两个流中的至少一个流的所述访问单元的移除时间,从该至少两个流形成所述拼接的流(1320,1330)。
60.如权利要求59所述的方法,其中在画面定时补充增强信息消息中的cpb_removal_delay字段中接收所述时间偏置(1325)。
61.如权利要求60所述的方法,其中在解码所述拼接的视频流的对应解码器处计算所述时间偏置(1315)。
62.如权利要求55所述的方法,其中从基于至少两个流中的至少一个流的访问单元的移除时间和时间偏置的先前计算中确定至少两个流中的至少一个流的所述访问单元的输出时间,从该至少两个流形成所述拼接的流(1430)。
63.如权利要求62所述的方法,其中所述时间偏置等于dpb_output_delay语法元素和另一时间偏置的和,从画面定时补充增强信息消息中确定所述dpb_output_delay语法元素(1430)。
64.如权利要求63所述的方法,其中在解码所述拼接的视频流的对应解码器处计算所述另一时间偏置(1450)。
65.如权利要求64所述的方法,其中所述另一时间偏置等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差(1485)。
66.如权利要求63所述的方法,其中从补充增强信息消息中确定所述另一时间偏置(1120,1425)。
67.如权利要求66所述的方法,其中所述另一时间偏置等于max_initial_delay语法元素和dpb_output_delay语法元素之间的差(1115)。
68.一种方法,包括
接收(2010)与拼接的视频流相对应的、至少一个与假定参考解码器相关的高级语法元素的修改后的标准值;以及
使用至少一个与假定参考解码器相关的高级语法元素的修改后的标准值,再现(2015)所述拼接的视频流,同时防止与所述拼接的视频流相关的解码器缓冲器上溢和下溢状况。
69.如权利要求68所述的方法,其中至少一个与假定参考解码器相关的高级语法元素包括画面定时补充增强信息消息中的cpb_removal_delay语法元素(1560)。
70.如权利要求68所述的方法,其中至少一个与假定参考解码器相关的高级语法元素包括画面定时补充增强信息消息中的dpb_output_delay语法元素(1560)。
71.如权利要求68所述的方法,其中至少一个与假定参考解码器相关的高级语法元素包括缓冲时段补充增强信息消息中的initial_cpb_removal_delay语法元素(1565)。
72.如权利要求68所述的方法,其中所述拼接的视频流被再现为符合国际标准化组织/国际电工委员会运动画面专家组-4第10部分高级视频编码标准/国际电信联盟电信部门H.264建议。
73.一种用于视频编码的视频信号结构,包括
拼接的视频流,其防止与所述拼接的视频流有关的解码器缓冲器上溢和下溢状况,通过修改至少一个与假定参考解码器相关的高级语法元素的标准值来创建所述拼接的视频流。
74.一种在其上编码有视频信号数据的存储介质,包括
拼接的视频流,其防止与所述拼接的视频流有关的解码器缓冲器上溢和下溢状况,通过修改至少一个与假定参考解码器相关的高级语法元素的标准值来创建所述拼接的视频流。
75.一种用于视频编码的视频信号结构,包括
使用假定参考解码器参数创建的拼接的视频流。
76.一种在其上编码有视频信号数据的存储介质,包括
使用假定参考解码器参数创建的拼接的视频流。
全文摘要
提供了用于视频流拼接的方法和装置。一种装置包括用于使用假定参考解码器参数创建拼接的视频流的拼接视频流生成器(1600)。另一种装置包括通过修改至少一个与假定参考解码器相关的高级语法元素的标准值来创建拼接的视频流的拼接视频流生成器(1600),所述拼接的视频流防止与所述拼接的视频流相关的解码器缓冲器上溢和下溢状况。
文档编号H04N7/24GK101606389SQ200880004369
公开日2009年12月16日 申请日期2008年1月7日 优先权日2007年1月8日
发明者罗建聪, 朱丽华, 澎 尹, 克里斯蒂娜·戈米拉 申请人:汤姆森特许公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1