CN114205601A - 编解码视频中的解码器配置记录 - Google Patents

编解码视频中的解码器配置记录 Download PDF

Info

Publication number
CN114205601A
CN114205601A CN202111090725.0A CN202111090725A CN114205601A CN 114205601 A CN114205601 A CN 114205601A CN 202111090725 A CN202111090725 A CN 202111090725A CN 114205601 A CN114205601 A CN 114205601A
Authority
CN
China
Prior art keywords
visual media
media file
syntax element
video
format
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111090725.0A
Other languages
English (en)
Inventor
王业奎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lemon Inc Cayman Island
Original Assignee
Lemon Inc Cayman Island
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lemon Inc Cayman Island filed Critical Lemon Inc Cayman Island
Publication of CN114205601A publication Critical patent/CN114205601A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8451Structuring of content, e.g. decomposing content into time segments using Advanced Video Coding [AVC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

涉及编解码视频中的解码器配置记录。描述了用于对存储一个或多个图像的文件格式进行编码或解码的***、方法和装置。一种示例方法包括:根据格式规则执行视觉媒体文件与视觉媒体数据的比特流之间的转换,其中,该格式规则指定该视觉媒体文件中的语法元素的特性,其中,该语法元素具有指示用于指示与该比特流相关联的约束信息的字节数的值。

Description

编解码视频中的解码器配置记录
相关申请的交叉引用
根据适用的专利法和/或根据《巴黎公约》的规则,本申请是为了及时要求对2020年9月17日提交的美国临时专利申请No.63/079,892的优先权和利益。就法律规定的所有目的而言,上述申请的全部公开内容通过引用并入作为本申请公开的一部分。
技术领域
本专利文件涉及文件格式中的数字音频视频媒体信息的生成、存储和消费。
背景技术
在互联网和其他数字通信网络中,数字视频占据了最大的带宽使用量。随着能够接收并显示视频的连接用户设备的数量增加,预计针对数字视频使用的带宽需求将继续增长。
发明内容
本文件公开了可由视频编码器和解码器用于根据文件格式处理视频或图像的编解码表示的技术。
在一个示例方面,公开了一种视频处理方法。该方法包括:根据格式规则执行视觉媒体文件与视觉媒体数据的比特流之间的转换,其中,该比特流包括一个或多个输出层集和一个或多个参数集,该一个或多个参数集包括一个或多个配置文件层级语法结构,其中,该配置文件层级语法结构中的至少一个包括一般约束信息语法结构,其中,该格式规则指定语法元素包括在该视觉媒体文件中的配置记录中,并且其中,该语法元素指示由该配置记录中指示的输出层集索引标识的输出层集所符合的配置文件、层或级。
在另一个示例方面,公开了另一种视频处理方法。该方法包括:根据格式规则执行视觉媒体文件与视觉媒体数据的比特流之间的转换,其中,该格式规则指定该视觉媒体文件中的语法元素的特性,其中,该语法元素具有指示用于指示与该比特流相关联的约束信息的字节数的值。
在另一个示例方面,公开了另一种视频处理方法。该方法包括:根据格式规则执行视觉媒体文件与视觉媒体数据的比特流之间的转换,其中,该格式规则指定该视觉媒体文件中的语法元素的特性,并且其中,该格式规则指定具有指示级别标识的值的语法元素被使用八位编码在子图片公共群组框或子图片多群组框中的任何一个或两者中。
在另一个示例方面,公开了另一种视频处理方法。所述方法包括:根据格式规则执行视觉媒体数据与存储该视觉媒体数据的比特流表示的文件之间的转换;其中,该格式规则关于在该文件中标识的与该比特流表示相关联的配置文件、层、约束或层,指定对包括在该文件中的信息的约束。
在又一个示例方面,公开了一种视频编码器装置。该视频编码器包括处理器,该处理器被配置为实现上述方法。
在又一个示例方面,公开了一种视频解码器装置。该视频解码器包括处理器,该处理器被配置为实现上述方法。
在又一个示例方面,公开了一种具有存储在其上的代码的计算机可读介质。该代码以处理器可执行代码的形式体现了本文描述的方法之一。
在又一个示例方面,公开了一种具有存储在其上的比特流的计算机可读介质。该比特流是使用本文件中提出的方法生成或处理的。
贯穿本文件介绍了这些和其他特征。
附图说明
图1是示例视频处理***的框图。
图2是视频处理装置的框图。
图3是视频处理的示例方法的流程图。
图4是示出根据本公开的一些实施例的视频编解码***的框图。
图5是示出根据本公开的一些实施例的编码器的框图。
图6是示出根据本公开的一些实施例的解码器的框图。
图7示出了编码器框图的示例。
图8至图10是例如视频处理方法的流程图。
具体实施方式
为了便于理解,在本文件中使用了章节标题,并且章节标题并不将在每个章节中公开的技术和实施例的适用性仅限于该章节。此外,在一些描述中使用H.266术语只是为了便于理解,而不是为了限制所公开的技术的范围。同样,本文描述的技术也适用于其他视频编解码器协议和设计。在本文件中,关于VVC规范或ISOBMFF文件格式规范的当前草案,通过打开和关闭的双括号(例如,[[]])(指示双括号之间的文本是取消的文本),并通过加粗斜体文本(指示添加的文本)示出对文本的编辑更改。
1.简要讨论
本文档与视频文件格式有关。具体地,它涉及基于ISO基本媒体文件格式(ISOBMFF)的携带多功能视频编解码(VVC)视频比特流的媒体文件中的解码器配置信息和子图片实体群组的信令通知。对于由任何编解码器(例如VVC标准)编解码的视频比特流,以及对于任何视频文件格式(例如正在开发的VVC视频文件格式),可以单独地或以各种组合应用这些想法。
2.缩略语
ACT 自适应颜色变换
ALF 自适应环路滤波器
AMVR 自适应运动矢量分辨率
APS 适配参数集
AU 访问单元
AUD 访问单元分隔符
AVC 高级视频编解码(Rec.ITU-T H.264|ISO/IEC 14496-10)
B 双向预测
BCW 具有CU级权重的双向预测
BDOF 双向光流
BDPCM 基于块的增量脉冲码调制
BP 缓冲周期
CABAC 基于上下文的自适应二进制算术编解码
CB 编解码块
CBR 恒定比特率
CCALF 交叉分量自适应环路滤波器
CPB 编码图片缓冲器
CRA 纯净随机访问
CRC 循环冗余校验
CTB 编解码树块
CTU 编解码树单元
CU 编解码单元
CVS 编解码的视频序列
DPB 解码图片缓冲器
DCI 解码能力信息
DRAP 相关的随机访问点
DU 解码单元
DUI 解码单元信息
EG 指数哥伦布
Egk k 阶指数哥伦布
EOB 比特流结束
EOS 序列结束
FD 填充器数据
FIFO 先进先出
FL 固定长度
GBR 绿、蓝、红
GCI 一般约束信息
CGR 逐步解码刷新
GPM 几何分区模式
HEVC 高效视频编解码(Rec.ITU-T H.265|ISO/IEC 23008-2)
HRD 假设的参考解码器
HSS 假设的流调度器
I 帧内
IBC 帧内块复制
IDR 瞬时解码刷新
ILRP 层间参考图片
IRAP 帧内随机访问点
LFNST 低频不可分离变换
LPS 最小概然符号
LSB 最低有效位
LTRP 长期参考图片
MCS 带色度缩放的亮度映射
MIP 基于矩阵的帧内预测
MPS 最大概然符号
MSB 最高有效位
MTS 多变换选择
MVP 运动矢量预测
NAL 网络抽象层
OLS 输出层集
OP 操作点
OPI 操作点信息
P 预测性
PH 图片头
POC 图片顺序计数
PPS 图片参数集
PROF 具有光流的预测细化
PT 图片定时
PU 图片单元
QP 量化参数
RADL 随机访问可解码前导(图片)
RASL 随机访问跳过前导(图片)
RBSP 原始字节序列有效载荷
RGB 红、绿、蓝
RPL 参考图片列表
SAO 样点自适应偏移
SAR 样点纵横比
SEI 补充增强信息
SH 条带头
SLI 子图片级信息
SODB 数据比特的字符串
SPS 序列参数集
STRP 短期参考图片
STSA 步进式时域子层访问
TR 截断莱斯码
VBR 可变比特率
VCL 视频编解码层
VPS 视频参数集
VSEI 多功能补充增强信息(Rec.ITU-T H.274ISO/IEC 23002-7)
VUI 视频可用性信息
VVC 多功能视频编解码(Rec.ITU-T H.266ISO/IEC 23090-3)
3.视频编解码介绍
3.1.视频编解码标准
视频编解码标准主要是通过公知的ITU-T和ISO/IEC标准的开发而发展起来的。ITU-T制定了H.261和H.263,ISO/IEC制定了MPEG-1和MPEG-4视觉,两个组织联合制定了H.262/MPEG-2视频、H.264/MPEG-4高级视频编解码(AVC)标准和H.265/HEVC标准。自H.262以来,视频编解码标准是基于混合视频编解码结构的,其中使用时域预测加变换编解码。为了探索超越HEVC的未来视频编解码技术,VCEG和MPEG于2015年联合成立了联合视频探索小组(JVET)。此后,许多新的方法被JVET所采用,并被引入到名为联合探索模型(JEM)的参考软件中。JVET后来在多功能视频编解码(VVC)项目正式开始时更名为联合视频专家小组(JVET)。VVC是新的编解码标准,目标是比HEVC降低50%的比特率,该标准已由JVET在2020年7月1日结束的第19次会议上最终确定。
多功能视频编解码(VVC)标准(ITU-T H.266|ISO/IEC 23090-3)和相关联的多功能补充增强信息(VSEI)标准(ITU-T H.274ISO/IEC 23002-7)被设计用于最广泛的应用范围,包括诸如电视广播、视频会议或从存储介质回放等传统用途,以及更新的和更先进的使用场景,诸如自适应比特率流传输、视频区域提取、来自多个编解码的视频比特流的内容的合成与合并(merging)、多视图视频、可缩放分层编解码和视口自适应360°沉浸式媒体。
3.2.文件格式标准
媒体流应用程序通常基于IP、TCP和HTTP传输方法,并且通常依赖于诸如ISO基本媒体文件格式(ISOBMFF)的文件格式。一个这样的流***是HTTP上的动态自适应流(dynamic adaptive streaming over HTTP,DASH)。对于使用具有ISOBMFF和DASH的视频格式,将需要特定于视频格式的文件格式规范,诸如AVC文件格式和HEVC文件格式,以将视频内容封装在ISOBMFF轨道中以及封装在DASH表示和分段中。关于视频比特流的重要信息,例如,配置文件、层和级以及很多其他信息,将需要公开为文件格式级元数据和/或DASH媒体呈现描述(MPD),以用于内容选择目的,例如,用于在流会话开始时的初始化和在流会话期间用于流自适应两者的适当媒体段的选择。
类似地,对于使用具有ISOBMFF的图像格式,需要特定于图像格式的文件格式规范,诸如AVC图像文件格式和HEVC图像文件格式。
VVC视频文件格式,基于ISOBMFF的用于存储VVC视频内容的文件格式,目前正在由MPEG开发。
VVC图像文件格式,基于ISOBMFF的用于存储使用VVC编解码的图像内容的文件格式,目前正在由MPEG开发。
3.3.VVC视频文件格式的一些细节
3.3.1.解码器配置信息
3.3.1.1.VVC解码器配置记录
3.3.1.1.1.定义
此子条款指定了ISO/IEC 23090-3视频内容的解码器配置信息。
此记录包含每个样点中使用的长度字段的尺寸,以指示其包含的NAL单元的长度以及参数集(如果存储在该样点条目中)。此记录是外部制订的(其尺寸由包含它的结构提供)。
此记录包含一个版本字段。本规范的版本定义了此记录的版本1。对记录的不兼容更改将通过版本号的更改来指示。如果版本号无法被识别,读者不得试图对此记录或其应用到的流进行解码。
对此记录的兼容扩展将对其进行扩展,并且不会更改配置版本代码。读者应该准备好忽略超出他们理解的数据定义的未识别数据。
当轨道本身包含VVC比特流或通过解析‘subp’轨道参考包含VVC比特流时,VvcPtlRecord应存在于解码器配置记录中。如果轨道的解码器配置记录中的ptl_present_flag等于零,则该轨道将具有‘oref’轨道参考。
VvcPTLRecord、chroma_format_idc和bit_depth_minus8语法元素的值应该对于在解码该记录描述的流时激活的所有参数集(在本段下面的句子中称为“所有参数集”)有效。具体地,适用以下限制:
配置文件指示general_profile_idc应指示与此配置记录相关联的流符合的配置文件。
附注1:如果SPS是用不同的配置文件标记的,则流可能需要检查以确定整个流符合哪个配置文件(如果有的话)。如果没有对整个流进行检查,或者检查显示没有整个流符合的配置文件,则该整个流应被拆分为两个或更多个子流,子流具有单独的配置记录,在这些配置记录中可以满足这些规则。
层指示general_tier_flag应指示等于或大于所有参数集中指示的最高层的层。
general_constraint_info中的每一位只有当所有参数集都设置了该位的情况下才可以进行设置。
级指示general_level_idc应指示等于或大于针对所有参数集中的最高层指示的最高级的能力级。
以下约束适用于chroma_format_idc:
-如果ISO/IEC 23090-3中定义的sps_chroma_format_idc的值在轨道的NAL单元所参考的所有SPS中相同,则chroma_format_idc应等于sps_chroma_format_idc。
-否则,如果ptl_present_flag等于1,则chroma_format_idc应等于vps_ols_dpb_chroma_format[output_layer_set_idx],如ISO/IEC 23090-3中所定义的。
-否则,chroma_format_idc将不存在。
以下约束适用于bit_depth_minus8:
-如果ISO/IEC 23090-3中定义的sps_bitdepth_minus8的值在轨道的NAL单元所参考的所有SPS中相同,则bit_depth_minus8应等于sps_bitdepth_minus8。
-否则,如果ptl_present_flag等于1,则bit_depth_minus8应等于vps_ols_dpb_bitdepth_minus8[output_layer_set_idx],如ISO/IEC 23090-3中所定义的。
-否则,bit_depth_minus8将不存在。
在VVC解码器配置记录中提供关于色度格式和比特深度的显式指示,以及由VVC视频基本流使用的其他重要格式信息。如果两个序列在他们的VUI信息中的颜色空间指示中不同,则还需要两个不同的VVC样点条目。
存在阵列组来携带初始化NAL单元。NAL单元类型仅限于指示DCI、VPS、SPS、PPS、前缀APS和前缀SEI NAL单元。在ISO/IEC 23090-3和本规范中保留的NAL单元类型将来可能会获得定义,读者应该忽略具有保留或不允许的NAL单元类型值的阵列。
附注2:这种‘容忍’行为的设计是为了不引发错误,允许在未来的规范中对这些阵列进行向后兼容的扩展。
附注3:样点条目中携带的NAL单元紧接AUD和OPI NAL单元(如果有的话)被包括在从参考该样点条目的第一样点重建的访问单元中或在该访问单元的开始处。
建议阵列的顺序为DCI、VPS、SPS、PPS、前缀APS、前缀SEI。
3.3.1.1.2.语法
Figure BDA0003267352790000091
Figure BDA0003267352790000101
Figure BDA0003267352790000111
3.3.1.1.3.语义
general_profile_idc、general_tier_flag、general_sub_profile_idc、general_constraint_info、general_level_idc、ptl_frame_only_constraint_flag、ptl_multilayer_enabled_flag、sublayer_level_idc[i]包含如ISO/IEC 23090-3中为应用此配置记录的流所定义的,字段general_profile_idc、general_tier_flag、general_sub_profile_idc、general_constraint_info()、general_level_idc、ptl_multilayer_enabled_flag、ptl_frame_only_constraint_flag、sublayer_level_present和sublayer_level_idc[i]中的比特的匹配值。
avgFrameRate以帧/(256秒)为单位给出应用此配置记录的流的平均帧速率。值0指示未指定的平均帧速率。
constantFrameRate等于1指示应用此配置记录的流具有恒定的帧速率。值2指示该流中每个时域层的表示是恒定帧速率的。值0指示该流可以是也可以不是恒定帧速率。
大于1的numTemporalLayers表示应用此配置记录的轨道在时域上是可缩放的,并且包含的时域层(在ISO/IEC 23090-3中也称为时域子层或子层)的数量等于numTemporalLayers。值1指示应用此配置记录的轨道在时域上是不可缩放的。值0指示未知应用此配置记录的轨道是否是在时域上可缩放的。
lengthSizeMinusOne加1指示应用此配置记录的流中VVC视频流样点中NALUnitLength字段的长度(以字节(byte)为单位)。例如,一个字节的尺寸用值0指示。此字段的值应为0、1或3之一,其分别对应于用1、2或4字节编解码的长度。
等于1的ptl_present_flag指定轨道包含对应于特定输出层集的VVC比特流。等于0的ptl_present_flag指定轨道可以不包含对应于特定输出层集的VVC比特流,而是可以包含不形成输出层集的一个或多个单独的层或者不包括TemporalId等于0的子层的单独的子层。
num_sub_profiles定义解码器配置记录中指示的子配置文件的数量。
track_ptl指定由轨道中包含的VVC比特流表示的输出层集的配置文件、层和级。
output_layer_set_idx指定由轨道中包含的VVC比特流表示的输出层集的输出层集索引。output_layer_set_idx的值可以用作由外部部件提供给VVC解码器的TargetOlsIdx变量的值,如ISO/IEC 23090-3中针对解码包含在轨道中的比特流所指定的。
等于0的chroma_format_present_flag指定chroma_format_idc不存在。等于1的chroma_format_present_flag指定chroma_format_idc存在。
chroma_format_idc指示应用于此轨道的色度格式。以下约束适用于chroma_format_idc:
-如果ISO/IEC 23090-3中定义的sps_chroma_format_idc的值在轨道的NAL单元所参考的所有SPS中相同,则chroma_format_idc应等于sps_chroma_format_idc。
-否则,如果ptl_present_flag等于1,则chroma_format_idc应等于vps_ols_dpb_chroma_format[output_layer_set_idx],如ISO/IEC 23090-3中所定义的。
-否则,chroma_format_idc将不存在。
等于0的bit_depth_present_flag指定不存在bit_depth_minus8。等于1的bit_depth_present_flag指定存在bit_depth_minus8。
bit_depth_minus8指示应用于此轨道的比特深度。以下约束适用于bit_depth_minus8:
-如果ISO/IEC 23090-3中定义的sps_bitdepth_minus8的值在轨道的NAL单元所参考的所有SPS中相同,则bit_depth_minus8应等于sps_bitdepth_minus8。
-否则,如果ptl_present_flag等于1,则bit_depth_minus8应等于vps_ols_dpb_bitdepth_minus8[output_layer_set_idx],如ISO/IEC 23090-3中所定义的。
-否则,bit_depth_minus8将不存在。
numArrays指示所指示类型的NAL单元的阵列的数量。
当array_completeness等于1时,指示给定类型的所有NAL单元都在下面的阵列中,没有一个在流中;当array_completeness等于0时,指示所指示类型的附加NAL单元可能在该流中;默认值和允许值受示例条目名称的约束。
NAL_unit_type指示以下阵列中NAL单元的类型(该阵列应该都为该类型);其采用ISO/IEC 23090-2中定义的值;其被限制为采用指示DCI、VPS、SPS、PPS、APS、前缀SEI或后缀SEI NAL单元的值之一。
numNalus指示应用此配置记录的流的配置记录中包括的所指示类型的NAL单元的数量。SEI阵列将只包含‘声明性’SEI消息,即那些提供关于整个流的信息的SEI消息。这种SEI的示例是用户数据SEI。
nalUnitLength指示NAL单元的长度(以字节为单位)。
nalUnit包含ISO/IEC 23090-3中规定的DCI、VPS、SPS、PPS、APS或声明性SEI NAL单元。
3.3.2.子图片实体群组
3.3.2.1.概述
定义子图片实体群组,提供指示从多个VVC子图片轨道合并的比特流的一致性的级别信息。
附注:VVC基本轨道提供了另一种用于合并VVC子图片轨道的机制。
隐式重建过程需要修改参数集。子图片实体群组给出指导,以简化重构比特流的参数集生成。
当要联合解码的该群组内的编码子图片是可互换的,即播放器从具有相同级别贡献的样点方面子图片的一个群组中选择若干个活动轨道时,SubpicCommonGroupBox指示联合解码时的组合规则和结果组合的level_idc。
当有具有不同属性(例如不同分辨率)的编码子图片被选择要联合解码时,SubpicMultipleGroupsBox指示联合解码时的组合规则和结果组合的level_idc。
子图片实体群组中包括的所有entity_id值都将识别VVC子图片轨道。当存在时,SubpicCommonGroupBox和SubpicMultipleGroupsBox应被包含在影片级MetaBox中的GroupsListBox中,而不应被包含在文件级或轨道级MetaBox中。
3.3.2.2.子图片公共群组框的语法
Figure BDA0003267352790000142
3.3.2.3.子图片公共群组框的语义
level_idc指定实体群组中num_active_tracks实体的任何选择符合的级别。
num_active_tracks指定为其提供level_idc值的轨道的数量。
3.3.2.4.子图片多群组框的语法
Figure BDA0003267352790000141
3.3.2.5.语义
Level_idc指定对于0到num_subgroup_ids-1(含0和num_subgroup_ids-1)范围内的所有i值,选择ID等于i的子群组中的任意num_active_tracks[i]轨道的组合所符合的级别。
num_subgroup_ids指定分离的子群组的数量,每个子群组由相同的track_subgroup_id[i]值标识。不同的子群组由track_subgroup_id[i]的不同值标识。
track_subgroup_id[i]指定此实体群组中第i个轨道的子群组ID。子群组ID值的范围为0到num_subgroup_ids-1(含0和num_subgroup_ids-1)。
num_active_tracks[i]指定level_idc中记录的ID等于i的子群组中的轨道数量。
4.公开的技术方案所解决的技术问题的示例
关于解码器配置信息和子图片实体群组信息的信令通知的VVC视频文件格式的最新设计存在以下问题:
1)规定配置文件指示general_profile_idc应指示与此配置记录相关联的流符合的配置文件。然而,该流可能对应于多个输出层集,因此该语义可能允许在配置记录中信令通知general_profile_idc的错误值。
2)规定层指示general_tier_flag应指示等于或大于所有参数集中指示的最高层的层。然而,可能有profile_tier_level()结构在参数集中被信令通知,并且应用于不在当前配置记录范围内的OLS,因此该语义可能允许在配置记录中信令通知此字段的错误值。此外,可能有未被参考的profile_tier_level()结构在参数集中被信令通知,并且VPS可能包括应用于不在当前配置记录范围内的OLS的PTL结构。
3)规定general_constraint_info中的每一位只有在所有参数集都设置了该位时才可以设置。然而,可能有profile_tier_level()结构在参数集中被信令通知,并且应用于不在当前配置记录范围内的OLS,因此该语义可能允许在配置记录中信令通知此字段的错误值。
4)规定级指示general_level_idc应指示等于或大于针对所有参数集中的最高层指示的最高级的能力级。然而,可能有profile_tier_level()结构在参数集中被信令通知,并应用于不在当前配置记录范围内的OLS。此外,最高层的最高级可能低于最低层的最高级,而级决定最大图片宽度、高度等,这些对于确定所需的解码能力至关重要。因此,这种语义可能允许在配置记录中信令通知此字段的错误值。
5)在VvcPTLRecord()语法结构的语法和语义中,与字段num_bytes_constraint_info和general_constraint_info相关的问题如下:
a.字段num_bytes_constraint_info使用8位进行编解码。然而,VVC规范中定义的general_constraint_info()语法结构中的最大位数是336位,即42字节,因此使用6位就足够了。
b.此外,缺少字段num_bytes_constraint_info的语义。
c.字段general_constraint_info的条件是“if(num_bytes_constraint_info>0)”。然而,在VVC规范中定义的profile_tier_level()语法结构中,每当配置文件、层和级存在时,general_constraint_info()语法结构就存在,而即使general_constraint_info()语法结构中的第一语法元素gci_present_flag等于0,general_constraint_info()语法结构的长度仍然是一个字节,而不是零字节。因此,应该将该条件更改为“if(num_bytes_constraint_info>1)”,即当general_constraint_info()语法结构的gci_present_flag等于0时,不要信令通知字段general_constraint_info。
d.字段general_constraint_info使用(8*num_bytes_constraint_info-2)位编码。然而,general_constraint_info()的长度,即VVC规范中定义的general_constraint_info()语法结构是整数字节。
6)在VvcDecoderConfigurationRecord中,当ptl_present_flag等于1时(即,当track_ptl字段被信令通知时),字段output_layer_set_idx总是被信令通知。然而,如果由VVC轨道(在解析参考的VVC轨道或VVC子图片轨道(如果有的话)之后)携带的VVC比特流是单层比特流,则通常不需要知道OLS索引的值,即使知道OLS索引是有用的,也可以很容易地导出它是只包含该层的OLS的OLS索引。
7)VvcDecoderConfigurationRecord中的NAL_unit_type字段使用6位。然而,5位就足够了。
8)ptl_present_flag的语义规定如下:等于1的ptl_present_flag指定轨道包含对应于特定输出层集的VVC比特流。等于0的ptl_present_flag指定轨道可以不包含对应于特定输出层集的VVC比特流,而是可以包含不形成输出层集的一个或多个单独的层或者不包括TemporalId等于0的子层的单独的子层。
然而,轨道包含对应于多个输出层集的VVC比特流的情况没有被覆盖。
9)SubpicCommonGroupBox和SubpicMultipleGroupsBox中的levl_idc字段使用32位进行编解码。然而,8位就足够了。
10)SubpicCommonGroupBox中的num_active_tracks字段以及SubpicMultipleGroupsBox中的num_subgroup_ids字段和num_active_tracks[i]字段都使用32位进行编解码。然而,16位对于它们全部就足够了。
5.解决方案列表
为了解决上述问题和其他问题,公开了如下所述的方法。这些项目应被视为解释一般概念的示例,而不应以狭隘的方式加以解释。此外,这些项目可以单独应用或以任何方式组合。
1)为了解决问题1,规定配置文件指示general_profile_idc应指示此配置记录中由output_layer_set_idx标识的输出层集所符合的配置文件。
2)为了解决问题2,规定层指示general_tier_flag应指示一个层,该层等于或大于此配置记录中由output_layer_set_idx标识的输出层集所符合的所有profile_tier_level()语法结构(在所有参数集中)中指示的最高层。
a.可替代地,规定层指示general_tier_flag应指示此配置记录中由output_layer_set_idx标识的输出层集符合的所有profile_tier_level()语法结构中(所有参数集中)指示的最高层。
b.可替代地,规定层指示general_tier_flag应指示与此配置记录相关联的流所符合的最高层。
c.可替代地,规定层指示general_tier_flag应指示此配置记录相关联的流所符合的一个层。
3)为了解决问题3,规定general_constraint_info中的每一位只有在此配置记录中由output_layer_set_idx标识的输出层集符合的所有profile_tier_level()语法结构中(所有参数集中)的所有general_constraints_info()语法结构中都设置了该位时才可以被设置。
4)为了解决问题4,规定级指示general_level_idc应指示等于或大于此配置记录中由output_layer_set_idx标识的输出层集所符合的所有profile_tier_level()语法结构中(所有参数集中)的最高级的能力级别。
5)为解决问题5,提出以下一项或多项:
a.字段num_bytes_constraint_info使用6位进行编解码。
b.字段num_bytes_constraint_info紧随ptl_multilayer_enabled_flag字段之后被编解码。
c.字段num_bytes_constraint_info的语义规定如下:num_bytes_constraint_info指定ISO/IEC 23090-3中定义的general_constraint_info()语法结构中的字节数量。该值等于1指示general_constraint_info()语法结构中的gci_present_flag等于0,并且在此个VvcPTLRecord中没有信令通知general_constraint_info字段。
d.general_constraint_info字段的信令通知条件从“if(num_bytes_constraint_info>0)”更改为“if(num_bytes_constraint_info>1)”。
e.general_constraint_info字段使用8*num_bytes_constraint_info位而不是(8*num_bytes_constraint_info-2)位进行编解码。
6)为了解决问题6,即使当ptl_present_flag等于1时,VvcDecoderConfigurationRecord中的字段output_layer_set_idx的信令通知也是可选的,例如,条件是“if(track_ptl.ptl_multilayer_enabled_flag)”,这指示VVC比特流仅包含在VVC轨道中携带的一个层(在解析参考的VVC轨道或VVC子图片轨道(如果有的话)之后)。
a.可替代地,当ptl_present_flag等于1并且output_layer_set_idx不存在时,其值被推断为等于OLS的OLS索引,该OLS仅包含VVC轨道中携带的层(在解析参考的VVC轨道或VVC子图片轨道(如果有的话)之后)。
7)为了解决问题7,VvcDecoderConfigurationRecord中的NAL_unit_type字段使用5位而不是6位。
8)为了解决问题8,ptl_present_flag的语义规定如下:等于1的ptl_present_flag指定轨道包含对应于特定输出层集的VVC比特流。等于0的ptl_present_flag指定轨道可以不包含对应于特定输出层集的VVC比特流,而是可以包含对应于多个输出层集的VVC比特流或者包含不形成输出层集的一个或多个单独的层或者不包括TemporalId等于0的子层的单独的子层。
9)为了解决问题9,规定SubpicCommonGroupBox和SubpicMultipleGroupsBox中的一个或两个中的level_idc字段的编码改为使用8位。
a.可替代地,还可以将level_idc字段之后的后续24位指定为保留位。
b.可替代地,还可以将level_idc字段之后的后续8位指定为保留位。
c.可替代地,还可以将level_idc字段之后的后续零位指定为保留位。
10)为了解决问题10,规定SubpicCommonGroupBox中的num_active_tracks字段和SubpicMultipleGroupsBox中的num_subgroup_ids字段和num_active_tracks[i]字段中的一个或多个的编码改为使用16位。
a.可替代地,还可以将上述字段的一个或多个字段之后的后续16位指定为保留位。
b.可替代地,还可以将上述字段的一个或多个字段之后的后续零位指定为保留位。
6.实施例
下面是用于上文在第5节中总结的本发明的一些方面的一些示例实施例,其可以应用于VVC视频文件格式的标准规范。修改后的文本是基于最新的规范草案。大多数已添加或修改的相关部分用加粗斜体文本指示,一些删除的部分用开括号和闭括号(例如[[]])指示,两个括号之间删除的文本指示删除或取消的文本。可能还有其他一些编辑性质的更改,因此没有突出显示。
6.1.第一实施例
此实施例用于项目1、2、3、4、5a、5b、5c、5d、5e、6、6a、7和8。
6.1.1.解码器配置信息
6.1.1.1.VVC解码器配置记录
6.1.1.1.1.定义
此子条款指定了ISO/IEC 23090-3视频内容的解码器配置信息。
此记录包含每个样点中使用的长度字段的尺寸,以指示其包含的NAL单元的长度以及参数集、DCI和SEI NAL单元(如果存储在该样点条目中)。此记录是外部制订的(其尺寸由包含它的结构提供)。
此记录包含版本字段。本规范的版本定义了此记录的版本1。对记录的不兼容更改将通过版本号的更改来指示。如果版本号无法被识别,读者不得试图对此记录或其应用到的流进行解码。
对此记录的兼容扩展将对其进行扩展,并且不会更改配置版本代码。读者应该准备好忽略超出他们理解的数据定义的未识别数据。
当轨道本身包含VVC比特流或通过解析‘subp’轨道参考包含VVC比特流时,VvcPtlRecord应存在于解码器配置记录中,并且在这种情况下,由字段output_layer_set_idx指示用于该VVC比特流的特定输出层集。如果轨道的解码器配置记录中的ptl_present_flag等于零,则该轨道将具有‘oref’轨道参考。
VvcPTLRecord、chroma_format_idc和bit_depth_minus8语法元素的值对于在解码该记录描述的流时[[激活的]]参考的所有参数集(在本段下面的句子中称为“所有参数集”)有效。具体地,适用以下限制:
配置文件指示general_profile_idc应指示此配置记录[[相关联的流]]中由output_layer_set_idx标识的输出层集所符合的配置文件。
附注1:如果[[SPS是用]]不同的配置文件是针对此配置记录中由output_layer_set_idx标识的输出层集的不同CVS标记的,则流可能需要检查以确定整个流符合哪个配置文件(如果有的话)。如果没有对整个流进行检查,或者检查显示没有整个流符合的配置文件,则该整个流需要被拆分为两个或更多个子流,子流具有单独的配置记录,在这些配置记录中可以满足这些规则。
层指示general_tier_flag应指示一个层,该层等于或大于此配置记录中由output_layer_set_idx标识的输出层集所符合的所有[[参数集]]profile_tier_level() 语法结构(在所有参数集中)中指示的最高层。
general_constraints_info中的每一位只有[[所有参数集设置该位]]在此配置记录中由output_layer_set_idx标识的输出层集所符合的所有profile_tier_level()语法结构中(所有参数集中)的所有general_constraints_info()语法结构中都设置了该位时才可以被设置。
级指示general_level_idc应指示等于或大于此配置记录中由output_layer_set_idx标识的输出层集所符合的所有[[参数集]]profile_tier_level()语法结构中(所有参数集中)[[针对最高层指示的]]的最高级的能力级别。
以下约束适用于chroma_format_idc:
-如果ISO/IEC 23090-3中定义的sps_chroma_format_idc的值在轨道的NAL单元所参考的所有SPS中相同,则chroma_format_idc应等于sps_chroma_format_idc。
-否则,如果ptl_present_flag等于1,则chroma_format_idc应等于vps_ols_dpb_chroma_format[output_layer_set_idx],如ISO/IEC 23090-3中所定义的。
-否则,chroma_format_idc将不存在。
以下约束适用于bit_depth_minus8:
-如果ISO/IEC 23090-3中定义的sps_bitdepth_minus8的值在轨道的NAL单元所参考的所有SPS中相同,则bit_depth_minus8应等于sps_bitdepth_minus8。
-否则,如果ptl_present_flag等于1,则bit_depth_minus8应等于vps_ols_dpb_bitdepth_minus8[output_layer_set_idx],如ISO/IEC 23090-3中所定义的。
-否则,bit_depth_minus8将不存在。
在VVC解码器配置记录中提供关于色度格式和比特深度的显示指示,以及由VVC视频基本流使用的其他重要格式信息。如果两个序列在它们的VUI信息中的颜色空间或比特深度指示中不同,则还需要两个不同的VVC样点条目。
存在阵列组来携带初始化非VCL NAL单元。NAL单元类型仅限于指示DCI、VPS、SPS、PPS、前缀APS和前缀SEI NAL单元。在ISO/IEC 23090-3和本规范中保留的NAL单元类型将来可能会获得定义,读者应该忽略具有保留或不允许的NAL单元类型值的阵列。
附注2:这种‘容忍’行为的设计是为了不引发错误,允许在未来的规范中对这些阵列进行向后兼容的扩展。
附注3:样点条目中携带的NAL单元紧接AUD和OPI NAL单元(如果有的话)被包括在从参考该样点条目的第一样点重建的访问单元中或在该访问单元的开始处。
建议阵列的顺序为DCI、VPS、SPS、PPS、前缀APS、前缀SEI。
6.1.1.1.2.语法
Figure BDA0003267352790000211
Figure BDA0003267352790000221
Figure BDA0003267352790000231
6.1.1.1.3.语义
general_profile_idc、general_tier_flag、general_level_idc、ptl_frame_only_constraint_flag、ptl_multilayer_enabled_flag、general_constraint_info、ptl_sublayer_level_present[i]、sublayer_level_idc[i]、num_sub_profiles和general_sub_profile_idc[j]包含如ISO/IEC 23090-3中针对应用此配置记录的流所定义的,字段或语法结构general_profile_idc、general_tier_flag、general_level_idc、ptl_frame_only_constraint_flag、ptl_multilayer_enabled_flag、general_constraint_info()、ptl_sublayer_level_present[i]、sublayer_level_idc[i]、tl_num_sub_profiles和general_sub_profile_idc[j]的匹配值。
num_bytes_constraint_info指定ISO/IEC 23090-3中定义的general_constraint_info()语法结构中的字节数量。该值等于1指示general_constraint_info()语法结构中的gci_present_flag等于0,并且在此个VvcPTLRecord中没有信令通知general_constraint_info字段。
avgFrameRate以帧/(256秒)为单位给出应用此配置记录的流的平均帧速率。值0指示未指定的平均帧速率。
constantFrameRate等于1指示应用此配置记录的流具有恒定的帧速率。值2指示该流中每个时域层的表示是恒定帧速率的。值0指示该流可以是也可以不是恒定帧速率。
大于1的numTemporalLayers表示应用此配置记录的轨道在时域上是可缩放的,并且包含的时域层(在ISO/IEC 23090-3中也称为时域子层或子层)的数量等于numTemporalLayers。值1指示应用此配置记录的轨道在时域上是不可缩放的。值0指示未知应用此配置记录的轨道是否是在时域上可缩放的。
lengthSizeMinusOne加1指示应用此配置记录的流中VVC视频流样点中NALUnitLength字段的长度(以字节为单位)。例如,一个字节的尺寸用值0指示。此字段的值应为0、1或3之一,其分别对应于用1、2或4字节编解码的长度。
等于1的ptl_present_flag指定轨道包含对应于特定输出层集的VVC比特流。等于0的ptl_present_flag指定轨道可以不包含对应于特定输出层集的VVC比特流,而是可以包含对应于多个输出层集的VVC比特流或者包含不形成输出层集的一个或多个单独的层或者不包括TemporalId等于0的子层的单独的子层。
track_ptl指定由轨道中包含的VVC比特流表示的输出层集的配置文件、层和级。
output_layer_set_idx指定由轨道中包含的VVC比特流表示的输出层集的输出层集索引。output_layer_set_idx的值可以用作由外部部件提供给VVC解码器的TargetOlsIdx变量的值,如ISO/IEC 23090-3中针对解码包含在轨道中的比特流所指定的。当ptl_present_flag等于1并且output_layer_set_idx不存在时,其值被推断为等于OLS的OLS索引,该OLS仅包含VVC轨道中携带的层(在解析参考的VVC轨道或VVC子图片轨道(如果有的话)之后)。
等于0的chroma_format_present_flag指定chroma_format_idc不存在。等于1的chroma_format_present_flag指定chroma_format_idc存在。
chroma_format_idc指示应用于此轨道的色度格式。
等于0的bit_depth_present_flag指定不存在bit_depth_minus8。等于1的bit_depth_present_flag指定存在bit_depth_minus8。
bit_depth_minus8指示应用于此轨道的比特深度。
numArrays指示所指示类型的NAL单元阵列的数量。
当array_completeness等于1时,指示给定类型的所有NAL单元都在下面的阵列中,没有一个在流中;当array_completeness等于0时,指示所指示类型的附加NAL单元可能在该流中;允许值受示例条目名称的约束。
NAL_unit_type指示以下阵列中NAL单元的类型(该阵列应该都为该类型);其采用ISO/IEC 23090-3中定义的值;其被限制为采用指示DCI、VPS、SPS、PPS、前缀APS或后缀SEINAL单元的值之一。
numNalus指示应用此配置记录的流的配置记录中包括的所指示类型的NAL单元的数量。SEI阵列将只包含‘声明性’SEI消息,即那些提供关于整个流的信息的SEI消息。这种SEI的一个示例是用户数据SEI。
nalUnitLength指示NAL单元的长度(以字节为单位)。
nalUnit包含ISO/IEC 23090-3中规定的DCI、VPS、SPS、PPS、APS或声明性SEI NAL单元。
图1是示出可以在其中实现本文公开的各种技术的示例视频处理***1900的框图。各种实现可包括***1900的部分或全部组件。***1900可以包括用于接收视频内容的输入1902。该视频内容可以以原始或未压缩格式接收,例如,8位或10位多分量像素值,或者可以以已压缩或已编码格式接收。输入1902可以表示网络接口、***总线接口或存储接口。网络接口的示例包括诸如以太网、无源光网络(PON)等的有线接口和诸如Wi-Fi或蜂窝接口的无线接口。
***1900可以包括编解码1904,其可以实现本文件中描述的各种编解码或编码方法。编解码1904可以降低从输入1902到编解码1904的输出的视频的平均比特率,以产生该视频的编解码表示。因此,编解码技术有时被称为视频压缩或视频转码技术。编解码1904的输出可以存储,或者经由连接的通信发送,如组件1906所表示的。在输入1902处接收的视频的存储或通信的比特流(或编码的)表示可以由组件1908用于生成向显示接口1910发送的像素值或可显示视频。从比特流表示生成用户可视视频的过程有时被称为视频解压缩。此外,尽管某些视频处理操作被称为“编码”操作或工具,但应理解,编码工具或操作在编码器处使用,并且将编码结果逆转的对应解码工具或操作将由解码器执行。
***总线接口或显示接口的示例可以包括通用串行总线(USB)或高清晰度多媒体接口(HDMI)或显示端口等。存储接口的示例包括SATA(串行高级技术附件)、PCI、IDE接口等。本文件中描述的技术可以体现在各种电子设备中,诸如移动电话、膝上型计算机、智能电话或者能够执行数字数据处理和/或视频显示的其他设备。
图2是视频处理装置3600的框图。装置3600可用于实现本文描述的一个或多个方法。装置3600可以体现在智能手机、平板电脑、计算机、物联网(IoT)接收器等中。装置3600可以包括一个或多个处理器3602、一个或多个存储器3604和视频处理硬件3606。处理器(多个处理器)3602可以被配置为实现本文件中描述的一个或多个方法。存储器(多个存储器)3604可以用于存储用于实现本文描述的方法和技术的数据和代码。视频处理硬件3606可用于在硬件电路中实现本文件中描述的一些技术。在一些实施例中,视频处理硬件3606可以至少部分地包括在处理器3602中,例如图形协处理器。
图4是示出可以利用本公开的技术的示例视频编解码***100的框图。
如图4所示,视频编解码***100可以包括源设备110和目的地设备120。源设备110生成编码视频数据,其可以被称为视频编码设备。目的地设备120可以对源设备110生成的编码视频数据进行解码,目的地设备120可以被称为视频解码设备。
源设备110可以包括视频源112、视频编码器114和输入/输出(I/O)接口116。
视频源112可以包括诸如视频捕获设备的源、用于从视频内容提供商接收视频数据的接口和/或用于生成视频数据的计算机图形***,或者这些源的组合。视频数据可以包括一个或多个图片。视频编码器114对来自视频源112的视频数据进行编码以生成比特流。比特流可以包括形成视频数据的编解码表示的比特序列。比特流可以包括编码图片和相关联的数据。编码图片是图片的编解码表示。相关联的数据可以包括序列参数集、图片参数集和其他语法结构。I/O接口116可以包括调制器/解调器(调制解调器)和/或发送器。编码视频数据可以经由I/O接口116通过网络130a直接向目的地设备120发送。编码视频数据也可以存储在存储介质/服务器130b上,以供目的地设备120访问。
目的地设备120可以包括I/O接口126、视频解码器124和显示设备122。
I/O接口126可以包括接收器和/或调制解调器。I/O接口126可以从源设备110或存储介质/服务器130b获得编码视频数据。视频解码器124可以对编码视频数据进行解码。显示设备122可以将解码视频数据向用户显示。显示设备122可以与目的地设备120集成,或者可以在目的地设备120的外部,目的地设备120被配置为与外部显示设备接口。
视频编码器114和视频解码器124可以根据视频压缩标准操作,诸如高效视频编解码(HEVC)标准、多功能视频编解码(VVM)标准和其他当前和/或未来的标准。
图5是示出视频编码器200的示例的框图,视频编码器200可以是图4所示的***100中的视频编码器114。
视频编码器200可以被配置为执行本公开的任何或所有技术。在图5的示例中,视频编码器200包括多个功能组件。本公开中描述的技术可以在视频编码器200的各个组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
视频编码器200的功能组件可以包括分区单元201、预测单元202、残差生成单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重建单元212、缓冲器213和熵编解码单元214,预测单元202可以包括模式选择单元203、运动估计单元204、运动补偿单元205和帧内预测单元206。
在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在一个示例中,预测单元202可以包括帧内块复制(IBC)单元。IBC单元可以在IBC模式下执行预测,在该模式中至少一个参考图片是当前视频块所在的图片。
此外,诸如运动估计单元204和运动补偿单元205的一些组件可以是高度集成的,但为了说明的目的,在图5的示例中分开表示。
分区单元201可以将图片分区为一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块尺寸。
模式选择单元203可以例如基于错误结果,在帧内或帧间选择编码模式之一,并将所得的帧内或帧间编解码块提供给残差生成单元207以生成残差块数据,以及提供给重建单元212以重建编解码块以用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测(CIIP)模式的组合,其中,预测基于帧间预测信号和帧内预测信号。模式选择单元203还可以在帧间预测的情况下为块选择运动矢量的分辨率(例如,子像素或整数像素精度)。
为了对当前视频块执行帧间预测,运动估计单元204可以通过将来自缓冲器213的一个或多个参考帧与当前视频块进行比较来生成当前视频块的运动信息。运动补偿单元205可以基于运动信息和来自缓冲器213的除与当前视频块相关联的图片之外的图片的解码样点来确定当前视频块的预测视频块。
运动估计单元204和运动补偿单元205可以例如根据当前视频块是处于I条带、P条带还是B条带中,对当前视频块执行不同的操作。
在一些示例中,运动估计单元204可以对当前视频块执行单向预测,并且运动估计单元204可以搜索列表0或列表1的参考图片以获得用于当前视频块的参考视频块。然后,运动估计单元204可以生成指示包含参考视频块的列表0或列表1中的参考图片的参考索引,以及指示当前视频块与参考视频块之间的空间位移的运动矢量。运动估计单元204可以输出参考索引、预测方向指示符和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前块的预测视频块。
在其他示例中,运动估计单元204可以对当前视频块执行双向预测,运动估计单元204可以在列表0中的参考图片中搜索用于当前视频块的参考视频块,并且还可以在列表1中的参考图片中搜索用于当前视频块的另一参考视频块。然后,运动估计单元204可以生成指示包含参考视频块的列表0和列表1中的参考图片的参考索引,以及指示参考视频块与当前视频块之间的空间位移的运动矢量。运动估计单元204可以输出当前视频块的参考索引和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前视频块的预测视频块。
在一些示例中,运动估计单元204可以输出用于解码器的解码处理的运动信息完全集合。
在一些示例中,运动估计单元204可以不输出用于当前视频的运动信息完全集合。相反,运动估计单元204可以参考另一视频块的运动信息信令通知当前视频块的运动信息。例如,运动估计单元204可以确定当前视频块的运动信息与相邻视频块的运动信息充分相似。
在一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中指示一个值,该值向视频解码器300指示当前视频块具有与另一视频块相同的运动信息。
在另一示例中,运动估计单元204可以在与当前视频块相关联的语法结构中识别另一视频块和运动矢量差(MVD)。该运动矢量差指示当前视频块的运动矢量与指示的视频块的运动矢量之间的差值。视频解码器300可以使用指示的视频块的运动矢量和该运动矢量差来确定当前视频块的运动矢量。
如上所述,视频编码器200可以预测地信令通知该运动矢量。可由视频编码器200实现的预测信令技术的两个示例包括高级运动矢量预测(AMVP)和合并模式信令。
帧内预测单元206可以对当前视频块执行帧内预测。当帧内预测单元206对当前视频块执行帧内预测时,帧内预测单元206可以基于同一图片中的其他视频块的解码样点生成用于当前视频块的预测数据。用于当前视频块的预测数据可以包括预测视频块和各种语法元素。
残差生成单元207可以通过从当前视频块减去(例如,由减号指示的)当前视频块的预测视频块来生成当前视频块的残差数据。当前视频块的残差数据可以包括对应于当前视频块中的样点的不同样点分量的残差视频块。
在其他示例中,例如在跳过模式下,对于当前视频块可以没有用于当前视频块的残差数据,并且残差生成单元207可以不执行减法操作。
变换处理单元208可以通过对与当前视频块相关联的残差视频块应用一个或多个变换来生成用于当前视频块的一个或多个变换系数视频块。
在变换处理单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可以基于与当前视频块相关联的一个或多个量化参数(QP)值来量化与当前视频块相关联的变换系数视频块。
逆量化单元210和逆变换单元211可以分别对变换系数视频块应用逆量化和逆变换,以从变换系数视频块重建残差视频块。重建单元212可以将重建的残差视频块加到来自由预测单元202生成的一个或多个预测视频块的对应样点,以产生与当前块相关联的重建视频块,以存储在缓冲器213中。
在重建单元212重建视频块之后,可以执行环路滤波操作以减少视频块中的视频块伪影。
熵编解码单元214可以从视频编码器200的其他功能组件接收数据。当熵编解码单元214接收数据时,熵编解码单元214可以执行一个或多个熵编码操作以生成熵编码数据并输出包括该熵编码数据的比特流。
图6是示出视频解码器300的示例的框图,视频解码器300可以是图4所示的***100中的视频解码器114。
视频解码器300可以被配置为执行本公开的任何或所有技术。在图6的示例中,视频解码器300包括多个功能组件。本公开中描述的技术可以在视频解码器300的各个组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
在图6的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305、以及重建单元306和缓冲器307。在一些示例中,视频解码器300可以执行与关于视频编码器200(图5)描述的编码遍次(pass)大致相反的解码遍次。
熵解码单元301可以取回编码比特流。编码比特流可以包括熵编码视频数据(例如,视频数据的编解码块)。熵解码单元301可以对熵编码的视频数据进行解码,并且运动补偿单元302可以从熵解码的视频数据中确定运动信息,其包括运动矢量、运动矢量精度、参考图片列表索引和其他运动信息。运动补偿单元302例如可以通过执行AMVP和合并模式来确定这样的信息。
运动补偿单元302可以产生运动补偿块,可能地基于内插滤波器执行内插。用于以亚像素精度使用的插值滤波器的标识符可以被包括在语法元素中。
运动补偿单元302可以使用视频编码器200在视频块的编码期间使用的内插滤波器来计算参考块的子整数像素的内插值。运动补偿单元302可以根据接收到的语法信息确定视频编码器200使用的内插滤波器,并且使用该内插滤波器产生预测块。
运动补偿单元302可以使用一些语法信息来确定用于对编解码的视频序列的帧和/或条带进行编码的块的尺寸、描述编解码的视频序列的图片的每个宏块如何被分区的分区信息、指示每个分区如何被编码的模式、每个帧间编解码块的一个或多个参考帧(和参考帧列表)以及用于对编解码的视频序列进行解码的其他信息。
帧内预测单元303可以使用例如在比特流中接收的帧内预测模式,以从空间相邻的块形成预测块。逆量化单元303对比特流中提供并由熵解码单元301解码的量化视频块系数进行逆量化,即解量化。逆变换单元303应用逆变换。
重建单元306可以将残差块与运动补偿单元202或帧内预测单元303生成的对应预测块相加,以形成解码块。如果需要,还可以应用去块滤波器以对解码块进行滤波,以便去除块伪影。然后将解码视频块存储在缓冲器307中,缓冲器307提供用于随后的运动补偿/帧内预测的参考块,并且还产生解码视频用于在显示设备上呈现。
接下来提供一些实施例优选的解决方案的列表。
以下解决方案示出了在前一节(例如,项目1-4)中讨论的技术的示例实施例。
1.一种视觉媒体处理方法(例如,图3中所述的方法3000),该方法包括:根据格式规则执行(3002)视觉媒体数据与存储该视觉媒体数据的比特流表示的文件之间的转换;其中,该格式规则关于在该文件中标识的与该比特流表示相关联的配置文件、层、约束或层,指定对包括在该文件中的信息的约束。
2.根据解决方案1的方法,其中,该格式规则指定该文件包括在该文件中标识的比特流表示的输出层集所符合的配置文件的标识。
3.根据解决方案1至2的任一项的方法,其中,该格式规则指定在该文件中标识的层等于或高于包括在该文件中的输出层集合所符合的所有语法结构中指示的最高层。
4.根据解决方案1至3的任一项的方法,其中,该格式规则指定该文件中标识的约束与由语法结构的一个或多个约束字段指示的对应值对齐,该语法结构指示该文件中的输出层集所符合的约束。
5.根据解决方案1至4的任一项的方法,其中,该格式规则指定该文件中标识的级别与由语法结构的一个或多个约束字段指示的对应值对齐,该语法结构指示该文件中的输出层集所符合的级别。
6.根据解决方案1至5的任一项的方法,其中,该转换包括生成该视觉媒体数据的比特流表示,并根据该格式规则将该比特流表示存储到该文件中。
7.根据解决方案1至5的任一项的方法,其中,该转换包括根据该格式规则解析该文件以恢复该视觉媒体数据。
8.一种视频解码装置,包括处理器,该处理器被配置为实现在解决方案1至7的一个或多个中所述的方法。
9.一种视频编解码装置,包括处理器,该处理器被配置为实现在解决方案1至7的一个或多个中所述的方法。
10.一种计算机程序产品,其上存储有计算机代码,该代码在由处理器执行时使该处理器实现在解决方案1至7的任一项中所述的方法。
11.一种计算机可读介质,其上有符合根据解决方案1至7的任一项生成的文件格式的比特流表示。
12.本文件中描述的方法、装置或***。
在本文描述的解决方案中,编码器可以通过根据该格式规则产生编解码表示来符合该格式规则。在本文描述的解决方案中,解码器可以随着根据该格式规则知道语法元素的存在和不存在,使用该格式规则来解析编解码表示中的语法元素,以产生解码视频。
技术1.一种处理视觉媒体数据的方法(例如,图8所示的方法8000),包括:根据格式规则执行(8002)视觉媒体文件和视觉媒体数据的比特流之间的转换,其中,该比特流包括一个或多个输出层集和一个或多个参数集,该一个或多个参数集包括一个或多个配置文件层级语法结构,其中,该配置文件层级语法结构中的至少一个包括一般约束信息语法结构,其中,该格式规则指定语法元素包括在该视觉媒体文件中的配置记录中,并且其中,该语法元素指示由该配置记录中指示的输出层集索引标识的输出层集所符合的配置文件、层或级。
技术2.根据技术1的方法,其中,该语法元素是一般配置文件指示符语法元素,其指示由输出层集索引标识的输出层集所符合的配置文件。
技术3.根据技术1的方法,其中,该语法元素是一般层语法元素,其指示大于或等于由输出层集索引标识的该输出层集所符合的所有配置文件层级语法结构中指示的最高层的层。
技术4.根据技术1的方法,其中,该语法元素是一般层语法元素,其指示由输出层集索引标识的该输出层集所符合的所有配置文件层级语法结构中指示的最高层。
技术5.根据技术1的方法,其中,该语法元素是一般层语法元素,其指示与该配置记录相关联的流所符合的最高层。
技术6.根据技术1的方法,其中,该语法元素是一般层语法元素,其指示与该配置记录相关联的流所符合的层。
技术7.根据技术1的方法,其中,该配置记录包括一般约束信息语法元素,其中,该格式规则指定该一般约束信息语法元素中的第一位对应于由该输出层集索引标识的输出层集所符合的所有配置文件层级语法结构中的所有一般约束信息语法结构中的第二位,并且其中,该格式规则指定仅当所有一般约束信息语法结构中的第二位被设置为一时才将该第一位设置为一。
技术8.根据技术1的方法,其中,该语法元素是一般级别语法元素,其值指示大于或等于由输出层集索引标识的该输出层集所符合的所有配置文件层级语法元素中指示的最高级的能力级别。
技术9.根据技术1的方法,其中,该格式规则指定不允许该语法元素与存储在该视觉媒体文件中的流中包括的一个或多个其他输出层集相关联。
技术10.根据技术1至9的任一项的方法,其中,该转换包括生成该视觉媒体文件并根据该格式规则将该比特流存储到该视觉媒体文件中。
技术11.根据技术1至9的任一项的方法,其中,该转换包括生成该视觉媒体文件,并且该方法还包括将该视觉媒体文件存储在非暂时性计算机可读记录介质中。
技术12.根据技术1至9的任一项的方法,其中,该转换包括根据该格式规则解析该视觉媒体文件以重建该比特流。
技术13.根据技术1至12的任一项的方法,其中,通过多功能视频编解码(VVC)处理该视觉媒体文件。
技术14.一种用于处理视觉媒体数据的装置,该装置包括处理器和在其上具有指令的非暂时性存储器,其中,当由处理器执行时,该指令使处理器实现技术1至13的一个或多个中的方法。
技术15.一种存储指令的非暂时性计算机可读存储介质,该指令使处理器实现技术1至13的任一项的方法。
技术16.一种视频解码装置,包括处理器,该处理器被配置为实现在技术1至13的一个或多个中所述的方法。
技术17.一种视频编码装置,包括处理器,该处理器被配置为实现在技术1至13的一个或多个中所述的方法。
技术18.一种计算机程序产品,其上存储有计算机代码,该代码在由处理器执行时使该处理器实现在技术1至13的任一项中所述的方法。
技术19.一种计算机可读介质,其上有符合根据技术1至13的任一项生成的文件格式的视觉媒体文件。
技术20.一种视觉媒体文件生成方法,包括:根据技术1至13的任一项的方法生成视觉媒体文件,并将该视觉媒体文件存储在计算机可读程序介质上。
技术21.一种存储由视频处理装置执行的方法生成的视觉媒体文件的比特流的非暂时性计算机可读记录介质,其中,该方法是在技术1至13的任一项所述的。在一些实施例中,一种存储由视频处理装置执行的方法生成的视觉媒体文件的比特流的非暂时性计算机可读记录介质,其中,该方法包括:根据格式规则生成基于视觉媒体数据的视觉媒体文件,其中,该比特流包括一个或多个输出层集和一个或多个参数集,该一个或多个参数集包括一个或多个配置文件层级语法结构,其中,该配置文件层级语法结构中的至少一个包括一般约束信息语法结构,其中,该格式规则指定语法元素包括在该视觉媒体文件中的配置记录中,并且其中,该语法元素指示由该配置记录中指示的输出层集索引标识的输出层集所符合的配置文件、层或级。
实现1.一种处理视觉媒体数据的方法(例如,图9中所述的方法9000),该方法包括:根据格式规则执行(9002)视觉媒体文件与视觉媒体数据的比特流之间的转换,其中,该格式规则指定该视觉媒体文件中的语法元素的特性,其中,该语法元素具有指示用于指示与该比特流相关联的约束信息的字节数的值。
实现2.根据权利要求1的方法,其中,该格式规则指定使用六位将语法元素编解码在视觉媒体文件中。
实现3.根据实现1的方法,其中,该格式规则指定该语法元素被编解码在该视觉媒体文件中的、紧接在该视觉媒体文件中的配置文件层级多层启用标志语法元素之后。
实现4.根据实现1的方法,其中,该格式规则指定该语法元素编码在该视觉媒体文件中,指定该视觉媒体文件中的一般约束信息语法元素中的字节数,并且其中,该格式规则指定等于一的该语法元素的值指示该一般约束信息语法元素中的一般约束信息标志等于零,并且该一般约束信息语法元素被禁止包括在该视觉媒体文件中的配置文件层级记录中。
实现5.根据实现1的方法,其中,该格式规则指定在该视觉媒体文件中包括一般约束信息语法元素的条件取决于由语法元素指示的值是否大于一。
实现6.根据实现1的方法,其中,该格式规则指定用于将一般约束信息语法元素编码到视觉媒体文件中的位数是八与指示用于指示该约束信息的字节数的值相乘的结果,并且其中,该格式规则指定八与指示用于指示该约束信息的字节数的值相乘的结果不被减去二。
实现7.一种处理视觉媒体数据的方法,该方法包括:根据格式规则执行视觉媒体文件与视觉媒体数据的比特流之间的转换,其中,该格式规则指定五位用于该视觉媒体文件中的语法元素,其中,该语法元素具有指示该视觉媒体文件中的解码器配置记录中的网络抽象层单元类型的值。在一些实施例中,其中,该格式规则指定五位用于该视觉媒体文件中的另一语法元素,并且其中,该另一语法元素具有指示该视觉媒体文件中的解码器配置记录中的网络抽象层单元类型的另一值。
实现8.一种处理视觉媒体数据的方法,该方法包括:根据格式规则执行视觉媒体文件与视觉媒体数据的比特流之间的转换,其中,该视觉媒体文件中的轨道包括视频比特流,该视频比特流包括一个或多个输出层集;并且其中,该格式规则指定针对该轨道指示语法元素,其中,该语法元素指示该轨道是否包括对应于来自该一个或多个输出层集的特定输出层集的视频比特流。在一些实施例中,其中,该视觉媒体文件中的轨道包括视频比特流,该视频比特流包括一个或多个输出层集,其中,该格式规则指定针对该轨道指示另一语法元素,并且其中,该另一语法元素指示该轨道是否包括对应于来自该一个或多个输出层集的特定输出层集的视频比特流。
实现9.根据实现8的方法,其中,该语法元素指示该轨道包括对应于多个输出层集的视频比特流。在一些实施例中,该另一语法元素指示该轨道包括对应于多个输出层集的视频比特流。
实现10.根据实现8的方法,其中,该语法元素指示该轨道包括不对应于来自该一个或多个输出层集的特定输出层集的视频比特流。在一些实施例中,该另一语法元素指示该轨道包括不对应于来自该一个或多个输出层集的特定输出层集的视频比特流。
实现11.一种处理视觉媒体数据的方法,该方法包括:根据格式规则执行视觉媒体文件与视觉媒体数据的比特流之间的转换,其中,该格式规则指定该视觉媒体文件是否包括一个语法元素,该语法元素的值指示用于指示输出层集的输出层集索引。在一些实施例中,该格式规则指定该视觉媒体文件是否包括另一语法元素,该语法元素的值指示用于指示输出层集的输出层集索引。
实现12.根据实现11的方法,其中,该格式规则指定,响应于该视觉媒体文件中的配置文件层存在标志语法元素的另一值等于一,或者响应于配置文件层级多层启用标志等于一,该视觉媒体文件选择性地指示其值指示解码器配置记录中的输出层集索引的语法元素。在一些实施例中,该格式规则指定,响应于该视觉媒体文件中的配置文件层存在标志语法元素的另一值等于一,或者响应于配置文件层级多层启用标志等于一,该视觉媒体文件选择性地指示其值指示解码器配置记录中的输出层集索引的另一语法元素。
实现13.根据实现11的方法,其中,该格式规则指定不允许该视觉媒体文件包括其值指示该输出层集索引的语法元素,并且其中,该格式规则指定响应于该视觉媒体文件中的配置文件层存在标志语法元素等于一,将该输出层集索引的值推断为等于仅包括轨道中携带的层的第二输出层集的第二输出层索引的第二值。在一些实施例中,该格式规则指定不允许该视觉媒体文件包括其值指示该输出层集索引的另一语法元素,并且其中,该格式规则指定响应于该视觉媒体文件中的配置文件层存在标志语法元素等于一,将该输出层集索引的值推断为等于仅包括轨道中携带的层的第二输出层集的第二输出层索引的第二值。
实现14.根据实现1至13的任一项的方法,其中,该转换包括生成该视觉媒体文件并根据该格式规则将该比特流存储到该视觉媒体文件中。
实现15.根据实现1至13的任一项的方法,其中,该转换包括生成该视觉媒体文件,并且该方法还包括将该视觉媒体文件存储在非暂时性计算机可读记录介质中。
实现16.根据实现1至13的任一项的方法,其中,该转换包括根据该格式规则解析该视觉媒体文件以重建该比特流。
实现17.根据实现1至16的任一项的方法,其中,通过多功能视频编解码(VVC)处理该视觉媒体文件。
实现18.一种用于处理视觉媒体数据的装置,该装置包括处理器和在其上具有指令的非暂时性存储器,其中,当由处理器执行时,该指令使处理器实现实现1至17的一个或多个中的方法。
实现19.一种存储指令的非暂时性计算机可读存储介质,该指令使处理器实现实现1至17的任一项的方法。
实现20.一种视频解码装置,包括处理器,该处理器被配置为实现在实现1至17的一个或多个中所述的方法。
实现21.一种视频编解码装置,包括处理器,该处理器被配置为实现在实现1至17的一个或多个中所述的方法。
实现22.一种计算机程序产品,其上存储有计算机代码,该代码在由处理器执行时使该处理器实现在实现1至17的任一项中所述的方法。
实现23.一种计算机可读介质,其上有符合根据实现1至17的任一项生成的文件格式的视觉媒体文件。
实现24.一种视觉媒体文件生成方法,包括:根据实现1至17的任一项的方法生成视觉媒体文件,并将该视觉媒体文件存储在计算机可读程序介质上。
实现25.一种存储由视频处理装置执行的方法生成的视觉媒体文件的比特流的非暂时性计算机可读记录介质,其中,该方法是在实现1至17的任一项所述的。一种非暂时性计算机可读记录媒体,其存储由视频处理装置执行的方法生成的视觉媒体文件的比特流,其中,该方法包括:基于根据格式规则的视觉媒体数据生成该视觉媒体文件,其中,该格式规则指定该视觉媒体文件中的语法元素的特性,其中,该语法元素具有指示用于指示与该比特流相关联的约束信息的字节数的值。
操作1.一种处理视觉媒体数据的方法(例如,图9所示的方法10000),包括:根据格式规则执行(10002)视觉媒体文件与视觉媒体数据的比特流之间的转换,其中,该格式规则指定该视觉媒体文件中的语法元素的特性,并且其中,该格式规则指定具有指示级别标识的值的语法元素被使用八位编解码在子图片公共群组框或子图片多群组框中的任何一个或两者中。
操作2.根据操作1的方法,其中,该格式规则指定紧接在其值指示级别标识的语法元素之后的保留位的缺失。
操作3.根据操作1的方法,其中,该格式规则指定紧接在其值指示级别标识的语法元素之后的24位是保留位。
操作4.根据操作1的方法,其中,该格式规则指定紧接在其值指示级别标识的语法元素之后的8位是保留位。
操作5.一种处理视觉媒体数据的方法,该包括:根据格式规则执行视觉媒体文件和视觉媒体数据的比特流之间的转换,其中,该格式规则指定与该视觉媒体文件中的第一语法元素相、第二语法元素或第三语法元素集合相关的特性,其中,该第一语法元素具有指示该视觉媒体文件中的活动轨道的数量的第一值,其中,该第二语法元素具有指示该视觉媒体文件中的子群组标识符的数量的第二值,并且其中,该第三语法元素集合中的每个语法元素具有指示该视觉媒体文件中的活动轨道的数量的第三值。在一些实施例中,其中,该格式规则指定与该视觉媒体文件中的第一语法元素、第二语法元素或第三语法元素集合相关的特性,其中,该第一语法元素具有指示该视觉媒体文件中的活动轨道的数量的第一值,其中,该第二语法元素具有指示该视觉媒体文件中的子群组标识符的数量的第二值,并且其中,该第三语法元素集合中的每个语法元素具有指示该视觉媒体文件中的活动轨道的数量的第三值。
操作6.根据操作5的方法,其中,该格式规则指定16位用于指示该第一语法元素,该第一语法元素具有指示该视觉媒体文件中的子图片公共群组框中的活动轨道的数量的第一值。
操作7.根据操作5的方法,其中,该格式规则指定16位用于指示该第二语法元素,该第二语法元素具有指示该视觉媒体文件中的子图片多群组框中的子群组标识符的数量的第二值,并且其中,该格式规则指定16位用于指示该第三语法元素集合中的每个语法元素,该每个语法元素具有指示该视觉媒体文件中的子图片多群组框中的活动轨道的数量的第三值。
操作8.根据操作5的方法,其中,该格式规则指定在具有指示活动轨道数量的第一值的第一语法元素、具有指示子群组标识符数量的第二值的第二语法元素或具有指示活动磁道数量的第三值的第三语法元素集合中的每个语法元素之后紧接着的16位被保留。
操作9.根据操作5的方法,其中,该格式规则指定在具有指示活动轨道数量的第一值的第一语法元素、具有指示子群组标识符数量的第二值的第二语法元素或具有指示活动轨道数量的第三值的第三语法元素集合中的每个语法元素之后紧接着的保留位的缺失。
操作10.根据操作1至9的任一项的方法,其中,该转换包括生成该视觉媒体文件并根据该格式规则将该比特流存储到该视觉媒体文件中。
操作11.根据操作1至9的任一项的方法,其中,该转换包括生成该视觉媒体文件,并且该方法还包括将该视觉媒体文件存储在非暂时性计算机可读记录介质中。
操作12.根据操作1至9的任一项的方法,其中,该转换包括根据该格式规则解析该视觉媒体文件以重建该比特流。
操作13.根据操作1至12的任一项的方法,其中,通过多功能视频编解码(VVC)处理该视觉媒体文件。
操作14.一种用于处理视觉媒体数据的装置,该装置包括处理器和在其上具有指令的非暂时性存储器,其中,当由处理器执行时,该指令使处理器实现操作1至13的一个或多个中的方法。
操作15.一种存储指令的非暂时性计算机可读存储介质,该指令使处理器实现操作1至13的任一项的方法。
操作16.一种视频解码装置,包括处理器,该处理器被配置为实现在操作1至13的一个或多个中所述的方法。
操作17.一种视频编码装置,包括处理器,该处理器被配置为实现在操作1至13的一个或多个中所述的方法。
操作18.一种计算机程序产品,其上存储有计算机代码,该代码在由处理器执行时使该处理器实现在操作1至13的任一项中所述的方法。
操作19.一种计算机可读介质,其上有符合根据操作1至13的任一项生成的文件格式的视觉媒体文件。
操作20.一种视觉媒体文件生成方法,包括:根据操作1至13的任一项的方法生成视觉媒体文件,并将该视觉媒体文件存储在计算机可读程序介质上。
操作21.一种存储由视频处理装置执行的方法生成的视觉媒体文件的比特流的非暂时性计算机可读记录介质,其中,该方法是在操作1至13的任一项所述的。在一些实施例中,一种非暂时性计算机可读记录媒体,其存储由视频处理装置执行的方法生成的视觉媒体文件的比特流,其中,该方法包括:基于根据格式规则的视觉媒体数据生成该视觉媒体文件,其中,该格式规则指定该视觉媒体文件中的语法元素的特性,并且其中,该格式规则指定具有指示级别标识的值的语法元素被使用八位编码在子图片公共群组框或子图片多群组框中的任何一个或两者中。
在本文件中,术语“视频处理”可以指视频编码、视频解码、视频压缩或视频解压缩。例如,可以在从视频的像素表示转换为对应的比特流表示期间应用视频压缩算法,或者反之亦然。例如,当前视频块的比特流表示可以对应于如语法所定义的在比特流内的不同位置并置或扩展的位。例如,宏块可以根据变换的和编解码的错误残差值来编码,并且还使用头部中的位和比特流中的其他字段来编码。此外,在转换期间,解码器可以如上述解决方案中所描述的基于判定,在了解一些字段可能存在或不存在的情况下对比特流进行解析。类似地,编码器可以确定某些语法字段被包括或不被包括,并相应地通过包括或排除来自编解码表示的语法字段来生成编解码表示。
本文件中描述的所公开的和其他解决方案、示例、实施例、模块和功能操作可以在数字电子电路中实现,或者在计算机软件、固件或硬件中实现,包括本文件中公开的结构及其结构等效物,或者以它们中的一个或多个的组合实现。所公开的和其他实施例可以实现为一个或多个计算机程序产品,即,编码在计算机可读介质上用于由数据处理装置执行或控制其操作的一个或多个计算机程序指令模块。计算机可读介质可以是机器可读存储设备、机器可读存储主板、存储设备、影响机器可读传播信号的物质组成或它们中的一个或多个的组合。术语“数据处理装置”包括用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该装置可以包括为所说的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理***、操作***或它们中的一个或多个的组合的代码。传播信号是人工生成的信号,例如机器生成的电、光或电磁信号,生成该信号以对信息进行编码以向合适的接收器装置传输。
计算机程序(也公知为程序、软件、软件应用程序、脚本或代码)可以用任何形式的编程语言编写,包括编译过的或解释过的语言,并且可以以任何形式部署,包括作为独立程序或作为模块、组件、子程序或适合在计算环境中使用的其他单元。计算机程序不一定对应于文件***中的文件。程序可以存储在保存其他程序或数据的文件的一部分(例如,存储在标记语言文档中的一个或多个脚本)中,存储在专用于所说的程序的单个文件中,或者存储在多个协调文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。可以部署计算机程序以在一台计算机或位于一个站点或分布于多个站点并通过通信网络互连的多台计算机上执行。
本文档中描述的过程和逻辑流可以由一个或多个可编程处理器执行,该处理器执行一个或多个计算机程序,以通过对输入数据进行操作并产生输出来执行功能。该过程和逻辑流也可以由专用逻辑电路执行,并且该装置也可以被实现为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
适用于执行计算机程序的处理器包括,例如,通用和专用微处理器,以及任何类型数字计算机的任何一个或多个处理器。一般地,处理器将从只读存储器或随机存取存储器或两者都接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器件。一般地,计算机还将包括或可操作地耦合以从一个或多个用于存储数据的大容量存储设备(例如,磁盘、磁光盘或光盘)接收数据或将数据传送到该一个或多个大容量存储设备或两者。然而,计算机不需要有这样的设备。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备(例如EPROM、EEPROM和闪存设备);磁盘(例如,内部硬盘或可移动磁盘);磁光盘;以及CD ROM和DVD-ROM盘。该处理器和存储器可以由专用逻辑电路补充或合并在专用逻辑电路中。
虽然本专利文件包含很多细节,但这些不应被解释为对任何主题的范围或可要求权利的内容的限制,而是对专门于特定技术的特定实施例的特征的描述。本专利文件中在分开的实施例的上下文中描述的某些特征也可以组合在单个实施例中实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中分开地或以任何适当的子组合形式实现。此外,尽管上述特征可以被描述为在某些组合中起作用,甚至最初是这样要求保护的,但在某些情况下,来自要求保护的组合的一个或多个特征可以从该组合中删除,并且所要求保护的组合可以指向子组合或子组合的变型。
类似地,尽管在附图中以特定顺序描绘了操作,但这不应理解为要求以所示特定顺序或以序列化顺序执行这些操作,或执行所有所示操作以获得期望的结果。此外,本专利文件中描述的实施例中的各种***组件的分开不应理解为在所有实施例中都要求这样的分开。
仅描述了一些实现和示例,并且可以基于本专利文件中描述和说明的内容来进行其他实现、增强和变化。

