掌桥专利:专业的专利平台
掌桥专利
首页

比特流合并

文献发布时间:2023-06-19 11:34:14


比特流合并

本申请涉及视频编码/解码。

视频合成用于向用户呈现多个视频源的合成的许多应用中。常见的示例是画中画(PiP)合成以及将覆盖物(overlay)与视频内容混合,例如用于广告或用户界面。在像素域中产生这种合成需要对输入视频比特流进行并行解码,这在计算上很复杂,在具有单个硬件解码器或其他有限资源的设备上甚至是不可行的。例如,在当前的IPTV系统设计中,有能力的机顶盒执行合成,并且由于其复杂性、分布和有限的使用寿命而成为主要的服务成本因素。减少这些成本因素促使人们不断努力将机顶盒功能虚拟化,例如将用户界面生成转移到云资源。采用这种方法时,仅视频解码器(所谓的零客户端)是保留在客户处所中的唯一硬件。这种系统设计的最新状态是基于转码进行合成,即以其最简单的形式进行合成:在传输之前或传输期间进行解码、像素域合成和重新编码。为了减少整个解码和编码周期的工作量,首先提出了在变换系数域而不是像素域中进行PiP合成的操作。从那时起,提出了许多融合或缩短各个合成步骤并将其应用于当前视频编解码器的技术。然而,用于一般合成的基于转码的方法在计算上仍然很复杂,这损害了系统的可伸缩性。取决于转码方法,这种合成还可能影响率失真(RD)性能。

另外,存在建立在图块上构建的广泛应用,其中图块是视频平面的空间子集,独立于相邻图块而被编码。用于360°视频的基于图块的流传输系统通过将360°视频分割为图块进行工作,所述图块以各种分辨率被编码到子比特流中,并取决于当前用户观看朝向在客户端侧合并为单个比特流。涉及子比特流的合并的另一应用例如是传统视频内容与横幅广告的组合。此外,子比特流的重新组合也可以是视频会议系统中的关键部分,其中多个用户将其各自的视频流发送到最终对这些流进行合并的接收器。甚至进一步,在将得到的图块比特流合并回单个比特流之前,基于图块的云编码系统依赖于故障安全检查,在该基于图块的云编码系统中,将视频分为图块,并将图块编码分发到单独且独立的实例。在所有这些应用中,流被合并以允许在具有已知一致性点的单个视频解码器上进行解码。本文中的合并是指轻量级的比特流重写,其不需要对比特流或像素值重构的熵编码数据进行完全的解码和编码操作。然而,用于确保成功形成比特流合并(即,得到的合并比特流的一致性)的技术源自许多不同的应用场景。

例如,传统编解码器支持被称为运动受限图块集合(MCTS)的技术,其中编码器将图片之间的帧间预测约束为仅限于图块或图片的边界内,即,不使用不属于同一图块或位于图片边界之外的样本值或语法元素值。该技术源自感兴趣区域(ROI)解码,其中解码器可以仅对比特流和编码图片的特定子部分进行解码,而不会遇到无法解决的依赖性且避免了漂移。该背景下的另一种最新技术是图片结构(SOP)SEI消息,其给出了所应用的比特流结构(即,图片顺序和帧间预测参考结构)的指示。通过针对两个随机接入点(RAP)之间的每个图片将图片顺序计数(POC)值、有效序列参数集合(SPS)标识符、参考图片集合(RPS)索引概括到有效SPS中来提供该信息。基于该信息,可以识别比特流结构,该比特流结构可以帮助转码器、中间盒或媒体感知网络实体(MANE)或媒体播放器对比特流进行操作或改变比特流,例如调整比特率、丢帧或快进。

尽管上述两种示例性信号传送技术在理解在没有显著的语法改变或甚至完全转码的情况下是否可以进行子比特流的轻量级合并中都是必要的,但是它们还远远不够。更详细地,该背景下的轻量级合并的特征在于,仅用较小的重写操作对源比特流的NAL单元进行交织,即,以新的图像大小和图块结构来写联合使用的参数集合,使得要合并的每个比特流将位于单独的图块区域中。下一级别的合并复杂度由条带头部元素的较小重写构成,理想情况下不改变条带头部中的可变长度码。存在其它级别的合并复杂度,例如,在条带数据上重新运行熵编码,以改变经熵编码但是可以在无需像素值重构的情况下改变的特定语法元素,与利用视频的解码和编码的完全转码(这被认为不是轻量级的)相比,这可以被认为是有益的且相当轻量级的。

在合并比特流中,所有条带必须参考相同的参数集合。当原始比特流的参数集合使用甚至显著不同的设置时,轻量级合并可能是不可能的,因为许多参数集合语法元素对条带头部和条带有效载荷语法有进一步的影响,并且它们的影响程度不同。语法元素参与解码过程的程度越深,合并/重写就变得越复杂。(参数集合和其他结构的)语法依赖性的一些值得注意的一般类别可以如下区别。

A.语法存在指示

B.值计算依赖性

C.条带有效载荷编码工具控制

a.解码过程初期使用的语法(例如,系数符号隐藏、块划分限制)

b.解码过程后期使用的语法(例如,运动补偿、环路滤波器)或一般的解码过程控制(参考图片、比特流顺序)

D.源格式参数

针对类别A,参数集合携带用于各种工具的许多存在标志(例如,dependent_slice_segments_enabled_flag或output_flag_present_flag)。在这些标志存在差异的情况下,可以将标志设置为在联合参数集合中启用,并且可以将默认值显式地写入比特流中的条带的合并条带头部中,该合并条带头部不包括合并之前的语法元素,即,在这种情况下,合并需要改变参数集合和条带头部语法。

针对类别B,可以在计算中使用参数集合语法的以信号传送的值以及其他参数集合的参数或条带头部,例如,在HEVC中,使用条带的条带量化参数(OP)来控制条带的残差信号的变换系数量化的粗糙度。比特流中条带QP(SliceQpY)的信号传送取决于图片参数集合(PPS)级别上的OP信号传送,如下所示:

SliceQpY=26+init_qp_minus26(来自PPS)+slice_qp_delta(来自条带头部)

由于(合并的)编码视频图片中的每个条带需要参考相同的激活PPS,因此要合并的各个流的PPS中的init_qp_minus26的差异要求调整条带头部以反映init_qp_minus26的新的公共值。即,在这种情况下,合并需要改变参数集合和条带头部语法,如针对类别1做出的。

针对类别C,其他参数集合语法元素控制影响条带有效载荷的比特流结构的编码工具。可以根据语法元素参与解码过程的程度和与对这些语法元素进行改变相关联的复杂度(与语法元素参与解码过程的程度相关)来区别子类别C.a和C.b,即,语法元素参与熵编码和像素水平重构之间的哪些过程。

例如,类别C.a中的一个元素是sign data_hiding_enabled_flag,其控制编码变换系数的符号数据的导出。符号数据隐藏可以容易地停用,并且将相应的推断的符号数据显式地写入条带有效载荷中。然而,在再次对逐像素合并的视频进行编码之前,对该类别中的条带有效载荷的这些改变不需要通过完整解码进入像素域。另一示例是推断的块划分决策、或者可以容易地将推断值写入比特流的任何其他语法。即,在这种情况下,合并需要改变参数集合、条带头部语法以及需要熵解码/编码的条带有效载荷。

然而,子类别C.b需要与深入(far down)解码链的过程相关的语法元素,因此,无论如何,许多复杂的解码过程都必须以如下方式执行:避免剩余解码步骤在实现和计算方面是不希望的。例如,与运动补偿约束“时间运动约束图块集合SEI(图片信息的结构)消息”相关联的语法元素或各种与解码过程相关的语法(例如,“SEI消息”)中的差异使得像素级别转码不可避免。与子类别C.a相比,有许多编码器决策以在未进行全像素级别转码的情况下无法改变的方式影响条带有效载荷。

针对类别D,存在参数集合语法元素(例如,通过chroma_format_idc指示的色度子采样),其中不同的值使得像素级别转码针对合并子比特流是不可避免的。即,在这种情况下,合并需要完整的解码、像素级别合并和完整的编码过程。

上面的列举绝不是穷举的,但是很清楚,各种各样的参数以不同的方式影响将子比特流合并到公共比特流中带来的优点,并且跟踪和分析这些参数很麻烦。

本发明的目的是提供一种视频编解码器,以有效地合并视频比特流。

该目的是通过本申请的权利要求的主题来实现的。

本发明的基本思想是通过包括一个或多个合并标识符来实现对合并多个视频流的改进。这种方法可以减少计算资源的负载,还可以加速合并过程。

根据本申请的实施例,视频编码器被配置为提供包括编码参数信息、编码视频内容信息(即,使用由参数信息定义的编码参数进行了编码)和一个或多个合并标识符的视频流,所述编码参数信息描述多个编码参数,所述一个或多个合并标识符指示编码视频表示是否可以与另一编码视频表示合并和/或编码视频表示可以如何(例如,使用哪个复杂度)与另一编码视频表示合并。可以基于由参数信息定义的参数值来确定使用哪个复杂度。合并标识符可以是多个编码参数的串接,这些参数在两个不同的编码视频表示中必须相等,以便能够使用预定复杂度来合并两个不同的编码视频表示。另外,合并标识符可以是多个编码参数的串接的散列值,这些参数在两个不同的编码视频表示中必须相等,以便能够使用预定复杂度来合并两个不同的编码视频表示。

根据本申请的实施例,合并标识符可以指示合并标识符类型,所述合并标识符类型表示与合并过程的复杂度相关联,或者一般地,可以指示通过参数集合重写进行合并、或者通过参数集合和条带头部重写进行合并、或者通过参数集合、条带头部、条带有效载荷重写进行合并的“合适的”合并方法,其中,合并标识符与合并标识符类型相关联,其中,与合并标识符类型相关联的合并标识符包括在两个不同的编码视频表示中必须相等的那些编码参数,使得能够使用由合并标识符类型表示的合并过程的复杂度来合并两个不同的编码视频表示。合并标识符类型的值可以指示合并过程,其中,视频编码器被配置为在合并标识符类型的以下值中的至少两个值之间切换;合并标识符类型的第一值,其表示通过参数集合重写的合并过程;合并标识符类型的第二值,其表示通过参数集合和条带头部重写的合并过程;以及合并标识符类型的第三值,其表示通过参数集合、条带头部和条带有效载荷重写的合并过程。

根据本申请的实施例,多个合并标识符与合并过程的不同复杂度相关联,例如,每个标识符指示参数集合/散列和合并过程的类型。编码器可以被配置为检查为了提供合并标识符而评估的编码参数是否在视频序列的所有单元中都相同,以及根据所述检查来提供合并标识符。

根据本申请的实施例,多个编码参数可以包括合并相关参数,所述合并相关参数在不同的视频流(即,编码视频表示)中必须相同,以允许与通过全像素解码的合并相比,该合并的复杂度较低,并且其中,视频编码器被配置为基于合并相关参数来提供一个或多个合并标识符,即,在两个编码视频表示之间没有公共参数的情况下,执行全像素解码,即,不可能降低合并过程的复杂度。合并相关参数包括以下参数中的一个或多个或全部:描述图块边界处的运动约束的参数(例如,运动约束图块集合补充增强信息(MCTS SEI));关于图片组(GOP)结构的信息(即,编码顺序到显示顺序的映射);随机接入点指示;例如,具有图片结构SOP的时间分层;SEI,描述色度编码格式的参数和描述亮度编码格式的参数,例如,至少包括色度格式和比特深度亮度/色度的集合;描述高级运动矢量预测的参数;描述样本自适应偏移的参数;描述时间运动矢量预测的参数;以及描述环路滤波器和其他编码参数的参数,即,重写参数集合(包括参考图片集合、基本量化参数等)、条带头部、条带有效载荷以合并两个编码视频表示。

根据本申请的实施例,当基于第二编码参数集合确定了与合并过程的第二复杂度相关联的合并参数时,可以基于第一编码参数集合来确定与合并过程的第一复杂度相关联的合并标识符,所述第二复杂度比所述第一复杂度高,所述第二编码参数集合是所述第一编码参数集合的真子集。可以基于第三编码参数集合来确定与合并过程的第三复杂度相关联的合并标识符,所述第三复杂度比所述第二复杂度高,所述第三编码参数集合是所述第二编码参数集合的真子集。视频编码器被配置为:基于编码参数集合来确定与合并过程的第一复杂度相关联的合并标识符,所述编码参数集合例如是在两个不同的视频流(例如,编码视频表示)中必须相等以允许如下方式的视频流的合并的第一集合:仅修改可应用于多个条带的参数集合,同时保持条带头部和条带有效载荷不变,即,(仅)通过参数集合重写的合并过程。视频编码器可以被配置为:基于编码参数集合来确定与合并过程的第二复杂度相关联的合并标识符,所述编码参数集合例如是在两个不同的视频流(例如,编码视频表示)中必须相等以允许如下方式的视频流的合并的第二集合:修改可应用于多个条带的参数集合并且还修改条带头部,同时保持条带有效载荷不变,即,通过参数集合和条带头部重写的合并过程。视频编码器可以被配置为基于编码参数集合来确定与合并过程的第三复杂度相关联的合并标识符,所述编码参数集合例如是在两个不同的视频流(例如,编码视频表示)中必须相等以允许如下方式的视频流的合并的第三集合:修改可应用于多个条带的参数集合并且还修改条带头部和条带有效载荷,但不执行全像素解码和像素重新编码,即,通过参数集合、条带头部和条带有效载荷重写的合并过程。

根据本申请的实施例,一种用于基于多个编码视频表示(例如,视频流)来提供合并视频表示的视频合并器,其中,所述视频合并器被配置为接收包括编码参数信息、编码视频内容信息(即,使用由参数信息定义的编码参数进行了编码)和一个或多个合并标识符的多个视频流,所述编码参数信息描述多个编码参数,所述一个或多个合并标识符指示编码视频表示是否可以与另一编码视频表示合并和/或编码视频表示可以如何与另一编码视频表示合并。其中,视频合并器被配置为根据合并标识符(即,根据对不同视频流的合并标识符的比较)来决定合并方法的用法(例如,合并类型;合并过程)。视频合并器被配置为根据合并标识符,从多个合并方法中选择合并方法。视频合并器可以被配置为在以下合并方法中的至少两个合并方法之间进行选择;第一合并方法,所述第一合并方法是如下方式的视频流的合并:仅修改能够应用于多个条带的参数集合,同时保持条带头部和条带有效载荷不变;第二合并方法,所述第二合并方法是如下方式的视频流的合并:修改能够应用于多个条带的参数集合并且还修改条带头部,同时保持条带有效载荷不变;以及第三合并方法,所述第三合并方法是如下方式的视频流的合并:修改能够应用于多个条带的参数集合并且还修改条带头部和条带有效载荷,但是不执行全像素解码和像素重新编码,其是根据一个或多个合并标识符具有不同复杂度的合并方法。

根据本申请的实施例,视频合并器被配置为对与相同的给定合并方法相关联或与相同的合并标识符类型相关联的两个或更多个视频流的合并标识符进行比较,并且根据比较的结果决定是否使用给定合并方法来执行合并。视频合并器可以被配置为:如果所述比较指示与给定合并方法相关联的两个或更多个视频流的合并标识符相等,则使用给定合并方法来选择性地执行合并。视频合并器可以被配置为:如果合并标识符的比较指示与给定合并方法相关联的两个或更多个视频流的合并标识符不同,则使用复杂度比与所比较的合并标识符相关联的给定合并方法的复杂度高的合并方法,即,无需进一步比较编码参数本身。视频合并器可以被配置为:如果合并标识符的比较指示与给定合并方法相关联的两个或更多个视频流的合并标识符相等,则选择性地比较在两个或更多个视频流中必须相等以允许使用给定合并方法来合并视频流的编码参数,并且其中,视频合并器被配置为:如果对所述编码参数(即,在两个或更多个视频流中必须相等以允许使用给定合并方法来合并视频流的编码参数)的比较指示所述编码参数相等,则选择性地使用给定合并方法来执行合并,并且其中,视频合并器被配置为:如果对所述编码参数的比较指示所述编码参数包括差异,则使用复杂度比给定合并方法的复杂度高的合并方法来执行合并。

根据本申请的实施例,视频合并器可以被配置为:对与具有不同复杂度的合并方法相关联的合并标识符进行比较,即,散列的比较,并且其中,视频合并器被配置为:识别最低复杂度的合并方法,用于该最低复杂度的合并方法的相关联的合并标识符在要合并的两个或更多个视频流中相等;以及其中,视频合并器被配置为:对编码参数(即,各个编码参数,而不是其散列版本)集合进行比较,这些编码参数在要合并的两个或更多个视频流中必须相等,以允许使用所识别的合并方法进行合并,其中,其中不同的、通常重叠的编码参数集合与不同复杂度的合并方法相关联,并且其中,视频合并器被配置为:如果比较指示与所识别的合并方法相关联的编码参数集合的编码参数在要合并的视频流中相等,则使用所识别的合并方法来合并两个或更多个视频流,并且其中,视频合并器被配置为:如果比较指示与所识别的合并方法相关联的编码参数集合的编码参数在要合并的视频流中包括差异,则使用复杂度比所识别的合并方法的复杂度高的合并方法来合并两个或更多个视频流。视频合并器被配置为:根据例如与要合并的不同视频流的相同合并方法或“合并标识符类型”相关联的合并标识符之间的一个或多个差异来确定应在合并过程(即,合并视频流)中修改哪些编码参数。

根据本申请的实施例,视频合并器被配置为:基于要合并的视频流的编码参数来获得与要合并的所有视频流的条带相关联的联合编码参数或联合编码参数集合,例如,序列参数集合SPS和图片参数集合PPS,并且例如,在一个编码视频表示和另一编码视频表示的所有编码参数的值都相同的情况下,将联合编码参数包括在合并视频流中,在编码视频表示的编码参数之间存在任何差异的情况下,通过复制公共参数来更新编码参数,基于主编码视频表示(即,一个编码视频表示是主编码视频表示,且另一编码视频表示是子(sub)编码视频表示)来更新编码参数,例如,一些编码参数(例如,总图片大小)可以根据视频流的组合来适配。视频合并器被配置为:适配分别与各个视频条带相关联的编码参数(例如在条带头部中定义),或者例如,在使用具有比最低复杂度高的复杂度的合并方法时,以便获得要包括在合并视频流中的修改后的条带。经适配的编码参数包括表示合并编码视频表示的图片大小的参数,其中,所述图片大小基于要合并的编码视频表示的图片大小(即,在各个维度上及在它们的空间布置的上下文中)计算。

根据本申请的实施例,一种用于提供编码视频表示(即,视频流)的视频编码器,其中,视频编码器可以被配置为提供粗糙粒度能力需求信息,例如,级别信息;级别3或级别4或级别5,其描述了视频流与视频解码器的兼容性,例如,视频解码器对视频流的可解码性,该视频解码器具有多个预定能力级别中的能力级别;并且其中,视频编码器被配置为提供精细粒度能力需求信息,例如,合并级别限制信息,其描述了需要与预定能力级别之一相关联的容许能力需求(即,解码器能力)的多大的分数,以对编码视频表示进行解码,和/或描述了编码视频表示(即,子比特流)向视频流合并到的合并视频流贡献了容许能力需求的多大的分数(即,“合并比特流的级别限制”),该合并比特流的能力需求与预定能力级别之一一致,即,该合并比特流的能力需求比容许能力需求小或等于容许能力需求,“合并比特流的与预定能力级别之一一致的容许能力需求”与“合并比特流的级别限制”相对应”。视频编码器被配置为提供精细粒度能力需求信息,使得精细粒度能力需求信息包括参考预定预定能力级别之一的比率值或百分比值。视频编码器被配置为提供精细粒度能力需求信息,使得精细粒度能力需求信息包括参考信息和分数信息,并且其中,参考信息描述分数信息参考预定能力级别中的哪一个,使得精细粒度能力需求信息整体上描述预定能力级别之一的分数。

根据本申请的实施例,一种视频合并器,用于基于多个编码视频表示(即,视频流)来提供合并视频表示,其中,视频合并器可以被配置为接收多个视频流,所述多个视频流包括编码参数信息、编码视频内容信息(例如使用由参数信息定义的编码参数进行了编码)、粗糙粒度能力需求信息和精细粒度能力需求信息(例如,合并级别限制信息),所述编码参数信息描述多个编码参数,所述粗糙粒度能力需求信息例如是级别信息——级别3或级别4或级别5,其描述了视频流与视频解码器的兼容性,即,视频解码器对视频流的可解码性,所述视频解码器具有多个预定能力级别之一,其中,所述视频合并器被配置为根据粗糙粒度能力需求信息和精细粒度能力需求信息来合并两个或更多个视频流。视频合并器可以被配置为:即,在不违反容许能力需求(即,合并视频流的这种能力需求与预定能力级别之一一致)的情况下,根据精细分辨率能力需求信息,来决定哪些视频流可以是合并视频流或可以被包括在合并视频流中。视频合并器可以被配置为:决定有效的合并视频流(例如在不违反容许能力需求的情况下,即,使得合并视频流的能力需求与预定能力级别之一达成一致)是否可以通过根据精细分辨率能力需求信息合并两个或更多个视频流来获得。视频合并器被配置为对要合并的多个视频流的精细粒度能力需求信息进行综合,例如,以确定可以包括哪些视频流,或者以决定是否可以获得有效的合并视频流。

以下参照附图描述本申请的优选实施例,其中:

图1示出了作为视频编码器的示例的用于提供编码视频表示的装置的框图,其中可以实现根据本申请的实施例的比特流合并概念;

图2示出了说明根据本申请的实施例的比特流结构的示例的示意图;

图3示出了作为视频编码器的另一示例的用于提供编码视频表示的装置的框图,其中可以实现根据本申请的实施例的比特流合并概念;

图4示出了根据本申请的实施例的编码参数的示例的示意图;

图5a、图5b示出了图4中指示的详细的序列参数集合(SPS)示例;

图6a、图6b示出了图4中指示的详细的图片参数集合(PPS)示例;

图7a至图7d示出了图4中指示的详细的条带头部示例;

图8示出了图4中指示的补充增强信息(SEI)消息中的图片的详细结构;

图9示出了图4中指示的SEI消息中的详细的运动约束图块集合;

图10示出了作为视频合并器的示例的用于提供合并视频表示的装置的框图,其中可以实现根据本申请的实施例的比特流合并概念;

图11示出了说明根据本申请的实施例的合并复杂度的确定过程的示意图;

图12示出了根据本申请的比特流合并概念的要合并的多个视频表示的比特流结构和合并视频表示的比特流结构的示意图;

图13示出了作为视频合并器的另一示例的用于提供合并视频表示的装置的框图,其中可以实现根据本申请的实施例的比特流合并概念;

图14示出了作为视频编码器的示例的用于提供编码视频表示的装置的框图,其提供根据本申请的实施例可以实现的合并视频表示能力需求信息;

图15示出了作为视频合并器的示例的用于提供合并视频表示的装置的框图,其提供根据本申请的实施例可以实现的合并视频表示能力需求信息。

以下描述阐述了具体的细节,如为了解释而不是限制的目的的特定的实施例、过程、技术等。本领域技术人员将理解,除了这些特定细节,可以使用其他实施例。例如,尽管使用非限制性示例应用促进了以下描述,但是该技术可以应用于任何类型的视频编解码器。在一些实例中,省略了对公知方法、节点、接口、电路和设备的详细描述,从而不以不必要的细节模糊描述。

在以下描述中,通过相同或等同附图标记来表示相同或等同元件或者具有相同或等同功能的元件。

本文的发明旨在给诸如VVC(多功能视频编码)之类的未来视频编解码器提供在每个子比特流中放入指示的手段,该指示允许识别可以一起合并到合法比特流中的子比特流,或者识别不能以给定级别的复杂度一起合并到合法比特流中的子比特流。在下文中被称为“合并标识符”的指示还通过被称为“合并标识符类型”的指示来提供关于合适的合并方法的信息。假定两个比特流携带“合并标识符”及其相同的值,则可以在给定级别的合并复杂度(与合并方法相关)下将子比特流合并为新的联合比特流。

图1示出了用于基于所提供的(输入)视频流10提供编码视频表示(即,编码视频流12)的视频编码器2,其包括编码器核4,编码器核4包括编码参数确定部件14和合并标识符提供6。所提供的视频流10以及编码视频流12分别具有比特流结构,例如,如图2所示作为简化配置。比特流结构由多个网络抽象层(NAL)单元组成,每个NAL单元包括各种参数和/或数据,例如序列参数集合(SPS)20、图片参数集合(PPS)22、即时解码器刷新(IDR)24、补充增强信息(SEI)26和多个条带28。SEI 26包括各种消息,即,图片的结构、运动约束图块集合等。条带28包括头部30和有效载荷32。编码参数确定部件14基于SPS 20、PPS 22、SEI 26和条带头部30来确定编码参数。根据本申请,IDR 24不是确定编码参数的必要因素,但是可以可选地包括IDR 24以用于确定编码参数。合并标识符提供6提供合并标识符,该合并标识符指示编码视频流是否可以与另一编码视频流合并和/或编码视频流可以如何(以哪个复杂度)与另一编码视频流合并。合并标识符确定合并标识符,所述合并标识符指示合并标识符类型,所述合并标识符类型表示与合并过程的复杂度相关联,或者一般地,指示“合适的”合并方法,例如,通过参数集合重写进行合并、或者通过参数集合和条带头部重写进行合并、或者通过参数集合、条带头部、条带有效载荷重写进行合并,其中,合并标识符与合并标识符类型相关联,其中,与合并标识符类型相关联的合并标识符包括在两个不同的编码视频表示中必须相等的那些编码参数,使得能够使用由合并标识符类型表示的合并过程的复杂度来合并两个不同的编码视频表示。

结果,编码视频流12包括描述多个编码参数的编码参数信息、编码视频内容信息和一个或多个合并标识符。在该实施例中,基于编码参数来确定合并标识符。然而,还可以根据编码器操作者的意愿在很少保证冲突避免(这对于封闭系统来说可能是足够的)的情况下设置合并标识符值。诸如DVB(数字视频广播)、ATSC(高级电视系统委员会)之类的第三方实体可以定义要在其系统内使用的合并标识符的值。

考虑使用图3至图9的根据本发明的另一实施例,在下面描述合并标识符类型。

图3a示出了编码器2(2a),其包括编码器核4和合并标识符6a,并指示编码器2a中的数据流。合并标识符6a包括第一散列部件16a和第二散列部件16b,它们提供散列值作为合并标识符以指示合并类型。也就是说,合并值可以根据比特流的定义的语法元素(编码参数)集合的编码值的串接而形成,在下文中称为散列集合。合并标识符值还可以通过将上述编码值的串接送入公知的散列函数(例如,MD5、SHA-3)或任何其他合适的函数来形成。如图3所示,输入视频流10包括输入视频信息,并且在编码器核4处处理输入视频流10。编码器核4对输入视频内容进行编码,并且将编码视频内容信息存储在有效载荷32中。编码参数确定部件14接收包括SPS、PPS、条带头部和SEI消息在内的参数信息。该参数信息被存储在每个对应单元内,并在合并标识符提供6a处接收该参数信息,即,分别在第一散列部件16a和第二散列部件16b处接收。第一散列部件16a基于编码参数来产生例如指示合并标识符类型2的散列值,并且第二散列部件16b基于编码参数来产生例如指示合并标识符类型1的散列值。

散列集合的内容(即串接哪些语法元素(即,合并参数)值以形成合并标识符值)确定关于上述语法类别的可合并性指示的质量。

例如,合并标识符类型指示关于合并标识符的适合的合并方法,即,与并入散列集合中的语法元素相对应的不同级别的可合并性:

类型0-用于通过参数集合重写进行合并的合并标识符

类型1-用于通过参数集合和条带头部重写进行合并的合并标识符

类型2-用于通过参数集合、条带头部和条带有效载荷重写进行合并的合并标识符

例如,给定要在本申请的上下文中合并的两个输入子比特流,设备可以对合并标识符和合并标识符类型的值进行比较,并且得出在两个子比特流上使用与合并标识符类型相关联的方法的前景的结论。

下表给出了语法元素类别和相关联的合并方法之间的映射。

如上所述,语法类别绝不是穷举的,但是很清楚,各种各样的参数以不同的方式影响将子比特流合并到公共比特流中带来的优点,并且跟踪和分析这些参数很麻烦。另外,语法类别和合并方法(类型)不完全对应,因此,例如针对类别B,需要一些参数,但是合并方法1不需要相同的参数。

产生根据以上标识符类型值中的两个或更多个的合并标识符值,并将这些合并标识符值写入比特流以允许设备容易识别可应用的合并方法。合并方法(类型)0指示合并标识符类型的第一值,合并方法(类型)1指示合并标识符类型的第二值,并且合并方法(类型)3指示合并标识符类型的第三值。

应将以下示例性语法并入散列集合中。

·时间运动约束图块集合SEI消息,其指示图块和图片边界处的运动约束(合并方法0、1、2,语法类别C.b)

·图片信息SEI消息的结构,其定义GOP结构(即,编码顺序到显示顺序的映射、随机接入点指示、时间分层、参考结构)(合并方法0、1、2,语法类别C.b)

·参数集合语法元素值

o参考图片集合(合并方法0,语法类别B)

o色度格式(合并方法0、1、2,语法类别D)

o基本QP、色度QP偏移(合并方法0,语法类别B)

o比特深度亮度/色度(合并方法0、1、2,语法类别D)

ohrd参数

■初始到达延迟(合并方法0,语法类别B)

■初始移除延迟(合并方法0,语法类别B)

o编码工具

■编码块结构(最大/最小块大小、推断的分割)(合并方法0、1,语法类别C.a)

■变换大小(最小/最大)(合并方法0、1,语法类别C.a)

■PCM块使用(合并方法0、1,语法类别C.a)

■高级运动矢量预测(合并方法0、1、2,语法类别C.b)

■样本自适应偏移(合并方法0,语法类别C.b)

■时间运动矢量预测(合并方法0、1、2,语法类别C.b)

■帧内平滑(合并方法0、1,语法类别C.a)

■相关条带(合并方法0,语法类别A)

■符号隐藏(合并方法0、1,语法类别C.a)

■加权预测(合并方法0,语法类别A)

■变换量化(transquant)旁路(合并方法0、1,语法类别C.a)

■熵编码同步(合并方法0、1,语法类别C.a)(Skup4)

■环路滤波器(合并方法0、1、2,语法类别C.b)

·条带头部值

o参数集合ID(合并方法0,语法类别C.a)

o参考图片集合(合并方法0、1,语法类别B)

·使用隐式CTU地址信号传送cp.(被欧洲专利申请号:EP 18153516参考)(合并方法0,语法元素A)

也就是说,针对合并标识符类型的第一值,即类型0,语法元素(参数)图块和图片边界处的运动约束、GOP结构、参考图片集合、色度格式、基本量化参数和色度量化参数、比特深度亮度/色度、包括关于初始到达延迟的参数和关于初始移除延迟的参数在内的假设参考解码器参数、编码块结构、变换最小和/或最大大小、脉冲编码调制块使用、高级运动矢量预测、样本自适应偏移、时间运动矢量预测,描述了帧内平滑、相关条带、符号隐藏、加权预测、变换量化旁路、熵编码同步、环路滤波器、包括参数集合ID的条带头部值、包括参考图片集合的条带头部值以及隐式编码变换单元地址信号传送的使用应被并入散列集合中。

针对合并标识符类型的第二值,即类型1,语法元素(参数):图块和图片边界处的运动约束、GOP结构、色度格式、比特深度亮度/色度、编码块结构、变换最小和/或最大大小、脉冲编码调制块使用、高级运动矢量预测、样本自适应偏移、时间运动矢量预测、帧内平滑、符号隐藏、变换量化旁路、熵编码同步、环路滤波器和包括参考图片集合的条带头部值。

针对合并标识符类型的第三值,即类型2,语法元素(参数):图块和图片边界处的运动约束、GOP结构、色度格式、比特深度亮度/色度、高级运动矢量预测、样本自适应偏移、时间运动矢量预测、环路滤波器。

图4示出了说明根据本申请的实施例的编码参数的示例的示意图。在图4中,附图标记40表示类型0,并且由点线指示属于类型0的语法元素。附图标记42表示类型1,并且由常规线(normal line)指示属于类型1的语法元素。附图标记44表示类型2,并且由短划线指示属于类型1的语法元素。

图5a和图5b是序列参数集合(SPS)20的示例,类型0所需的语法元素由附图标记40指示。以相同的方式,类型1所需的语法元素由附图标记42指示,类型2所需的语法元素由附图标记44指示。

图6a和图6b是图片参数集合(PPS)22的示例,类型0所需的语法元素由附图标记40指示,类型1所需的语法元素由附图标记42指示。

图7a至图7d是条带头部30的示例,并且条带头部的仅一个语法元素是类型0必需的,如图7c中的附图标记40所指示。

图8是图片结构(SOP)26a的示例,并且属于SOP的所有语法元素都是类型2需要的。

图9是运动约束图块集合(MCTS)26b的示例,并且属于MCTS的所有语法元素都是类型2需要的。

如上所述,图3的合并标识符6a使用散列部件16a以及散列部件16b处的散列函数来生成合并标识符值。在使用散列函数生成两个或更多个合并标识符值的情况下,以以下方式连接散列:输入到包含散列集合中相对于第一合并标识符的附加元素的第二合并标识符的散列函数使用第一标识符值(散列结果)而不是各个语法元素值,以将散列函数的输入串接。

另外,合并标识符的存在还提供以下保证:并入散列集合中的语法元素在编码视频序列(CVS)和/或比特流的所有接入单元(AU)中具有相同的值。此外,该保证在参数集合的配置文件/级别语法中具有约束标志的形式。

考虑使用图10至图13的根据本发明的另一实施例,在下面描述合并过程。

图10示出了用于基于多个编码视频表示来提供合并视频流的视频合并器。视频合并器50包括接收器52、合并方法标识符54和合并处理器56,接收器52接收输入视频流12(图12中所示的12a和12b)。合并视频流60被发送到解码器。在视频合并器50被包括在解码器中的情况下,合并视频流被发送到用户设备或任何其他装置以显示合并视频流。

合并过程由上述合并标识符和合并标识符类型驱动。合并过程可以只需要生成参数集合加上NAL单元的交织,这是与合并标识符类型值0相关联的合并的最轻量级的形式,即第一复杂度。图12示出了第一复杂度合并方法的示例。如图12所示,参数集合,即视频流12a的SPS1和视频流12b的SPS2被合并(基于SPS1和SPS2来生成合并的SPS),且视频流12a的PPS1和视频流12b的PPS被合并(基于PPS1和PPS2来生成合并的PPS)。IDR是可选数据,因此省略说明。另外,将视频流12a的条带1,1和1,2以及视频流12b的条带2,1和2,2交织,如合并视频流60所示。在图10和图12中,作为示例,输入两个视频流12a和12b。然而,也可以以相同方式输入和合并更多的视频流。

当需要时,合并过程还可以包括在与合并标识符类型值1(即,第二复杂度)相关联的NAL单元交织期间在比特流中重写条带头部。此外及最后,存在条带有效载荷中的语法元素需要调整的情况,这与合并标识符类型值2(即,第三复杂度)相关联,并且需要在NAL单元交织期间进行熵解码和编码。合并标识符和合并标识符类型驱动对选择要执行的合并过程之一及其细节的决定。

合并过程的输入是输入子比特流的列表,该列表还表示空间布置。该过程的输出是合并比特流。一般地,在所有比特流合并过程中,需要生成用于新的输出比特流的参数集合,其可以基于输入子比特流(例如,第一输入子比特流)的参数集合。对参数集合的必要更新包括图片大小。例如,将输出比特流的图片大小计算为输入比特流在各个维度上及在它们的空间布置的上下文中的图片大小的总和。

比特流合并过程要求所有输入子比特流携带合并标识符和合并标识符类型中至少一个实例的相同值。在一个实施例中,执行与合并标识符类型的最小值相关联的合并过程,针对该合并标识符类型的最小值,所有子比特流携带合并标识符的相同值。

例如,在合并过程中使用具有某个合并标识符类型值的合并标识符值中的差异,以根据与合并标识符值匹配的合并标识符类型的差异值确定合并过程的细节。例如,如图11所示,当具有等于0的合并标识符类型值的第一合并标识符70在两个输入子比特流70a和70b之间不匹配,但是具有等于1的合并标识符类型值的第二合并标识符80在两个子比特流80a和80b之间匹配时,第一合并标识符70的比特位置差异指示所有条带中需要调整的(条带头部相关)语法元素。

图13示出了视频合并器50(50a),其包括接收器(未示出)以及合并处理器56,合并方法标识符包括合并标识符比较器54a和编码参数比较器54b。在输入视频流12包括散列值作为合并标识符值的情况下,在合并标识符比较器54a处比较每个输入视频流的值。例如,当两个输入视频流都具有相同的合并标识符值时,在编码参数比较器54b处比较每个输入视频流的各自的编码参数。基于编码参数比较结果来决定合并方法,并且合并处理器56通过使用所决定的合并方法来合并输入视频流12。在合并标识符值(散列值)也指示合并方法的情况下,不需要各个编码参数比较。

以上解释了三种合并方法——第一复杂度合并方法、第二复杂度合并方法和第三复杂度合并方法。第四合并方法是使用全像素解码和像素重新编码来合并视频流。如果所有三种合并方法都不可应用,则应用第四合并方法。

下面考虑使用图14和图15的根据本发明的另一实施例来描述用于识别合并结果级别的过程。合并结果级别的识别意味着将信息放入子比特流中,并且关于子比特流对包括子比特流的合并比特流的级别限制的贡献有多大。

图14示出了编码器2(2b),编码器2(2b)包括编码器核,编码器核包括编码参数确定14、合并标识符提供(未示出)以及粒度能力提供器8。

一般地,当要将子比特流合并为联合比特流时,关于各个子比特流对潜在的合并比特流必须遵守的编解码器系统的级别特定的限制的贡献程度如何的指示对于确保创建合法的联合比特流是至关重要的。尽管传统上,编解码器级别粒度相当粗糙(例如,区分如720p、1080p或4K的主分辨率),但是合并级别限制指示需要更精细的粒度。这种传统级别指示的粒度不足以表示各个子比特流对合并比特流的贡献。鉴于要合并的图块数量事先未知,因此需要在灵活性和比特率开销之间找到合理的折衷,但是通常,它远超过传统的级别限制粒度。一个示例性用例是360度视频流,其中服务供应商需要在不同的图块化结构(例如,每360度视频12、24或96个图块)之间进行选择的自由,其中每个图块流将贡献整个级别限制(例如,假设速率分布相等,则为8K)的1/12、1/24或1/96。甚至进一步,假设图块之间的速率分布不均匀(例如,为了实现视频平面上的恒定质量),可能需要任意精细粒度。

例如,这种信号传送将是另外以信号传送的级别的以信号传送的比率和/或百分比。例如,在具有四个参与者的会议场景中,每个参与者将发送合法的级别3比特流,该比特流还包括指示,即包括在粗糙粒度能力信息中的级别信息,该指示表明发送的比特流遵循级别5限制的1/3和/或33%,即该信息可以包括在精细粒度能力信息中,多个这样的流的接收器(即,图15中所示的视频合并器50(50b))因此例如可以知道这三个比特流可以被合并到遵循级别5的单个联合比特流中。

粒度能力信息可以具有比率和/或百分比的指示作为值的向量,每个维度都涉及编解码器级别限制的另一方面,例如,每秒最大允许亮度样本数、最大图像大小、比特率、缓冲器满度、图块数量等。另外,比率和/或百分比是指视频比特流的一般编解码器级别。

虽然已经在装置或系统的上下文中描述了一些方面,但是将清楚的是,这些方面还表示对应方法的描述,其中,块或设备对应于方法步骤或方法步骤的特征。类似地,在方法步骤上下文中描述的方面也表示对相应块或项或者相应装置和/或系统的特征的描述。可以由(或使用)硬件设备(诸如,微处理器、可编程计算机或电子电路)来执行一些或全部方法步骤。在一些实施例中,可以由这种装置来执行最重要方法步骤中的一个或多个方法步骤。

本发明的数据流可以存储在数字存储介质上,或者可以在诸如无线传输介质或有线传输介质(例如,互联网)等的传输介质上传输。

取决于某些实现要求,可以在硬件中或在软件中实现本发明的实施例。可以通过使用其上存储有电子可读控制信号的数字存储介质(例如,软盘、DVD、Blu-Ray、CD、ROM、PROM和EPROM、EEPROM或闪存)来执行所述实现方案,所述控制信号与可编程计算机系统协作(或能够与之协作),从而执行相应方法。因此,数字存储介质可以是计算机可读的。

根据本发明的一些实施例包括具有电子可读控制信号的数据载体,其能够与可编程计算机系统协作以便执行本文所述的方法之一。

通常,本发明的实施例可以实现为具有程序代码的计算机程序产品,程序代码可操作以在计算机程序产品在计算机上运行时执行方法之一。程序代码可以例如存储在机器可读载体上。

其他实施例包括存储在机器可读载体上的计算机程序,该计算机程序用于执行本文所述的方法之一。

换言之,本发明方法的实施例因此是具有程序代码的计算机程序,该程序代码用于在计算机程序在计算机上运行时执行本文所述的方法之一。

因此,本发明方法的另一实施例是其上记录有计算机程序的数据载体(或者数字存储介质或计算机可读介质),该计算机程序用于执行本文所述的方法之一。数据载体、数字存储介质或记录介质通常是有形的和/或非瞬时性的。

因此,本发明方法的另一实施例是表示计算机程序的数据流或信号序列,所述计算机程序用于执行本文所述的方法之一。数据流或信号序列可以例如被配置为经由数据通信连接(例如,经由互联网)传送。

另一实施例包括处理装置,例如,计算机或可编程逻辑器件,所述处理装置被配置为或适于执行本文所述的方法之一。

另一实施例包括其上安装有计算机程序的计算机,该计算机程序用于执行本文所述的方法之一。

根据本发明的另一实施例包括被配置为向接收器(例如,以电子方式或以光学方式)传送计算机程序的装置或系统,该计算机程序用于执行本文所述的方法之一。接收器可以是例如计算机、移动设备、存储设备等。装置或系统可以例如包括用于向接收器传送计算机程序的文件服务器。

在一些实施例中,可编程逻辑器件(例如,现场可编程门阵列)可以用于执行本文所述的方法的功能中的一些或全部。在一些实施例中,现场可编程门阵列可以与微处理器协作以执行本文所述的方法之一。通常,方法优选地由任意硬件装置来执行。

本文描述的装置可以使用硬件装置、或者使用计算机、或者使用硬件装置和计算机的组合来实现。

本文描述的装置或本文描述的装置的任何组件可以至少部分地在硬件和/或软件中实现。

本文描述的方法可以使用硬件装置、或者使用计算机、或者使用硬件装置和计算机的组合来执行。

本文描述的方法或本文描述的装置的任何组件可以至少部分地由硬件和/或由软件执行。

上述实施例对于本发明的原理仅是说明性的。应当理解的是,本文所述的布置和细节的修改和变形对于本领域其他技术人员将是显而易见的。因此,旨在仅由所附专利权利要求的范围来限制而不是由借助对本文的实施例的描述和解释所给出的具体细节来限制。

相关技术
  • 比特流合并
  • 合并编码比特流
技术分类

06120112978925