Claims (15)

1.一种处理视觉媒体数据的方法,包括:
根据格式规则执行视觉媒体文件和视觉媒体数据的比特流之间的转换,
其中,所述格式规则指定所述视觉媒体文件中的语法元素的特性,
其中,所述语法元素具有指示用于指示与所述比特流相关联的约束信息的字节数量的值。
2.根据权利要求1所述的方法,
其中,所述格式规则指定使用六位将所述语法元素编解码在所述视觉媒体文件中。
3.根据权利要求1所述的方法,
其中,所述格式规则指定所述语法元素被编解码在所述视觉媒体文件中的、紧接在所述视觉媒体文件中的配置文件层级多层启用标志语法元素之后。
4.根据权利要求1所述的方法,
其中,所述格式规则指定所述语法元素被编解码在所述视觉媒体文件中,指定所述视觉媒体文件中的一般约束信息语法元素中的字节数,以及
其中,所述格式规则指定等于一的所述语法元素的值指示所述一般约束信息语法元素中的一般约束信息标志等于零,并且不允许将所述一般约束信息语法元素包括在所述视觉媒体文件中的配置文件层级记录中。
5.根据权利要求1所述的方法,
其中,所述格式规则指定在所述视觉媒体文件中包括一般约束信息语法元素的条件取决于由语法元素指示的所述值是否大于一。
6.根据权利要求1所述的方法,
其中,所述格式规则指定五位用于所述视觉媒体文件中的另一语法元素,以及
其中,所述另一语法元素具有另一值,所述另一值指示所述视觉媒体文件中的解码器配置记录中的网络抽象层单元类型。
7.根据权利要求1所述的方法,其中,所述视觉媒体文件中的轨道包括视频比特流,所述视频比特流包括一个或多个输出层集,
其中,所述格式规则指定针对所述轨道指示另一语法元素,以及
其中,所述另一语法元素指示所述轨道是否包括对应于来自所述一个或多个输出层集的特定输出层集的视频比特流。
8.根据权利要求7所述的方法,其中,所述另一语法元素指示所述轨道包括对应于多个输出层集的所述视频比特流。
9.根据权利要求7所述的方法,其中,所述另一语法元素指示所述轨道包括不对应于来自所述一个或多个输出层集的所述特定输出层集的所述视频比特流。
10.根据权利要求1至9的任一项所述的方法,其中,所述转换包括生成所述视觉媒体文件,并根据所述格式规则将所述比特流存储到所述视觉媒体文件中。
11.根据权利要求1至9的任一项所述的方法,其中,所述转换包括生成所述视觉媒体文件,并且所述方法还包括将所述视觉媒体文件存储在非暂时性计算机可读记录介质中。
12.根据权利要求1至9的任一项所述的方法,其中,所述转换包括根据所述格式规则解析所述视觉媒体文件以重建所述比特流。
13.根据权利要求1至12的任一项所述的方法,其中,通过多功能视频编解码(VVC)处理所述视觉媒体文件。
14.一种用于处理视觉媒体数据的装置,所述装置包括处理器和在其上具有指令的非暂时性存储器,其中,当由所述处理器执行时,所述指令使所述处理器实现权利要求1至13的一个或多个中所述的方法。
15.一种存储指令的非暂时性计算机可读存储介质,所述指令使处理器实现权利要求1至13的任一项所述的方法。
CN202111090725.0A 2020-09-17 2021-09-17 编解码视频中的解码器配置记录 Pending CN114205601A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202063079892P 2020-09-17 2020-09-17
US63/079,892 2020-09-17

Publications (1)

Publication Number Publication Date
CN114205601A true CN114205601A (zh) 2022-03-18

Family

ID=77801577

Family Applications (3)

Application Number Title Priority Date Filing Date
CN202111090572.XA Pending CN114205598A (zh) 2020-09-17 2021-09-17 编解码视频中的子图片实体群组信令
CN202111090725.0A Pending CN114205601A (zh) 2020-09-17 2021-09-17 编解码视频中的解码器配置记录
CN202111090723.1A Pending CN114205600A (zh) 2020-09-17 2021-09-17 编解码视频中的配置文件、层、级和一般约束指示

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202111090572.XA Pending CN114205598A (zh) 2020-09-17 2021-09-17 编解码视频中的子图片实体群组信令

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202111090723.1A Pending CN114205600A (zh) 2020-09-17 2021-09-17 编解码视频中的配置文件、层、级和一般约束指示

Country Status (5)

Country Link
US (3) US20220086385A1 (zh)
EP (3) EP3972274A1 (zh)
JP (3) JP7209062B2 (zh)
KR (3) KR20220037387A (zh)
CN (3) CN114205598A (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021134018A1 (en) 2019-12-26 2021-07-01 Bytedance Inc. Signaling of decoded picture buffer parameters in layered video
EP4062640A4 (en) 2019-12-26 2023-01-11 ByteDance Inc. PROFILE, ROW AND LAYER INDICATION IN VIDEO CODING
EP4066500A4 (en) * 2019-12-26 2023-01-18 ByteDance Inc. SETS OF DECODING PARAMETERS IN A VIDEO CODING
WO2021134055A1 (en) 2019-12-27 2021-07-01 Bytedance Inc. Subpicture signaling in parameter sets
JP7457130B2 (ja) 2020-01-09 2024-03-27 バイトダンス インコーポレイテッド 異なるseiメッセージのデコーディング順序
US11451811B2 (en) * 2020-04-05 2022-09-20 Tencent America LLC Method and apparatus for video coding
US20220086385A1 (en) 2020-09-17 2022-03-17 Lemon Inc. Profile, tier, level and general constraints indication in coded video
US11792433B2 (en) * 2020-09-28 2023-10-17 Sharp Kabushiki Kaisha Systems and methods for signaling profile and level information in video coding

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9161004B2 (en) 2012-04-25 2015-10-13 Qualcomm Incorporated Identifying parameter sets in video files
US20140301477A1 (en) * 2013-04-07 2014-10-09 Sharp Laboratories Of America, Inc. Signaling dpb parameters in vps extension and dpb operation
CA2916881A1 (en) 2013-07-22 2015-01-29 Sony Corporation Information processing apparatus and method
US20150264404A1 (en) 2014-03-17 2015-09-17 Nokia Technologies Oy Method and apparatus for video coding and decoding
EP3241352B1 (en) * 2014-12-31 2021-11-24 Nokia Technologies Oy Inter-layer prediction for scalable video coding and decoding
US20160373771A1 (en) 2015-06-18 2016-12-22 Qualcomm Incorporated Design of tracks and operation point signaling in layered hevc file format
US10798422B2 (en) 2015-10-20 2020-10-06 Intel Corporation Method and system of video coding with post-processing indication
US10419768B2 (en) 2016-03-30 2019-09-17 Qualcomm Incorporated Tile grouping in HEVC and L-HEVC file formats
JP2020515169A (ja) 2017-03-20 2020-05-21 シャープ株式会社 メディアアプリケーションフォーマットでスケーラブル動画像をシグナリングするためのシステム及び方法
GB2567625B (en) 2017-10-12 2020-07-15 Canon Kk Method, device, and computer program for generating timed media data
WO2019234608A1 (en) 2018-06-05 2019-12-12 Beijing Bytedance Network Technology Co., Ltd. Partition tree with more than four sub-blocks
TWI820197B (zh) 2018-08-28 2023-11-01 大陸商北京字節跳動網絡技術有限公司 與擴展四叉樹相關的分割的二值化
US11330271B2 (en) * 2018-09-18 2022-05-10 Nokia Technologies Oy Method and apparatus for non-binary profile constraint signaling for video coding
PT3909246T (pt) 2019-01-09 2023-07-05 Huawei Tech Co Ltd Restrições de posição de subimagem em codificação de vídeo
WO2020156540A1 (en) 2019-02-02 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Buffer management for intra block copy in video coding
US11190793B2 (en) * 2019-07-09 2021-11-30 Qualcomm Incorporated Memory constraint for adaptation parameter sets for video coding
US11375223B2 (en) * 2019-09-20 2022-06-28 Tencent America LLC Method for signaling output layer set with sub-picture
US11778215B2 (en) * 2020-02-28 2023-10-03 Qualcomm Incorporated Coding output layer set data and conformance window data of high level syntax for video coding
US11611778B2 (en) * 2020-05-20 2023-03-21 Sharp Kabushiki Kaisha Systems and methods for signaling general constraint information in video coding
US20220086385A1 (en) 2020-09-17 2022-03-17 Lemon Inc. Profile, tier, level and general constraints indication in coded video
US11818371B2 (en) 2020-10-07 2023-11-14 Nokia Technologies Oy Coded picture with mixed VCL NAL unit type

Also Published As

Publication number Publication date
JP2022050368A (ja) 2022-03-30
JP2022050369A (ja) 2022-03-30
KR20220037387A (ko) 2022-03-24
KR20220037396A (ko) 2022-03-24
US20220086497A1 (en) 2022-03-17
US20220086473A1 (en) 2022-03-17
EP3972265A1 (en) 2022-03-23
US11902552B2 (en) 2024-02-13
EP3972275A1 (en) 2022-03-23
JP7268107B2 (ja) 2023-05-02
JP2022050367A (ja) 2022-03-30
JP7268106B2 (ja) 2023-05-02
CN114205600A (zh) 2022-03-18
KR20220037388A (ko) 2022-03-24
US20220086385A1 (en) 2022-03-17
EP3972274A1 (en) 2022-03-23
JP7209062B2 (ja) 2023-01-19
CN114205598A (zh) 2022-03-18

Similar Documents

Publication Publication Date Title
US20220086385A1 (en) Profile, tier, level and general constraints indication in coded video
US11750815B2 (en) Versatile video coding track coding
US11831921B2 (en) Video operating points record syntax and semantics
US11611752B2 (en) Adaptation parameter set storage in video coding
WO2022068839A1 (en) Signalling of auxiliary information

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination