CN114205626B - 视频操作点记录语法和语义 - Google Patents

视频操作点记录语法和语义 Download PDF

Info

Publication number
CN114205626B
CN114205626B CN202111090741.XA CN202111090741A CN114205626B CN 114205626 B CN114205626 B CN 114205626B CN 202111090741 A CN202111090741 A CN 202111090741A CN 114205626 B CN114205626 B CN 114205626B
Authority
CN
China
Prior art keywords
format
value
video
operation point
layer
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.)
Active
Application number
CN202111090741.XA
Other languages
English (en)
Other versions
CN114205626A (zh
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 CN114205626A publication Critical patent/CN114205626A/zh
Application granted granted Critical
Publication of CN114205626B publication Critical patent/CN114205626B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/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
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/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/186Methods 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 colour or a chrominance component
    • 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
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • 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
    • H04N21/234327Processing 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 by decomposing into layers, e.g. base layer and one or more enhancement layers
    • 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
    • H04N21/234336Processing 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 by media transcoding, e.g. video is transformed into a slideshow of still pictures or audio is converted into text
    • 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
    • H04N21/440227Processing 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 by decomposing into layers, e.g. base layer and one or more enhancement layers

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)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)

Abstract

本发明涉及视频操作点记录语法和语义,描述了用于处理可视媒体数据的系统、方法和装置。一个示例方法包括:根据格式规则在可视媒体数据和包括存储可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换;其中,可视媒体文件包括操作点记录和操作点组框,并且其中格式规则指定:对于可视媒体文件中指示的每个操作点,在操作点记录和操作点组框中包括指示色度格式的第一元素、指示比特深度信息的第二元素、指示最大图片宽度的第三元素和/或指示最大图片高度的第四元素。

Description

视频操作点记录语法和语义
相关申请的交叉引用
根据适用的专利法和/或巴黎公约的规则,提出本申请旨在及时要求于2020年9月17日提交的美国临时专利申请No.63/079,910的优先权和利益。出于法律规定的所有目的,上述申请的全部公开通过引用合并为本申请公开的一部分。
技术领域
本专利文件涉及文件格式的数字音频视频媒体信息的生成、存储和消费。
背景技术
在互联网和其他数字通信网络中,数字视频占据了最大的带宽使用量。随着能够接收和显示视频的连接用户设备数量的增加,预计数字视频使用的带宽需求将继续增长。
发明内容
本文档公开了可由视频编码器和解码器用于根据文件格式处理视频或图像的编解码表示的技术。
在一个示例方面中,公开了一种用于处理可视媒体数据的方法。该方法包括:根据格式规则在可视媒体数据和包括存储所述可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换;其中,所述格式规则指定:第一元素是否指示轨道是否包含对应于特定输出层集的比特流控制指示所述轨道的色度格式的第二元素和/或指示所述轨道的比特深度信息的第三元素是否包括在所述轨道的配置记录中。
在另一示例方面中,公开了用于处理可视媒体数据的另一方法。该方法包括:根据格式规则在可视媒体数据和包括存储所述可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换;其中,所述格式规则指定:是否在轨道的配置记录中包括指示所述轨道的图片宽度的第一元素和/或指示所述轨道的图片高度的第二元素是基于(1)第三元素是否指示所述轨道是否包含对应于特定输出层集的特定比特流和/或(2)所述配置记录是否用于单层比特流,并且其中所述格式规则进一步指定当所述第一元素和/或所述第二元素包括在所述轨道的所述配置记录中时,在包括16比特的字段中表示所述第一元素和/或所述第二元素。
在另一示例方面中,公开了用于处理可视媒体数据的另一方法。该方法包括:根据格式规则在可视媒体数据和包括存储所述可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换;其中,所述可视媒体文件包括操作点记录和操作点组框,并且其中所述格式规则指定:对于所述可视媒体文件中指示的每个操作点,在所述操作点记录和所述操作点组框中包括指示色度格式的第一元素、指示比特深度信息的第二元素、指示最大图片宽度的第三元素和/或指示最大图片高度的第四元素。
在又一示例方面中,公开了一种视频处理装置。视频处理装置包括配置为实现上述方法的处理器。
在又一示例方面中,公开了一种将可视媒体数据存储到包括一个或多个比特流的文件的方法。该方法对应于上述方法,并且还包括将一个或多个比特流存储到非暂时性计算机可读记录介质。
在又一示例方面中,公开了一种存储比特流的计算机可读介质。所述比特流是根据上述方法生成的。
在又一示例方面中,公开了一种用于存储比特流的视频处理装置,其中该视频处理装置被配置为实现上述方法。
在又一示例方面中,公开了一种计算机可读介质,其中存储了根据上述方法生成的符合文件格式的比特流。
贯穿本文档描述了这些和其他特征。
附图说明
图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 一般约束信息
GDR 渐进解码刷新
GPM 几何分割模式
HEVC 高效视频编解码(Rec.ITU-T H.265|ISO/IEC 23008-2)
HDR 假设参考解码器
HSS 假设流调度器
I 帧内
IBC 帧内块复制
IDR 即时解码刷新
ILRP 层间参考图片
IRAP 帧内随机接入点
LFNST 低频不可分离变换
LPS 最小可能符号
LSB 最低有效位
LTRP 长期参考图片
LMCS 亮度映射与色度缩放
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.274|ISO/IEC 23002-7)
VUI 视频可用性信息
VVC 通用视频编解码(Rec.ITU-T H.266|ISO/IEC 23090-3)
3.视频编解码介绍
3.1视频编解码标准
视频编解码标准主要是通过众所周知的ITU-T和ISO/IEC标准的发展而发展起来。ITU-T制作了H.261和H.263,ISO/IEC制作了MPEG-1和MPEG-4Visual,这两个组织联合制作了H.262/MPEG-2视频和H.264/MPEG-4高级视频编解码(AVC)以及H.265/HEVC标准。自H.262以来,视频编解码标准是基于混合视频编解码结构,其中使用时域预测加变换编解码。为了探索HEVC以外的未来视频编解码技术,VCEG和MPEG于2015年联合成立了联合视频探索团队(JVET)。此后,JVET采用了许多新方法,并将其应用到名为联合勘探模型(JEM)的参考软件中。当多功能视频编解码(VVC)项目正式启动时,JVET后来更名为联合视频专家团队(JVET)。VVC是一种新的编解码标准,与HEVC相比,其目标是降低50%的比特率,该标准已由JVET在2020年7月1日结束的第19次会议上最终确定。
多功能视频编解码(VVC)标准(ITU-T H.266|ISO/IEC 23090-3)和相关联的多功能补充增强信息(VSEI)标准(ITU-T H.274|ISO/IEC 23002-7)设计用于最大范围的应用,包括传统用途,诸如电视广播、视频会议,或从存储媒体播放以及更新和更高级的用例,诸如自适应比特率流、视频区域提取、组合和合并来自多个编解码视频比特流的内容、多视图视频、可缩放分层编解码和视口自适应360°沉浸式媒体。
3.2文件格式标准
媒体流应用程序通常基于IP、TCP和HTTP传输方法,并且通常依赖于文件格式,例如ISO基本媒体文件格式(ISOBMFF)。一个这样的流系统是基于HTTP的动态自适应流(DASH)。对于使用具有ISOBMFF和DASH的视频格式,将需要特定于视频格式的文件格式规范,例如ISO/IEC 14496-15中的AVC文件格式和HEVC文件格式(“信息技术-视听对象的编解码-第15部分:以ISO基本媒体文件格式传输网络抽象层(NAL)单元结构化视频”),以将视频内容封装在ISOBMFF轨道以及DASH表示和片段中。关于视频比特流的重要信息,例如,配置文件、层级和级别,以及许多其他信息,需要作为文件格式级别元数据和/或DASH媒体呈现描述(MPD)公开以用于内容选择目的,例如,用于选择适当的媒体片段,用于流会话开始时的初始化和流会话期间的流适配。
类似地,对于使用具有ISOBMFF的图像格式,将需要特定于图像格式的文件格式规范,例如MPEG输出文件N19454中的AVC图像文件格式和HEVC图像文件格式(“信息技术-视听对象的编解码-第15部分:以ISO基本媒体文件格式传输网络抽象层(NAL)单元结构化视频-修正案2:以ISOBMFF传输VVC和EVC”,2020年7月)。
VVC视频文件格式,即基于ISOBMFF的用于存储VVC视频内容的文件格式,目前正在由MPEG开发。VVC视频文件格式的最新规范草案包含在MPEG输出文档N19460(“信息技术-异构环境中的高效编解码和媒体交付-第12部分:图像文件格式-修正案3:支持VVC、EVC、幻灯片和其他改进”,2020年7月)中。
VVC图像文件格式,即基于ISOBMFF用于存储使用VVC编解码的图像内容的文件格式,目前正在由MPEG开发。VVC图像文件格式的最新规范草案包含在[12]中。
3.3 VVC视频文件格式的一些细节
3.3.1解码器配置信息
3.3.1.1 VVC解码器配置记录
3.3.1.1.1定义
本小节规定了ISO/IEC 23090-3视频内容的解码器配置信息。
该记录包含每个样本中使用的长度字段的大小,以指示其包含的NAL单元的长度以及参数集(如果存储在样本条目中)。该记录为外部框架(其大小由包含它的结构提供)。
该记录包含版本字段。该版本的规范定义了该记录的版本1。对记录的不兼容更改将通过版本号的更改来指示。如果版本号无法识别,读者不应尝试解码该记录或应用该记录的流。
该记录的兼容扩展将扩展它,并且不会更改配置版本代码。读者应该准备好忽略超出他们理解的数据定义的未识别数据。
当轨道本身包含VVC比特流或通过解析'subp'轨道参考时,VvcPtlRecord应出现在解码器配置记录中。如果ptl_present_flag在轨道的解码器配置记录中等于零,则轨道应具有'oref'轨道参考。
VvcPTLRecord、chroma_format_idc和bit_depth_minus8的语法元素的值对于在由该记录描述的流被解码时激活的所有参数集都有效(在本段以下句子中称为“所有参数集”)。具体而言,以下限制适用:
档次(profile)指示general_profile_idc将指示与该配置记录相关联的流符合的档次。
注1:如果SPS标记有不同的档次,那么流可能需要检查以确定整个流符合哪个档次(如果有的话)。如果整个流没有被检查,或检查表明没有整个流符合的档次,则应将整个流拆分为两个或多个具有单独的配置记录的子流,在这些子流中可以满足这些规则。
等级(tier)指示general_tier_flag应指示等于或大于所有参数集中指示的最高等级的等级。
只能在所有参数集都设置了该比特时才可以设置general_constraint_info中的每个比特。
水平(level)指示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应等于ISO/IEC23090-3中定义的vps_ols_dpb_chroma_format[output_layer_set_idx]。
-否则,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应等于ISO/IEC23090-3中定义的vps_ols_dpb_bitdepth_minus8[output_layer_set_idx]。
-否则,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语法
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_present和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指示流可以具有或者不具有恒定帧速率。
numTemporalLayers大于1指示应用此配置记录的轨道在时域上可伸缩,并且包含的时域层(在ISO/IEC 23090-3中也称为时域子层或子层)数量等于numTemporalLayers。值1指示应用此配置记录的轨道在时域上不可伸缩。值0指示不知道应用此配置记录的轨道是否在时域上可伸缩。
lengthSizeMinusOne加1指示应用此配置记录的流中的VVC视频流样本中的NALUnitLength字段的字节长度。例如,一个字节的大小用值0指示。该字段的值应为0、1或3中的一个,分别对应于用1、2或4字节编码的长度。
ptl_present_flag等于1指定轨道包含对应于特定输出层集的VVC比特流。ptl_present_flag等于0指定轨道可能不包含对应于特定输出层集的VVC比特流,而是可能包含一个或多个不形成输出层集的单独层或不包括TemporalId等于0的子层的单独子层。
num_sub_profiles定义解码器配置记录中指示的子档次的数量。
track_ptl指定由包含在轨道中的VVC比特流表示的输出层集的档次、等级和水平。
output_layer_set_idx指定由包含在轨道中的VVC比特流表示的输出层集的输出层集索引。如ISO/IEC 23090-3中规定,output_layer_set_idx的值可用作通过外部方式提供给VVC解码器的TargetOlsIdx变量的值,用于解码包含在轨道中的比特流。
chroma_format_present_flag等于0指定chroma_format_idc不存在。chroma_format_present_flag等于1指定存在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应等于ISO/IEC23090-3中定义的vps_ols_dpb_chroma_format[output_layer_set_idx]。
-否则,chroma_format_idc将不存在。
bit_depth_present_flag等于0指定bit_depth_minus8不存在。bit_depth_present_flag等于1指定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应等于ISO/IEC23090-3中定义的vps_ols_dpb_bitdepth_minus8[output_layer_set_idx]。
-否则,bit_depth_minus8将不存在。
numAnumArrays指示所指示类型的NAL单元的数组数。
当array_completeness等于1时,指示给定类型的所有NAL单元都在以下数组中且没有任何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单元的字节长度。
如在ISO/IEC 23090-3规定的,nalUnit包含DCI、VPS、SPS、PPS、APS或声明性SEINAL单元。
3.3.2操作点信息样本组
3.3.2.1定义
应用程序通过使用操作点信息样本组('vopi')获知给定VVC比特流提供的不同操作点及其构成。每个操作点都与输出层集、最大TemporalId值以及档次、水平和等级信令有关。所有这些信息都由'vopi'样本组捕获。除这些信息外,该样本组还提供层之间的相关性信息。
当VVC比特流存在多于一个的VVC轨道且VVC比特流不存在操作点实体组时,以下两种情况均适用:
-在VVC比特流的VVC轨道中,应存在且仅存在一个携带'vopi'样本组的轨道。
-VVC比特流的所有其他VVC轨道应具有类型为“oref”的轨道引用,指向携带'vopi'样本组的轨道。
对于给定轨道中的任何特定样本,另一轨道中的时域共位样本被定义为与该特定样本具有相同解码时域的样本。对于具有指向携带'vopi'样本组的轨道TK的'oref’轨道引用的轨道TN中的每个样本SN,以下适用:
-如果在轨道Tk中存在时域共位的样本Sk,则样本SN与和样本Sk相同的'vopi'样本组条目相关联。
-否则,样本SN与和解码时域中样本SN之前的轨道Tk中的最后一个样本相同的“vopi”样本组条目相关联。
当VVC比特流引用多个VPS时,可能需要在样本组描述框中包括多个分组类型为'vopi'的条目。对于存在单个VPS的更常见的情况,建议使用ISO/IEC 14496-12中定义的默认样本组机制,并在样本表框中包括操作点信息样本组,而不是将其包括在每个轨道片段中。
不为分组类型为'vopi’的SampleToGroupBox定义grouping_type_parameter。
3.3.2.2语法
/>
3.3.2.3语义
num_profile_tier_level_minus1加1给出以下档次、等级和水平组合的数量以及相关字段。
ptl_max_temporal_id[i]:给出指定的第i个档次、等级和水平结构的相关联比特流的NAL单元的最大TemporalID。
注:下面给出的操作点的ptl_max_temporal_id[i]和max_temporal_id的语义是不同的,尽管它们可以具有相同的数值。
ptl[i]指定第i个档次、等级和水平结构。
ISO/IEC 23090-3中定义了all_independent_layers_flag、each_layer_is_an_ols_flag、ols_mode_idc和max_tid_il_ref_pics_plus1。
num_operating_points:给出以下信息所针对的操作点的数量。
output_layer_set_idx是定义操作点的输出层集的索引。output_layer_set_idx和layer_id值之间的映射应与VPS为具有索引output_layer_set_idx的输出层集指定的相同。
ptl_idx:针对具有索引output_layer_set_idx的输出层集信令通知列出的档次、水平和等级结构的从零开始的索引。
max_temporal_id:给出该操作点NAL单元的最大TemporalId。
注:层信息样本组中指示的最大TemporalId值与此处指示的最大TemporalId具有不同的语义。但是,它们可能具有相同的文字数值。
layer_count:该字段指示该操作点的必要层数,如ISO/IEC 23090-3所定义。
layer_id:提供操作点各层的nuh_layer_id值。
is_outputlayer:指示层是否为输出层的标志。一指示一个输出层。
frame_rate_info_flag等于0指示操作点不存在帧速率信息。值1表示操作点存在帧速率信息。
bit_rate_info_flag equal等于0指示操作点不存在比特率信息。值1指示操作点存在比特率信息。
avgFrameRate以帧/(256秒)为单位给出操作点的平均帧速率。值0指示未指定的平均帧速率。
constantFrameRate等于1指示操作点的流具有恒定帧速率。值2指示操作点的流中的每个时域层的表示具有恒定帧速率。值0指示操作点的流可以具有或者不具有恒定帧速率。
maxBitRate给出操作点的流在任何1秒的窗口上的最大比特率,单位为比特/秒。
avgBitRate给出操作点的流的平均比特率,单位为比特/秒。
max_layer_count:与此关联的基本轨道相关的所有操作点中的所有唯一层的计数。
layerID:在下面的direct_ref_layerID循环中为其给出所有直接参考层的层的nuh_layer_id。
num_direct_ref_layers:nuh_layer_id等于layerID的层的直接参考层数。
direct_ref_layerID:直接参考层的nuh_layer_id。
3.3.3操作点实体组
3.3.3.1综述
定义操作点实体组以提供轨道到操作点的映射以及操作点的档次水平信息。
聚合映射到此实体组中描述的操作点的轨道样本时的隐式重建过程不需要移除任何进一步的NAL单元以产生一致的VVC比特流。属于操作点实体组的轨道应具有'oref'类型的轨道引用,指向操作点实体组中指示的group_id。
操作点实体组中包含的所有entity_id值应属于同一VVC比特流。当存在时,OperatingPointGroupBox应包含在电影级MetaBox中的GroupsListBox中,而不应包含在文件级或轨道级MetaBox中。
3.3.3.2语法
/>
3.3.3.3语义
num_profile_tier_level_minus1加1给出以下档次、等级和水平组合的数量以及相关字段。
opeg_ptl[i]指定第i个档次、等级和水平结构。
num_operating_points:给出以下信息所针对的操作点的数量。
output_layer_set_idx是定义操作点的输出层集的索引。output_layer_set_idx和layer_id值之间的映射应与VPS为具有索引output_layer_set_idx的输出层集指定的相同。
ptl_idx:针对具有索引output_layer_set_idx的输出层集信令通知列出的档次、水平和等级结构的从零开始的索引。
max_temporal_id:给出该操作点NAL单元的最大TemporalId。
注:层信息样本组中指示的最大TemporalId值与此处指示的最大TemporalId具有不同的语义。但是,它们可能具有相同的文字数值。
layer_count:该字段指示该操作点的必要层数,如ISO/IEC 23090-3所定义。
layer_id:提供操作点各层的nuh_layer_id值。
is_outputlayer:指示层是否为输出层的标志。一指示一个输出层。
frame_rate_info_flag等于0指示操作点不存在帧速率信息。值1表示操作点存在帧速率信息。
bit_rate_info_flag equal等于0指示不存在操作点的比特率信息。值1指示存在操作点的比特率信息。
avgFrameRate以帧/(256秒)为单位给出操作点的平均帧速率。值0指示未指定的平均帧速率。
constantFrameRate等于1指示操作点的流具有恒定帧速率。值2指示操作点的流中的每个时域层的表示具有恒定帧速率。值0指示操作点的流可以具有或者不具有恒定帧速率。
maxBitRate给出操作点的流在任何1秒的窗口上的最大比特率,单位为比特/秒。
avgBitRate给出操作点的流的平均比特率,单位为比特/秒。
entity_count指定操作点中存在的轨道数。
entity_idx指定实体组中属于操作点的entity_id列表的索引。
4.通过公开的技术解决方案解决的技术问题的示例
关于图片格式信息的信令的VVC视频文件格式的最新设计存在以下问题:
1)VvcDecoderConfigurationRecord包括色度格式和比特深度的可选信令,但不包括图片宽度和图片高度的信令,并且操作点信息'vopi'样本组条目和操作点实体组'opeg'框不包括任何这些参数。
然而,当在某个位置信令通知PTL时,也应信令通知色度格式、比特深度以及图片宽度和图片高度作为附加能力指示。
请注意,可视样本条目的宽度和高度字段是裁剪的帧宽度和高度。因此,除非裁剪窗口偏移均为零且图片为宽度和高度的值不会与解码图片的图片宽度和高度相同的帧。
目前,可能出现以下情况:
a.仅包含在一个VVC轨道中的单层比特流,没有'oref'轨道引用。因此,VvcPtlRecord应出现在解码器配置记录中。然而,在这种情况下,可能在样本条目、'vopi'样本组条目或'opeg'实体组框中的任何一个中都没有信令通知色度格式、比特深度、图片宽度和图片高度的部分或全部。
b.存储在多个轨道中的多层比特流,其操作点信息(包括每个操作点的PTL信息)存储在'vopi'样本组条目或'opeg'实体组框中,而色度格式、比特深度、图片宽度和图片高度均未在样本条目、'vopi'样本组条目或'opeg'实体组框中进行信令通知。
2)VvcDecoderConfigurationRecord中的参数chroma_format_idc应该用于能力指示,而不是用于解码,因为参数集本身足以进行解码。甚至对于解码,不仅需要SPS中的chroma_format_idc,还需要用于多层OLS的vps_ols_dpb_chroma_format[]。因此,这里实际上应该信令通知最大dpb_chroma_format,而在当前设计中并非如此。对于相应的比特深度、图片宽度和图片高度参数也是如此。
3)规定当ptl_present_flag等于1时,chroma_format_idc应等于vps_ols_dpb_chroma_format[output_layer_set_idx]。存在以下两个问题(对于相应的比特深度参数类似):
a.vps_ols_dpb_chroma_format[]的值对于不同的CVS可以不同。因此,需要要求该值对于所有VPS相同,或者指定该值等于或大于最大值。
b.ps_ols_dpb_chroma_format[idx]的索引值idx是多层OLS列表的索引,因此直接使用output_layer_set_idx是不正确的,output_layer_set_idx是所有OLS列表的索引。
5.技术解决方案的列表
为了解决上述问题,公开了如下总结的方法。这些项目应被视为解释一般概念的示例,并且不应以狭隘的方式进行解释。此外,这些项目可以单独应用或以任何方式组合应用。
1)当ptl_present_flag等于1时,在VvcDecoderConfigurationRecord中信令通知chroma_format_idc和bit_depth_minus8,当ptl_present_flag等于0时,不在VvcDecoderConfigurationRecord中信令通知它们。
2)当应用配置记录的VVC流是单层比特流时,对于应用当前样本条目描述的样本中的VCL NAL单元引用的所有SPS,sps_chroma_format_idc的值应相同,并且chroma_format_idc的值应等于sps_chroma_format_idc。
3)当应用配置记录的VVC流是多层比特流时,对于应用当前样本条目描述的所有CVS,chroma_format_idc的值应等于应用于output_layer_set_idx标识的OLS的vps_ols_dpb_chroma_format[output_layer_set_idx的最大值。
a.或者,将上述“等于”更改为“等于或大于”。
4)当应用配置记录的VVC流是单层比特流时,对于应用当前样本条目描述的样本中的VCL NAL单元引用的所有SPS,sps_bitdepth_minus8的值应相同,并且value of bit_depth_minus8的值应等于sps_bitdepth_minus8。
5)当应用配置记录的VVC流是多层比特流时,对于应用当前样本条目描述的所有CVS,bit_depth_minus8的值应等于应用于output_layer_set_idx标识的OLS的vps_ols_dpb_bitdepth_minus8[output_layer_set_idx]的最大值。
a.或者,将上述“等于”更改为“等于或大于”。
6)在VvcDecoderConfigurationRecord中添加picture_width和picture_height的信令,chroma_format_idc和bit_depth_minus8的信令也是如此。并且picture_width和picture_height字段都使用16比特进行信令通知。
a.或者,picture_width和picture_height字段都使用24比特进行信令通知。
b.或者,picture_width和picture_height字段都使用32比特进行信令通知。
c.或者,此外,当应用配置记录的VVC流是单层比特流时,当裁剪窗口偏移均为零且图片为帧时,可以跳过信令通知picture_width和picture_height字段。
7)在VvcOperatingPointsRecord和OperatingPointGroupBox中,为每个操作点添加chroma_format_idc、bit_depth_minus8、picture_width和picture_height的信令,例如紧接在ptl_idx之后,当在VvcDecoderConfigurationRecord中存在时,具有与上述类似的语义和约束。
6.实施例
下面是上文在第5节中总结的一些发明方面的一些示例实施例,其可应用于VVC视频文件格式的标准规范。更改的文本是基于MPEG输出文档N19454中的最新规范草案“信息技术-视听对象的编解码-第15部分:以ISO基本媒体文件格式传输网络抽象层(NAL)单元结构化视频-修正案2:以ISOBMFF传输VVC和EVC”,2020年7月”。大多数已添加或修改的相关部分以粗体和斜体突出显示,一些已删除部分以双括号突出显示(例如,[[a]]表示删除字符“a”)。可能还有一些其他编辑性质的变化,因此没有突出显示。
6.1第一实施例
本实施例适用于项目1至7。
6.1.1解码器配置信息
6.1.1.1VVC解码器配置记录
6.1.1.1.1定义
本条规定了ISO/IEC 23090-3视频内容的解码器配置信息。
...
以下约束适用于chroma_format_idc:
-如果应用配置记录的VVC流是单层比特流,则ISO/IEC 23090-3中定义的sps_chroma_format_idc的值在应用当前样本条目描述的样本中的[[轨道的]]VCL NAL单元引用的所有SPS中[[是]]应相同,并且chroma_format_idc的值应等于sps_chroma_format_idc。
-否则(应用配置记录的VVC流是多层比特流),对于应用当前样本条目描述的所有CVS,[[如果ptl_present_flag等于1,]]chroma_format_idc的值应等于ISO/IEC 23090-3中定义的应用于output_layer_set_idx标识的OLS的vps_ols_dpb_chroma_format[MultiLayerOlsIdx[output_layer_set_idx]]的最大值。
-[[否则,chroma_format_idc将不存在。]]
以下约束适用于bit_depth_minus8:
-如果应用配置记录的VVC流是单层比特流,则ISO/IEC 23090-3中定义的sps_bitdepth_minus8的值在应用当前样本条目描述的样本中的[[轨道的]]VCL NAL单元引用的所有SPS中[[是]]应相同,并且bit_depth_minus8的值应等于sps_bitdepth_minus8。
-否则(应用配置记录的VVC流是多层比特流),对于应用当前样本条目描述的所有CVS,[[如果ptl_present_flag等于1,]]bit_depth_minus8的值应等于ISO/IEC 23090-3中定义的应用于output_layer_set_idx标识的OLS的vps_ols_dpb_bitdepth_minus8[MultiLayerOlsIdx[output_layer_set_idx]]的最大值。
-[[否则,bit_depth_minus8将不存在。]]
以下约束适用于picture_width:
-如果应用配置记录的VVC流是单层比特流,则ISO/IEC 23090-3中定义的sps_pic_width_max_in_luma_samples的值在应用当前样本条目描述的样本中的VCL NAL单元引用的所有SPS中应相同,并且picture_width的值应等于sps_pic_width_max_in_luma_samples。
-否则(应用配置记录的VVC流是多层比特流),对于应用当前样本条目描述的所有CVS,picture_width的值应等于ISO/IEC 23090-3中定义的应用于output_layer_set_idx标识的OLS的vps_ols_dpb_pic_width[MultiLayerOlsIdx[output_layer_set_idx]]的最大值。
以下约束适用于picture_height:
-如果应用配置记录的VVC流是单层比特流,则ISO/IEC 23090-3中定义的sps_pic_height_max_in_luma_samples的值在应用当前样本条目描述的样本中的VCL NAL单元引用的所有SPS中应相同,并且picture_height的值应等于sps_pic_height_max_in_luma_samples。
-否则(应用配置记录的VVC流是多层比特流),对于应用当前样本条目描述的所有CVS,picture_height的值应等于ISO/IEC 23090-3中定义的应用于output_layer_set_idx标识的OLS的vps_ols_dpb_pic_height[MultiLayerOlsIdx[output_layer_set_idx]]的最大值。
...
6.1.1.1.2语法
/>
6.1.1.1.3语义
...
ptl_present_flag等于1指定轨道包含对应于特定输出层集的VVC比特流。ptl_present_flag等于0指定轨道可能不包含对应于特定输出层集的VVC比特流,而是可能包含对应于多输出层集的VVC比特流或者可能包含一个或多个不形成输出层集的单独层或不包括TemporalId等于0的子层的单独子层。
track_ptl指定由包含在轨道中的VVC比特流表示的输出层集的档次、等级和水平。
output_layer_set_idx指定由包含在轨道中的VVC比特流表示的输出层集的输出层集索引。如ISO/IEC 23090-3中规定,output_layer_set_idx的值可用作通过外部方式提供给VVC解码器的TargetOlsIdx变量的值,用于解码包含在轨道中的比特流。当ptl_present_flag等于1且output_layer_set_idx不存在时,其值被推断为等于OLS的OLS索引,该OLS仅包含VVC轨道中携带的层(在解析参考VVC轨道或VVC子图片轨道(如果有)后)。
[[chroma_format_present_flag等于0指定chroma_format_idc不存在。chroma_format_present_flag等于1指定存在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应等于ISO/IEC23090-3中定义的vps_ols_dpb_chroma_format[output_layer_set_idx]。
-否则,chroma_format_idc将不存在。
bit_depth_present_flag等于0指定bit_depth_minus8不存在。bit_depth_present_flag等于1指定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应等于ISO/IEC23090-3中定义的vps_ols_dpb_bitdepth_minus8[output_layer_set_idx]。
-否则,bit_depth_minus8将不存在。]]
picture_width指示应用于该轨道的最大图片宽度,以亮度样本为单位。
picture_height指示应用于该轨道的最大图片高度,以亮度样本为单位。
numAnumArrays指示所指示类型的NAL单元的数组数。
当array_completeness等于1时,指示给定类型的所有NAL单元都在以下数组中且没有任何NAL单元在流中;当array_completeness等于0时,指示所指示类型的附加NAL单元可以在流中;允许值受样本条目名称的约束。
NAL_unit_type指示以下数组中NAL单元的类型(应全部为该类型);它采用ISO/IEC 23090-3中定义的值;它限于采用指示DCI、VPS、SPS、PPS、前缀APS或前缀SEI NAL单元的值中的一个。
numNalus指示应用此配置记录的流的配置记录中包含的指示类型的NAL单元数。SEI数组应仅包含“声明性”性质的SEI消息,即那些提供关于整个流的信息的SEI消息。此类SEI的一个示例可以是用户数据SEI。
nalUnitLength指示NAL单元的字节长度。
如在ISO/IEC 23090-3规定的,nalUnit包含DCI、VPS、SPS、PPS、APS或声明性SEINAL单元。
6.1.2操作点信息样本组
6.1.2.1定义
...
6.1.2.2语法
6.1.2.3语义
...
num_operating_points:给出以下信息所针对的操作点的数量。
output_layer_set_idx是定义操作点的输出层集的索引。output_layer_set_idx和layer_id值之间的映射应与VPS为具有索引output_layer_set_idx的输出层集指定的相同。
ptl_idx:针对具有索引output_layer_set_idx的输出层集信令通知列出的档次、水平和等级结构的从零开始的索引。
chroma_format_idc指示应用于该操作点的色度格式。以下约束适用于chroma_format_idc:
-如果该操作点仅包含一层,则ISO/IEC 23090-3中定义的sps_chroma_format_idc的值在该操作点的VVC比特流中的VCL NAL单元引用的所有SPS中应相同,并且chroma_format_idc的值应等于sps_chroma_format_idc。
-否则(此操作点包含多于一层),chroma_format_idc的值应等于ISO/IEC 23090-3中定义的vps_ols_dpb_chroma_format[MultiLayerOlsIdx[output_layer_set_idx]]的值。
bit_depth_minus8指示应用于该操作点的比特深度。以下约束适用于bit_depth_minus8:
-如果该操作点仅包含一层,则ISO/IEC 23090-3中定义的sps_bitdepth_minus8的值在该操作点的VVC比特流中的VCL NAL单元引用的所有SPS中应相同,并且bit_depth_minus8的值应等于sps_bitdepth_minus8。
-否则(此操作点包含多于一个的层),bit_depth_minus8的值应等于ISO/IEC23090-3中定义的vps_ols_dpb_bitdepth_minus8[MultiLayerOlsIdx[output_layer_set_idx]]的值。
picture_width指示应用于该操作点的最大图片宽度,以亮度样本为单位。以下约束适用于picture_width:
-如果该操作点仅包含一层,则ISO/IEC 23090-3中定义的sps_pic_width_max_in_luma_samples的值在该操作点的VVC比特流中的VCL NAL单元引用的所有SPS中应相同,并且picture_width的值应等于sps_pic_width_max_in_luma_samples。
-否则(此操作点包含多于一个的层),picture_width的值应等于ISO/IEC23090-3中定义的vps_ols_dpb_pic_width[MultiLayerOlsIdx[output_layer_set_idx]]的值。
picture_height指示应用于该操作点的最大图片高度,以亮度样本为单位。以下约束适用于picture_height:
-如果该操作点仅包含一层,则ISO/IEC 23090-3中定义的sps_pic_height_max_in_luma_samples的值在该操作点的VVC比特流中的VCL NAL单元引用的所有SPS中应相同,并且picture_height的值应等于sps_pic_height_max_in_luma_samples。
-否则(此操作点包含多于一个的层),picture_height的值应等于ISO/IEC23090-3中定义的vps_ols_dpb_pic_height[MultiLayerOlsIdx[output_layer_set_idx]]的值。
max_temporal_id:给出该操作点NAL单元的最大TemporalId。
注:层信息样本组中指示的最大TemporalId值与此处指示的最大TemporalId具有不同的语义。但是,它们可能具有相同的文字数值。
...
6.1.3操作点实体组
6.1.3.1综述
定义操作点实体组以提供轨道到操作点的映射以及操作点的档次水平信息。
聚合映射到此实体组中描述的操作点的轨道样本时的隐式重建过程不需要移除任何进一步的NAL单元以产生一致的VVC比特流。属于操作点实体组的轨道应具有'oref'类型的轨道引用,指向操作点实体组中指示的group_id。
操作点实体组中包含的所有entity_id值应属于同一VVC比特流。当存在时,OperatingPointGroupBox应包含在电影级MetaBox中的GroupsListBox中,而不应包含在文件级或轨道级MetaBox中。
6.1.3.2语法
6.1.3.3语义
...
num_operating_points:给出以下信息所针对的操作点的数量。
output_layer_set_idx是定义操作点的输出层集的索引。output_layer_set_idx和layer_id值之间的映射应与VPS为具有索引output_layer_set_idx的输出层集指定的相同。
ptl_idx:针对具有索引output_layer_set_idx的输出层集信令通知列出的档次、水平和等级结构的从零开始的索引。
chroma_format_idc指示应用于该操作点的色度格式。以下约束适用于chroma_format_idc:
-如果该操作点仅包含一层,则ISO/IEC 23090-3中定义的sps_chroma_format_idc的值在该操作点的VVC比特流中的VCL NAL单元引用的所有SPS中应相同,并且chroma_format_idc的值应等于sps_chroma_format_idc。
-否则(此操作点包含多于一个的层),chroma_format_idc的值应等于ISO/IEC23090-3中定义的vps_ols_dpb_chroma_format[MultiLayerOlsIdx[output_layer_set_idx]]的值。
bit_depth_minus8指示应用于该操作点的比特深度。以下约束适用于bit_depth_minus8:
-如果该操作点仅包含一层,则ISO/IEC 23090-3中定义的sps_bitdepth_minus8的值在该操作点的VVC比特流中的VCL NAL单元引用的所有SPS中应相同,并且bit_depth_minus8的值应等于sps_bitdepth_minus8。
-否则(此操作点包含多于一个的层),bit_depth_minus8的值应等于ISO/IEC23090-3中定义的vps_ols_dpb_bitdepth_minus8[MultiLayerOlsIdx[output_layer_set_idx]]的值。
picture_width指示应用于该操作点的最大图片宽度,以亮度样本为单位。以下约束适用于picture_width:
-如果该操作点仅包含一层,则ISO/IEC 23090-3中定义的sps_pic_width_max_in_luma_samples的值在该操作点的VVC比特流中的VCL NAL单元引用的所有SPS中应相同,并且picture_width的值应等于sps_pic_width_max_in_luma_samples。
-否则(此操作点包含多于一个的层),picture_width的值应等于ISO/IEC23090-3中定义的vps_ols_dpb_pic_width[MultiLayerOlsIdx[output_layer_set_idx]]的值。
picture_height指示应用于该操作点的最大图片高度,以亮度样本为单位。以下约束适用于picture_height:
-如果该操作点仅包含一层,则ISO/IEC 23090-3中定义的sps_pic_height_max_in_luma_samples的值在该操作点的VVC比特流中的VCL NAL单元引用的所有SPS中应相同,并且picture_height的值应等于sps_pic_height_max_in_luma_samples。
-否则(此操作点包含多于一个的层),picture_height的值应等于ISO/IEC23090-3中定义的vps_ols_dpb_pic_height[MultiLayerOlsIdx[output_layer_set_idx]]的值。
max_temporal_id:给出该操作点NAL单元的最大TemporalId。
注:层信息样本组中指示的最大TemporalId值与此处指示的最大TemporalId具有不同的语义。但是,它们可能具有相同的文字数值。
...
图1是示出了其中可以实施本文公开的各种技术的示例视频处理系统1900的框图。各种实施方式可以包括系统1900的部分或全部组件。系统1900可以包括用于接收视频内容的输入1902。视频内容可以以原始或未压缩格式(例如,8或10比特多分量像素值)接收,或者可以以压缩或编码格式接收。输入1902可以表示网络接口、外围总线接口或存储接口。网络接口的示例包括有线接口,例如以太网、无源光网络(PON)等,以及无线接口,例如Wi-Fi或蜂窝接口。
系统1900可以包括编解码组件1904,其可以实施本文档中描述的各种编解码或编码方法。编解码组件1904可以将视频的平均比特率从输入1902降低到编解码组件1904的输出,以产生视频的编解码表示。因此,编解码技术有时被称为视频压缩或视频转码技术。编解码组件1904的输出可以被存储,或者经由由组件1906表示的连接的通信来发送。组件1908可以使用在输入1902处接收的视频的存储的或通信的比特流(或编解码的)表示来生成发送到显示接口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生成编码视频数据,源设备110可以被称为视频编码设备。目的地设备120可以对源设备110生成的编码视频数据进行解码,目的地设备120可以被称为视频解码设备。
源设备110可以包括视频源112、视频编码器114和输入/输出(I/O)接口116。
视频源112可以包括诸如视频捕获设备的源、用于从视频内容提供商接收视频数据的接口和/或用于生成视频数据的计算机图形系统,或这些源的组合。视频数据可以包括一个或多个图片。视频编码器114对来自视频源112的视频数据进行编码以生成比特流。比特流可以包括形成视频数据的编解码表示的比特序列。比特流可以包括编解码图片和相关数据。编解码图片是图片的编解码表示。相关联的数据可以包括序列参数集、图片参数集和其他语法结构。I/O接口116可以包括调制器/解调器(调制解调器)和/或发送器。编码的视频数据可以通过网络130a经由I/O接口116直接发送到目的地设备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是示出了可以是图4所示的系统100中的视频编码器114的视频编码器200的示例的框图。
视频编码器200可被配置为执行本公开的任何或所有技术。在图5的示例中,视频编码器200包括多个功能组件。本公开中描述的技术可以在视频编码器200的各个组件之间共享。在一些示例中,处理器可被配置为执行本公开中描述的任何或所有技术。
视频编码器200的功能组件可以包括分割单元201、预测单元202,预测单元202可以包括模式选择单元203、运动估计单元204、运动补偿单元205和帧内预测单元206,残差生成单元207、变换单元208、量化单元209,逆量化单元210、逆变换单元211、重建单元212、缓冲器213和熵编码单元214。
在其他示例中,视频编码器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是示出了可以是图4所示的系统100中的视频解码器114的视频解码器300的示例的框图。
视频解码器300可被配置为执行本公开的任何或所有技术。在图6的示例中,视频解码器300包括多个功能组件。本公开中描述的技术可以在视频解码器300的各个组件之间共享。在一些示例中,处理器可被配置为执行本公开中描述的任何或所有技术。
在图6的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305、重建单元306和缓冲器307。在一些示例中,视频解码器300可以执行与关于视频编码器200(图5)描述的编码过程大体相反的解码过程。
熵解码单元301可以检索编码比特流。编码比特流可包括熵编解码视频数据(例如,视频数据的编码块)。熵解码单元301可以解码熵编解码视频数据,并且运动补偿单元302可以从熵解码视频数据确定包括运动矢量、运动矢量精度、参考图片列表索引和其他运动信息的运动信息。例如,运动补偿单元302可以通过执行AMVP和合并模式来确定这样的信息。
运动补偿单元302可以产生运动补偿块,可能基于插值滤波器执行插值。可以在语法元素中包括以子像素精度使用的插值滤波器的标识符。
运动补偿单元302可以使用视频编码器200在视频块编码期间使用的插值滤波器来计算参考块的子整数像素的内插值。运动补偿单元302可以根据接收到的语法信息确定视频编码器200使用的插值滤波器,并使用插值滤波器来产生预测块。
运动补偿单元302可以使用一些语法信息来确定用于编码编码视频序列的帧(多个)和/或条带(多个)的块的大小、描述如何对编码视频序列的图片的每个宏块进行分割的分区信息、指示如何对每个分区进行编码的模式、用于每个帧间编码块的一个或多个参考帧(和参考帧列表),以及用于解码编码视频序列的其他信息。
帧内预测单元303可以使用例如在比特流中接收的帧内预测模式来从空域相邻块形成预测块。逆量化单元303对在比特流中提供并由熵解码单元301解码的量化视频块系数进行逆量化(即,去量化)。逆变换单元303应用逆变换。
重建单元306可以将残差块与由运动补偿单元202或帧内预测单元303生成的相应预测块相加,以形成解码块。如果需要,还可以应用去块滤波器对解码块进行滤波,以去除块性伪影。解码视频块随后存储在缓冲器307中,缓冲器307为后续运动补偿/帧内预测提供参考块,并且还产生解码视频以在显示设备上呈现。
接下来提供一些实施例的优选的解决方案的列表。
下面提供了解决方案的第一集合。以下解决方案示出了前一节(例如,第1项)中讨论的技术的示例实施例。
1.一种可视媒体处理方法(例如,图3中描绘的方法700),包括根据格式规则在可视媒体数据和存储可视媒体数据的比特流表示的文件之间执行转换(702);其中格式规则指定:指示是否在文件中指示档次-等级-水平的第一记录控制指示可视媒体数据的色度格式的第二记录和/或指示用于表示可视媒体数据的比特深度的第三记录是否包括在文件中。
以下解决方案示出了前一节(例如,第2、4项)中讨论的技术的示例实施例。
1.一种可视媒体处理方法,包括:根据格式规则在可视媒体数据和存储可视媒体数据的比特流表示的文件之间执行转换;其中,比特流表示是单层比特流;其中,格式规则指定对存储在文件中的单层比特流的约束。
2.根据解决方案1所述的方法,其中约束是包括在文件样本中的视频编解码层网络抽象层单元引用的一个或多个序列参数集中所指示的一个或多个色度格式值相等。
3.根据解决方案1所述的方法,其中约束是包括在文件样本中的视频编解码层网络抽象层单元引用的一个或多个序列参数集中所指示的一个或多个比特深度值相等。
以下解决方案示出了前一节(例如,第3、5项)中讨论的技术的示例实施例。
1.一种可视媒体处理方法,包括:根据格式规则在可视媒体数据和存储可视媒体数据的比特流表示的文件之间执行转换;其中,比特流表示是多层比特流;其中,格式规则指定对存储在文件中的多层比特流的约束。
2.根据解决方案1所述的方法,其中约束是色度格式的值被设置为等于应用样本条目描述的所有编解码视频序列的输出层集合的样本条目描述中标识的色度格式的最大值。
3.根据解决方案1所述的方法,其中约束是比特深度的值被设置为等于应用样本条目描述的所有编解码视频序列的输出层集合的样本条目描述中标识的比特深度的最大值。
8.根据解决方案1-7中任一解决方案所述的方法,其中转换包括根据格式规则生成可视媒体数据的比特流表示并将比特流表示存储到文件中。
9.根据解决方案1-7中任一解决方案上述的方法,其中转换包括根据格式规则解析文件以恢复可视媒体数据。
10.一种视频解码装置,包括处理器,其被配置为实现解决方案1至9中的一个或多个所述的方法。
11.一种视频编码装置,包括处理器,其被配置为实现解决方案1到9中的一个或多个所述的方法。
12.一种计算机程序产品,其上存储有计算机代码,当该代码由处理器执行时,使得处理器实现解决方案1至9中任一解决方案所述的方法。
13.一种计算机可读介质,其上存储符合文件格式的根据解决方案1至9中任一解决方案生成的比特流。
14.本文档中描述的方法、装置或系统。在本文描述的解决方案中,编码器可以通过根据格式规则生成编解码表示来符合格式规则。在本文描述的解决方案中,解码器可以根据格式规则、在具有语法元素的存在和不存在的知识的情况下,使用格式规则来解析编解码表示中的语法元素来产生解码视频。
解决方案的第二集合提供了前一节(例如,第1-5项)中讨论的技术的示例实施例。
1.一种处理可视媒体数据的方法(例如,如图8所示的方法800),包括:根据格式规则在可视媒体数据和包括存储可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换;其中,格式规则指定第一元素是否指示轨道是否包含对应于特定输出层集的比特流控制指示轨道的色度格式的第二元素和/或指示轨道的比特深度信息的第三元素是否包括在轨道的配置记录中(802)。
2.根据解决方案1所述的方法,其中所述格式规则指定:响应于所述第一元素指示所述轨道包含对应于所述特定输出层集的所述比特流而包括所述第二元素和/或所述第三元素。
3.根据解决方案1所述的方法,其中所述格式规则指定:响应于所述第一元素指示允许所述轨道不包含对应于所述特定输出层集的所述比特流而省略所述第二元素和/或所述第三元素。
4.根据解决方案1所述的方法,其中所述格式规则取决于应用配置记录的比特流是否是多层比特流而进一步指定语法约束。
5.根据解决方案4所述的方法,其中所述格式规则进一步指定:响应于所述比特流不是所述多层比特流,所述语法约束是在应用所述配置记录的样本条目描述的所述可视媒体文件的样本中包括的NAL(网络抽象层)单元引用的一个或多个序列参数集中所指示的一个或多个色度格式值相等。
6.根据解决方案5所述的方法,其中所述格式规则进一步指定:所述配置记录中指示的色度格式值等于所述一个或多个色度格式值。
7.根据解决方案4所述的方法,其中所述格式规则进一步指定:响应于所述比特流是所述多层比特流,所述语法约束是所述配置记录中指示的色度格式的值被设置为等于在应用所述配置记录的样本条目描述的所有编解码视频序列的所有视频参数集中指示的所有色度格式值中在视频参数集中指示并应用于由输出层集索引标识的输出层集的色度格式的最大值。
8.根据解决方案4所述的方法,其中所述格式规则进一步指定:响应于所述比特流不是所述多层比特流,在应用所述配置记录的样本条目描述的可视媒体文件的样本中包括的NAL(网络抽象层)单元引用的一个或多个序列参数集中所指示的一个或多个比特深度信息值相等。
9.根据解决方案8所述的方法,其中所述格式规则进一步指定:所述配置记录中指示的比特深度信息值等于所述一个或多个比特深度信息值。
10.根据解决方案4所述的方法,其中所述格式规则进一步指定:响应于所述比特流是所述多层比特流,所述语法约束是所述配置记录中指示的比特深度信息值被设置为等于在应用所述配置记录的样本条目描述的所有编解码视频序列的所有视频参数集中指示的所有比特深度信息值中在视频参数集中指示并应用于由输出层集索引标识的输出层集的比特深度信息的最大值。
11.根据解决方案1-10中任一解决方案所述的方法,其中所述转换包括根据所述格式规则生成所述可视媒体文件并将所述一个或多个比特流存储到所述可视媒体文件。
12.根据解决方案1-10中任一解决方案所述的方法,其中所述转换包括根据所述格式规则解析所述可视媒体文件以重建所述一个或多个比特流。
13.一种处理可视媒体数据的装置,该装置包括处理器,其被配置为实现一种方法,该方法包括:根据格式规则在可视媒体数据和包括存储可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换,其中,格式规则指定:色度格式语法元素和/或比特深度语法元素的存在或对色度格式语法元素和/或比特深度语法元素的语法约束取决于(1)轨道是否包含对应于特定输出层集的特定比特流和/或(2)应用配置记录的比特流是否是多层比特流。
14.根据解决方案13所述的装置,其中,格式规则指定在轨道包含对应于特定输出层集的特定比特流的情况下,在轨道的配置记录中包括色度格式语法元素和/或比特深度语法元素。
15.根据解决方案13所述的装置,其中,格式规则指定在允许轨道不包含对应于特定输出层集的比特流的情况下,从轨道的配置记录中省略色度格式语法元素和/或比特深度语法元素。
16.根据解决方案13所述的装置,其中格式规则指定:响应于比特流不是多层比特流,语法约束是在应用配置记录的样本条目描述的可视媒体文件的样本中包括的NAL(网络抽象层)单元引用的一个或多个序列参数集中所指示的一个或多个色度格式语法元素的值相等。
17.根据解决方案13所述的装置,其中格式规则指定:响应于比特流是多层比特流,语法约束是配置记录中指示的色度格式的值被设置为等于在用于应用配置记录的样本条目描述的所有编解码视频序列的所有视频参数集中指示的所有色度格式值中在视频参数集中指示并应用于由输出层集索引标识的输出层集的色度格式的最大值。
18.根据解决方案13所述的装置,其中格式规则响应于比特流不是多层比特流指定语法约束是在应用配置记录的样本条目描述的可视媒体文件的样本中包括的NAL(网络抽象层)单元引用的一个或多个序列参数集中所指示的一个或多个比特深度语法元素的值相等。
19.根据解决方案13所述的装置,其中格式规则指定:响应于比特流是多层比特流,语法约束是比特深度语法元素的值被设置为等于或大于在用于应用配置记录的样本条目描述的所有编解码视频序列的所有视频参数集中指示的所有比特深度信息值中在视频参数集中指示并应用于由输出层集索引标识的输出层集的比特深度信息的最大值。
20.一种存储指令的非暂时性计算机可读记录介质,使得处理器:根据格式规则在可视媒体数据和包括存储可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换,其中,格式规则指定:色度格式语法元素和/或比特深度语法元素的存在或对色度格式语法元素和/或比特深度语法元素的语法约束取决于(1)轨道是否包含对应于特定输出层集的特定比特流和/或(2)应用配置记录的比特流是否是多层比特流。
21.一种非暂时性计算机可读记录介质,其存储由视频处理装置执行的方法生成的比特流,其中该方法包括:根据格式规则生成包括存储可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件,其中,格式规则指定:色度格式语法元素和/或比特深度语法元素的存在或对色度格式语法元素和/或比特深度语法元素的语法约束取决于(1)轨道是否包含对应于特定输出层集的特定比特流和/或(2)应用配置记录的比特流是否是多层比特流。
22.一种视频处理装置,包括处理器,其被配置为实现解决方案1到12中的任何一个或多个所述的方法。
23.一种将可视媒体数据存储到包括一个或多个比特流的文件中的方法,所述方法包括解决方案1至12中任一解决方案所述的方法,并且进一步包括将所述一个或多个比特流存储到非暂时性计算机可读记录介质。
24.一种存储程序代码的计算机可读介质,当执行所述程序代码时,使处理器实现解决方案1至12的任何一个或多个所述的方法。
25.一种计算机可读介质,其存储根据上述任一方法生成的比特流。
26.一种用于存储比特流的视频处理装置,其中,该视频处理装置被配置为实现解决方案1至12中任何一个或多个所述的方法。
27.一种计算机可读介质,其上存储符合文件格式的根据解决方案1至12中任一解决方案生成的比特流。
28.一种本文档中描述的方法、装置或系统。
解决方案的第三集合提供了前一节(例如,第6项)中讨论的技术的示例实施例。
1.一种处理可视媒体数据的方法(例如,如图9所示的方法900),包括:根据格式规则在可视媒体数据和包括存储可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换;其中,所述格式规则指定:是否在轨道的配置记录中包括指示所述轨道的图片宽度的第一元素和/或指示所述轨道的图片高度的第二元素是基于(1)第三元素是否指示所述轨道包含对应于特定输出层集的特定比特流和/或(2)所述配置记录是否用于单层比特流,并且
其中所述格式规则进一步指定当所述第一元素和/或所述第二元素包括在所述轨道的所述配置记录中时,在包括16比特的字段中表示所述第一元素和/或所述第二元素。
2.根据解决方案1所述的方法,其中所述格式规则指定:响应于所述第三元素指示所述轨道包含对应于所述特定输出层集的所述特定比特流而包括所述第一元素和/或所述第二元素。
3.根据解决方案1所述的方法,其中所述格式规则指定:响应于所述第三元素指示允许所述轨道不包含对应于所述特定输出层集的所述特定比特流而省略所述第一元素和/或所述第二元素。
4.根据解决方案1所述的方法,其中所述字段包括24比特。
5.根据解决方案1所述的方法,其中所述字段包括32比特。
6.根据解决方案1所述的方法,其中所述格式规则指定:响应于所述比特流是所述单层比特流、裁剪窗口偏移量均为零并且图片是帧而省略所述第一元素和/或所述第二元素。
7.根据解决方案1所述的方法,
其中所述格式规则基于应用所述配置记录的比特流是否是单层比特流来进一步指定对所述第一元素和/或所述第二元素的值的语法约束。
8.根据解决方案7所述的方法,其中所述格式规则进一步指定:响应于所述比特流是所述单层比特流,所述语法约束是在应用所述配置记录的样本条目描述的可视媒体文件的样本中包括的NAL(网络抽象层)单元引用的一个或多个序列参数集中所指示的一个或多个图片宽度值相等。
9.根据解决方案8所述的方法,其中所述格式规则进一步指定存储所述比特流的所述轨道的所述第一元素的值等于所述一个或多个图片宽度值。
10.根据解决方案7所述的方法,其中所述格式规则进一步指定:响应于所述比特流是所述单层比特流,所述语法约束是在应用所述配置记录的样本条目描述的可视媒体文件的样本中包括的NAL(网络抽象层)单元引用的一个或多个序列参数集中所指示的一个或多个图片高度值相等。
11.根据解决方案10所述的方法,其中所述格式规则进一步指定:存储所述比特流的所述轨道的所述第二元素的值等于所述一个或多个图片高度值。
12.根据解决方案7所述的方法,其中所述格式规则进一步指定:响应于所述比特流不是所述单层比特流,所述语法约束是所述第一元素的值被设置为等于在应用所述配置记录的样本条目描述的所有编解码视频序列的所有视频参数集中指示的所有图片宽度值中在视频参数集中指示并应用于由输出层集索引标识的输出层集的图片宽度的最大值。
13.根据解决方案7所述的方法,其中所述格式规则进一步指定:响应于所述比特流不是所述单层比特流,所述语法约束是所述第二元素的值被设置为等于在应用所述配置记录的样本条目描述的所有编解码视频序列的所有视频参数集中指示的所有图片高度值中在视频参数集中指示并应用于由输出层集索引标识的输出层集的图片高度的最大值。
14.根据解决方案1-13中任一解决方案所述的方法,其中所述转换包括根据所述格式规则生成所述可视媒体文件并将所述一个或多个比特流存储到所述可视媒体文件。
15.根据解决方案1-13中任一解决方案所述的方法,其中所述转换包括根据所述格式规则解析所述可视媒体文件以重建所述一个或多个比特流。
16.一种处理可视媒体数据的装置,包括处理器,其被配置为实现一种方法,该方法包括:根据格式规则在可视媒体数据和包括存储可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换;其中,所述格式规则指定:是否在轨道的配置记录中包括指示所述轨道的图片宽度的第一元素和/或指示所述轨道的图片高度的第二元素是基于(1)第三元素是否指示所述轨道包含对应于特定输出层集的特定比特流和/或(2)所述配置记录是否用于单层比特流,并且其中所述格式规则进一步指定当所述第一元素和/或所述第二元素包括在所述轨道的所述配置记录中时,在包括16比特的字段中表示所述第一元素和/或所述第二元素。
17.根据解决方案16所述的装置,其中所述格式规则指定:响应于所述第三元素指示所述轨道包含对应于所述特定输出层集的所述特定比特流而包括所述第一元素和/或所述第二元素。
18.根据解决方案16所述的装置,其中所述格式规则指定:响应于所述第三元素指示允许所述轨道不包含对应于所述特定输出层集的所述特定比特流而省略所述第一元素和/或所述第二元素。
19.根据解决方案16所述的装置,其中所述格式规则基于应用所述配置记录的比特流是否是单层比特流来进一步指定对所述第一元素和/或所述第二元素的值的语法约束。
20.根据解决方案19所述的装置,其中所述格式规则进一步指定:响应于所述比特流是所述单层比特流,所述语法约束是在应用所述配置记录的样本条目描述的可视媒体文件的样本中包括的NAL(网络抽象层)单元引用的一个或多个序列参数集中所指示的一个或多个图片宽度值相等。
21.根据解决方案19所述的装置,其中所述格式规则进一步指定:响应于所述比特流是所述单层比特流,所述语法约束是在应用所述配置记录的样本条目描述的可视媒体文件的样本中包括的NAL(网络抽象层)单元引用的一个或多个序列参数集中所指示的一个或多个图片高度值相等。
22.根据解决方案19所述的装置,其中所述格式规则进一步指定:响应于所述比特流不是所述单层比特流,所述语法约束是所述第一元素的值被设置为等于在应用所述配置记录的样本条目描述的所有编解码视频序列的所有视频参数集中指示的所有图片宽度值中在视频参数集中指示并应用于由输出层集索引标识的输出层集的图片宽度的最大值。
23.根据解决方案19所述的装置,其中所述格式规则进一步指定:响应于所述比特流不是所述单层比特流,所述语法约束是所述第二元素的值被设置为等于在应用所述配置记录的样本条目描述的所有编解码视频序列的所有视频参数集中指示的所有图片高度值中在视频参数集中指示并应用于由输出层集索引标识的输出层集的图片高度的最大值。
24.一种存储指令的非暂时性计算机可读记录介质,使得处理器:根据格式规则在可视媒体数据和包括存储可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换;其中,所述格式规则指定:是否在轨道的配置记录中包括指示所述轨道的图片宽度的第一元素和/或指示所述轨道的图片高度的第二元素是基于(1)第三元素是否指示所述轨道包含对应于特定输出层集的特定比特流和/或(2)所述配置记录是否用于单层比特流,并且其中所述格式规则进一步指定当所述第一元素和/或所述第二元素包括在所述轨道的所述配置记录中时,在包括16比特的字段中表示所述第一元素和/或所述第二元素。
25.一种非暂时性计算机可读记录介质,其存储由视频处理装置执行的方法生成的比特流,其中该方法包括:根据格式规则在可视媒体数据和包括存储可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换;其中,所述格式规则指定:是否在轨道的配置记录中包括指示所述轨道的图片宽度的第一元素和/或指示所述轨道的图片高度的第二元素是基于(1)第三元素是否指示所述轨道包含对应于特定输出层集的特定比特流和/或(2)所述配置记录是否用于单层比特流,并且其中所述格式规则进一步指定当所述第一元素和/或所述第二元素包括在所述轨道的所述配置记录中时,在包括16比特的字段中表示所述第一元素和/或所述第二元素。
26.一种视频处理装置,包括处理器,其被配置为实现解决方案1到15中的任何一个或多个所述的方法。
27.一种将可视媒体数据存储到包括一个或多个比特流的文件中的方法,该方法包括解决方案1至15中任一解决方案所述的方法,并且进一步包括将一个或多个比特流存储到非暂时性计算机可读记录介质。
28.一种存储程序代码的计算机可读介质,当执行该程序代码时,使处理器实现解决方案1至15的任何一个或多个所述的方法。
29.一种计算机可读介质,其存储根据上述任一方法生成的比特流。
30.一种用于存储比特流的视频处理装置,其中,该视频处理装置被配置为实现解决方案1至15中任何一个或多个所述的方法。
31.一种计算机可读介质,其上存储符合文件格式的根据解决方案1至15中任一解决方案生成的比特流。
解决方案的第四集合提供了前一节(例如,第7项)中讨论的技术的示例实施例。
1.一种处理可视媒体数据的方法(例如,如图10所示的方法1000),包括:根据格式规则在可视媒体数据和包括存储可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换;其中,所述可视媒体文件包括操作点记录和操作点组框,并且其中所述格式规则指定:对于所述可视媒体文件中指示的每个操作点,在所述操作点记录和所述操作点组框中包括指示色度格式的第一元素、指示比特深度信息的第二元素、指示最大图片宽度的第三元素和/或指示最大图片高度的第四元素。
2.根据解决方案1所述的方法,其中所述格式规则进一步指定:所述第一元素、所述第二元素、所述第三元素和/或所述第四元素紧跟在指示由输出层集索引标识的输出层集的档次、水平和等级结构的从零开始的索引的第五元素之后。
3.根据解决方案1所述的方法,其中基于所述操作点是否仅包含单个层,所述格式规则进一步指定对应用于与比特流相关联的操作点的所述第一元素的值、所述第二元素的值、所述第三元素的值和/或所述第四元素的值的语法约束。
4.根据解决方案3所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含所述单个层,所述语法约束是所述操作点的所述比特流中的NAL(网络抽象层)单元引用的一个或多个序列参数集中指示的一个或多个色度格式值相等。
5.根据解决方案4所述的方法,其中所述格式规则进一步指定:所述第一元素的值等于所述一个或多个色度格式值。
6.根据解决方案3所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含多于一个的层,所述语法约束是所述第一元素的值被设置为等于在视频参数集中指示并应用于由输出层集索引标识的输出层集的色度格式值。
7.根据解决方案3所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含所述单个层,所述语法约束是所述操作点的所述比特流中的NAL(网络抽象层)单元引用的一个或多个序列参数集中指示的一个或多个比特深度信息值相等。
8.根据解决方案7所述的方法,其中所述格式规则进一步指定:所述第二元素的值等于所述一个或多个比特深度信息值。
9.根据解决方案3所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含多于一个的层,所述语法约束是所述第二元素的值被设置为等于在视频参数集中指示并应用于由输出层集索引标识的输出层集的比特深度信息值。
10.根据解决方案3所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含所述单个层,所述语法约束是所述操作点的所述比特流中的NAL(网络抽象层)单元引用的一个或多个序列参数集中指示的一个或多个图片宽度值相等。
11.根据解决方案10所述的方法,其中所述格式规则进一步指定:所述第三元素的值等于所述一个或多个图片宽度值。
12.根据解决方案3所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含多于一个的层,所述语法约束是所述第三元素的值被设置为等于在视频参数集中指示并应用于由输出层集索引标识的输出层集的图片宽度值。
13.根据解决方案3所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含所述单个层,所述语法约束是所述操作点的所述比特流中的NAL(网络抽象层)单元引用的一个或多个序列参数集中指示的一个或多个图片高度值相等。
14.根据解决方案13所述的方法,其中所述格式规则进一步指定:所述第四元素的值等于所述一个或多个图片高度值。
15.根据解决方案3所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含多于一个的层,所述语法约束是所述第四元素的值被设置为等于在视频参数集中指示并应用于由输出层集索引标识的输出层集的图片高度值。
16.根据解决方案1-15中任一解决方案所述的方法,其中所述转换包括根据所述格式规则生成可视媒体文件并将所述一个或多个比特流存储到所述可视媒体文件。
17.根据解决方案1-15中任一解决方案所述的方法,其中所述转换包括根据所述格式规则解析所述可视媒体文件以重建所述一个或多个比特流。
18.一种处理可视媒体数据的装置,包括处理器,其被配置为实现一种方法,该方法包括:根据格式规则在可视媒体数据和包括存储可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换;其中,可视媒体文件包括操作点记录和操作点组框,并且其中所述格式规则指定:对于所述可视媒体文件中指示的每个操作点,是否在所述操作点记录和所述操作点组框中包括指示色度格式的第一元素、指示比特深度信息的第二元素、指示最大图片宽度的第三元素和/或指示最大图片高度的第四元素。
19.根据解决方案18所述的装置,其中所述格式规则进一步指定:所述第一元素、所述第二元素、所述第三元素和/或所述第四元素紧跟在指示由输出层集索引标识的输出层集的档次、水平和等级结构的从零开始的索引的第五元素之后。
20.根据解决方案18所述的装置,其中基于所述操作点是否仅包含单个层,所述格式规则进一步指定对应用于与比特流相关联的操作点的所述第一元素的值、所述第二元素的值、所述第三元素的值和/或所述第四元素的值的语法约束。
21.一种存储指令的非暂时性计算机可读记录介质,使得处理器:根据格式规则在可视媒体数据和包括存储可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换;其中,可视媒体文件包括操作点记录和操作点组框,并且其中所述格式规则指定:对于所述可视媒体文件中指示的每个操作点,是否在所述操作点记录和所述操作点组框中包括指示色度格式的第一元素、指示比特深度信息的第二元素、指示最大图片宽度的第三元素和/或指示最大图片高度的第四元素。
22.一种非暂时性计算机可读记录介质,其存储由视频处理装置执行的方法生成的比特流,其中该方法包括:根据格式规则生成包括存储可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件;其中,可视媒体文件包括操作点记录和操作点组框,并且其中所述格式规则指定:对于所述可视媒体文件中指示的每个操作点,是否在所述操作点记录和所述操作点组框中包括指示色度格式的第一元素、指示比特深度信息的第二元素、指示最大图片宽度的第三元素和/或指示最大图片高度的第四元素。
26.一种视频处理装置,包括处理器,其被配置为实现解决方案1到17中的任何一个或多个所述的方法。
27.一种将可视媒体数据存储到包括一个或多个比特流的文件中的方法,该方法包括解决方案1至17中任一解决方案所述的方法,并且进一步包括将一个或多个比特流存储到非暂时性计算机可读记录介质。
28.一种存储程序代码的计算机可读介质,当执行该程序代码时,使处理器实现解决方案1至17的任何一个或多个所述的方法。
29.一种计算机可读介质,其存储根据上述任一方法生成的比特流。
30.一种用于存储比特流的视频处理装置,其中,该视频处理装置被配置为实现解决方案1至17中任何一个或多个所述的方法。
31.一种计算机可读介质,其上存储符合文件格式的根据解决方案1至17中任一解决方案生成的的比特流。
在示例解决方案中,可视媒体数据对应于视频或图像。在本文档中,术语“视频处理”可指视频编码、视频解码、视频压缩或视频解压缩。例如,视频压缩算法可以在从视频的像素表示转换为相应的比特流表示期间应用,反之亦然。例如,当前视频块的比特流表示可以对应于如语法所定义的,在比特流内位于同一位置或分散在不同位置的比特。例如,宏块可以根据变换和编解码的错误残值进行编码,并且还可以使用标头中的比特和比特流中的其他字段。此外,在转换期间,解码器可以根据上述解决方案中描述的确定,在获知一些字段可能存在或不存在的情况下解析比特流。类似地,编码器可以确定是否包括某些语法字段,并通过从编解码表示中包括或排除语法字段来相应地生成编解码表示。
本文档中描述的公开和其他解决方案、示例、实施例、模块和功能操作可在数字电子电路中或在计算机软件、固件或硬件(包括本文档中公开的结构及其结构等效物,或以它们中的一种或多种的组合)中实施。所公开的实施例和其他实施例可以实施为一个或多个计算机程序产品,即,编码在计算机可读介质上的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制其操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储设备、影响机器可读传播信号的物质的组合物,或者它们中的一个或多个的组合。术语“数据处理装置”包括用于处理数据的所有装置、设备和机器,例如包括可编程处理器、计算机或多个处理器或计算机。除了硬件之外,装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。传播信号是人为生成的信号,例如,机器生成的电、光或电磁信号,其生成用于编码信息以传输到合适的接收器装置。
计算机程序(也称为程序、软件、软件应用程序、脚本或代码)可以用任何形式的编程语言编写,包括编译或解释语言,并且可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程,或其他适合在计算环境中使用的单元。计算机程序不一定与文件系统中的文件相对应。程序可以存储在保存其他程序或数据(例如,标记语言文档中存储的一个或多个脚本)的文件的一部分、专用于所讨论的程序的单个文件或多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。计算机程序可以部署在一台计算机上执行或者部署在位于一个站点或分布在多个站点并通过通信网络互连的多台计算机上执行。
本文档中描述的过程和逻辑流可由一个或多个可编程处理器执行,该处理器执行一个或多个计算机程序,通过操作输入数据和生成输出来执行功能。处理和逻辑流还可以由专用逻辑电路执行,并且装置也可以实现为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是执行指令的处理器和存储指令和数据的一个或多个存储设备。通常,计算机还将包括或操作地耦合以从用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘)接收数据或向其传输数据或两者。然而,计算机不需要具有这样的设备。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移动盘;磁光盘;以及CD-ROM及DVD-ROM盘。处理器和存储器可由专用逻辑电路补充或并入专用逻辑电路中。
尽管本专利文档包含许多细节,但这些细节不应被解释为对任何主题或可能要求保护的内容的范围的限制,而是对可能特定于特定技术的特定实施例的特征的描述。本专利文档中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合在多个实施例中实施。此外,尽管上述特征可以被描述为在某些组合中起作用,甚至最初被声称为这样,但在一些情况下,可以从组合中删除来自所声称的组合的一个或多个特征,并且所声称的组合可以被定向到子组合或子组合的变体。
类似地,虽然在附图中以特定顺序描述操作,但这不应理解为要求以所示的特定顺序或顺序执行此类操作,或要求执行所有图示操作以实现期望结果。此外,本专利文档中描述的实施例中的各种系统组件的分离不应理解为在所有实施例中都需要这种分离。
仅描述了一些实施方式和示例,并且可以基于本专利文档中描述和说明的内容来进行其他实施方式、增强和变化。

Claims (18)

1.一种处理可视媒体数据的方法,包括:
根据格式规则在可视媒体数据和包括存储所述可视媒体数据的一个或多个比特流的一个或多个轨道的可视媒体文件之间执行转换;
其中,所述可视媒体文件包括操作点记录和操作点组框,
其中所述格式规则指定:对于所述可视媒体文件中指示的每个操作点,在所述操作点记录和所述操作点组框中包括指示色度格式的第一元素、指示比特深度信息的第二元素、指示最大图片宽度的第三元素和/或指示最大图片高度的第四元素,并且
其中基于所述操作点是否仅包含单个层,所述格式规则进一步指定对应用于与比特流相关联的操作点的所述第一元素的值、所述第二元素的值、所述第三元素的值和所述第四元素的值的语法约束。
2.根据权利要求1所述的方法,其中所述格式规则进一步指定:所述第一元素、所述第二元素、所述第三元素和/或所述第四元素紧跟在指示由输出层集索引标识的输出层集的档次、水平和等级结构的从零开始的索引的第五元素之后。
3.根据权利要求1所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含所述单个层,所述语法约束是所述操作点的所述比特流中的NAL(网络抽象层)单元引用的一个或多个序列参数集中指示的一个或多个色度格式值相等。
4.根据权利要求3所述的方法,其中所述格式规则进一步指定:所述第一元素的值等于所述一个或多个色度格式值。
5.根据权利要求1所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含多于一个的层,所述语法约束是所述第一元素的值被设置为等于在视频参数集中指示并应用于由输出层集索引标识的输出层集的色度格式值。
6.根据权利要求1所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含所述单个层,所述语法约束是所述操作点的所述比特流中的NAL(网络抽象层)单元引用的一个或多个序列参数集中指示的一个或多个比特深度信息值相等。
7.根据权利要求6所述的方法,其中所述格式规则进一步指定:所述第二元素的值等于所述一个或多个比特深度信息值。
8.根据权利要求1所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含多于一个的层,所述语法约束是所述第二元素的值被设置为等于在视频参数集中指示并应用于由输出层集索引标识的输出层集的比特深度信息值。
9.根据权利要求1所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含所述单个层,所述语法约束是所述操作点的所述比特流中的NAL(网络抽象层)单元引用的一个或多个序列参数集中指示的一个或多个图片宽度值相等。
10.根据权利要求9所述的方法,其中所述格式规则进一步指定:所述第三元素的值等于所述一个或多个图片宽度值。
11.根据权利要求1所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含多于一个的层,所述语法约束是所述第三元素的值被设置为等于在视频参数集中指示并应用于由输出层集索引标识的输出层集的图片宽度值。
12.根据权利要求1所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含所述单个层,所述语法约束是所述操作点的所述比特流中的NAL(网络抽象层)单元引用的一个或多个序列参数集中指示的一个或多个图片高度值相等。
13.根据权利要求12所述的方法,其中所述格式规则进一步指定:所述第四元素的值等于所述一个或多个图片高度值。
14.根据权利要求1所述的方法,其中所述格式规则进一步指定:响应于所述操作点包含多于一个的层,所述语法约束是所述第四元素的值被设置为等于在视频参数集中指示并应用于由输出层集索引标识的输出层集的图片高度值。
15.根据权利要求1-14中任一权利要求所述的方法,其中所述转换包括根据所述格式规则生成可视媒体文件并将所述一个或多个比特流存储到所述可视媒体文件。
16.根据权利要求1-14中任一权利要求所述的方法,其中所述转换包括根据所述格式规则解析所述可视媒体文件以重建所述一个或多个比特流。
17.一种视频处理装置,包括处理器,其被配置为实现权利要求1到16中的任何一个所述的方法。
18.一种存储程序代码的计算机可读介质,当执行所述程序代码时,使处理器实现权利要求1至16的任何一个所述的方法。
CN202111090741.XA 2020-09-17 2021-09-17 视频操作点记录语法和语义 Active CN114205626B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202063079910P 2020-09-17 2020-09-17
US63/079,910 2020-09-17

Publications (2)

Publication Number Publication Date
CN114205626A CN114205626A (zh) 2022-03-18
CN114205626B true CN114205626B (zh) 2023-12-01

Family

ID=77801578

Family Applications (3)

Application Number Title Priority Date Filing Date
CN202111090741.XA Active CN114205626B (zh) 2020-09-17 2021-09-17 视频操作点记录语法和语义
CN202111090735.4A Pending CN114205603A (zh) 2020-09-17 2021-09-17 编解码的视频中的色度格式和比特深度指示
CN202111090734.XA Pending CN114205602A (zh) 2020-09-17 2021-09-17 解码器配置记录中的图片尺寸指示

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN202111090735.4A Pending CN114205603A (zh) 2020-09-17 2021-09-17 编解码的视频中的色度格式和比特深度指示
CN202111090734.XA Pending CN114205602A (zh) 2020-09-17 2021-09-17 解码器配置记录中的图片尺寸指示

Country Status (5)

Country Link
US (3) US11729427B2 (zh)
EP (3) EP3972271A1 (zh)
JP (3) JP7270012B2 (zh)
KR (3) KR20220037380A (zh)
CN (3) CN114205626B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114902672A (zh) * 2019-12-26 2022-08-12 字节跳动有限公司 视频编解码中的档次-层-级别参数集
KR20220037380A (ko) * 2020-09-17 2022-03-24 레몬 인크. 코딩된 비디오에서의 크로마 포맷 및 비트 깊이 표시

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015026136A1 (en) * 2013-08-20 2015-02-26 Lg Electronics Inc. Apparatus for transmitting media data via streaming service, apparatus for receiving media data via streaming service, method for transmitting media data via streaming service and method for receiving media data via streaming service
CN104813671A (zh) * 2012-09-24 2015-07-29 高通股份有限公司 视频译码中的位流性质
CN105027567A (zh) * 2013-01-07 2015-11-04 诺基亚技术有限公司 用于视频编码和解码的方法和装置
CN107750461A (zh) * 2015-06-16 2018-03-02 佳能株式会社 从能够动态地设置操作点描述符的封装位流中获得媒体数据和元数据的方法、装置和计算机程序
WO2020058567A1 (en) * 2018-09-18 2020-03-26 Nokia Technologies Oy Method and apparatus for non-binary profile constraint signaling for video coding

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10958915B2 (en) 2012-01-30 2021-03-23 Qualcomm Incorporated Method of coding video and storing video content
US9532046B2 (en) * 2012-04-16 2016-12-27 Qualcomm Incorporated Reference picture set prediction for video coding
US9479776B2 (en) * 2012-07-02 2016-10-25 Qualcomm Incorporated Signaling of long-term reference pictures for video coding
US10021394B2 (en) * 2012-09-24 2018-07-10 Qualcomm Incorporated Hypothetical reference decoder parameters in video coding
US9584792B2 (en) 2013-01-04 2017-02-28 Qualcomm Incorporated Indication of current view dependency on reference view in multiview coding file format
US20140307803A1 (en) 2013-04-08 2014-10-16 Qualcomm Incorporated Non-entropy encoded layer dependency information
US9794579B2 (en) 2013-07-15 2017-10-17 Qualcomm Incorporated Decoded picture buffer operations for video coding
US9912943B2 (en) 2013-07-15 2018-03-06 Qualcomm Incorporated Signaling of bit rate information and picture rate information in VPS
KR20150010658A (ko) * 2013-07-18 2015-01-28 삼성전자주식회사 비디오 포멧 파라미터 전달을 사용하는 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치
JP6439981B2 (ja) 2013-07-22 2018-12-19 ソニー株式会社 情報処理装置および方法
KR102127603B1 (ko) 2013-10-07 2020-06-26 브이아이디 스케일, 인크. 다계층 비디오 코딩을 위해 조합된 확장성 프로세싱
US9648348B2 (en) 2013-10-23 2017-05-09 Qualcomm Incorporated Multi-layer video file format designs
US9860540B2 (en) 2014-01-03 2018-01-02 Qualcomm Incorporated Inference of nooutputofpriorpicsflag in video coding
AU2014385774B2 (en) 2014-03-04 2019-01-17 Microsoft Technology Licensing, Llc Adaptive switching of color spaces, color sampling rates and/or bit depths
US10182241B2 (en) 2014-03-04 2019-01-15 Microsoft Technology Licensing, Llc Encoding strategies for adaptive switching of color spaces, color sampling rates and/or bit depths
US10271052B2 (en) 2014-03-14 2019-04-23 Qualcomm Incorporated Universal color-space inverse transform coding
WO2015139203A1 (en) 2014-03-18 2015-09-24 Mediatek Singapore Pte. Ltd. Dlt signaling in 3d video coding
WO2015184605A1 (en) 2014-06-04 2015-12-10 Mediatek Singapore Pte. Ltd. Depth coding compatible with arbitrary bit-depth
US9769492B2 (en) * 2014-06-06 2017-09-19 Qualcomm Incorporated Conformance parameters for bitstream partitions
US10063867B2 (en) 2014-06-18 2018-08-28 Qualcomm Incorporated Signaling HRD parameters for bitstream partitions
US20150373350A1 (en) * 2014-06-20 2015-12-24 Qualcomm Incorporated Temporal motion vector prediction (tmvp) indication in multi-layer codecs
EP3148200B1 (en) 2014-06-30 2020-06-17 Sony Corporation Information processing device and method selecting content files based on encoding parallelism type
US10469847B2 (en) 2014-09-12 2019-11-05 Vid Scale, Inc. Inter-component de-correlation for video coding
TW201626798A (zh) 2014-10-06 2016-07-16 Vid Scale Inc 用於螢幕內容編碼之改良調色編碼
US9838662B2 (en) 2014-10-10 2017-12-05 Qualcomm Incorporated Harmonization of cross-component prediction and adaptive color transform in video coding
US10148969B2 (en) 2015-02-11 2018-12-04 Qualcomm Incorporated Of sample entry and operation point signalling in a layered video file format
US10271064B2 (en) * 2015-06-11 2019-04-23 Qualcomm Incorporated Sub-prediction unit motion vector prediction using spatial and/or temporal motion information
US20160373771A1 (en) 2015-06-18 2016-12-22 Qualcomm Incorporated Design of tracks and operation point signaling in layered hevc file format
US10034010B2 (en) 2015-10-14 2018-07-24 Qualcomm Incorporated Alignment of operation point sample group in multi-layer bitstreams file format
US11223852B2 (en) * 2016-03-21 2022-01-11 Qualcomm Incorporated Coding video data using a two-level multi-type-tree framework
US10616582B2 (en) 2016-09-30 2020-04-07 Qualcomm Incorporated Memory and bandwidth reduction of stored data in image/video coding
CN110506421B (zh) 2017-03-20 2023-11-07 夏普株式会社 用于以媒体应用程序格式发信号通知可伸缩视频的系统和方法
US20190320172A1 (en) * 2018-04-12 2019-10-17 Qualcomm Incorporated Hardware-friendly sample adaptive offset (sao) and adaptive loop filter (alf) for video coding
GB2590435B (en) * 2019-12-17 2023-12-20 Canon Kk Method, device, and computer program for improving encapsulation of media content
WO2021188527A1 (en) * 2020-03-17 2021-09-23 Bytedance Inc. Using video parameter set in video coding
WO2021198491A1 (en) * 2020-04-02 2021-10-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. File format schemes allowing efficient roi, stream access and parameter set handling
KR20220037380A (ko) * 2020-09-17 2022-03-24 레몬 인크. 코딩된 비디오에서의 크로마 포맷 및 비트 깊이 표시

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104813671A (zh) * 2012-09-24 2015-07-29 高通股份有限公司 视频译码中的位流性质
CN105027567A (zh) * 2013-01-07 2015-11-04 诺基亚技术有限公司 用于视频编码和解码的方法和装置
WO2015026136A1 (en) * 2013-08-20 2015-02-26 Lg Electronics Inc. Apparatus for transmitting media data via streaming service, apparatus for receiving media data via streaming service, method for transmitting media data via streaming service and method for receiving media data via streaming service
CN107750461A (zh) * 2015-06-16 2018-03-02 佳能株式会社 从能够动态地设置操作点描述符的封装位流中获得媒体数据和元数据的方法、装置和计算机程序
WO2020058567A1 (en) * 2018-09-18 2020-03-26 Nokia Technologies Oy Method and apparatus for non-binary profile constraint signaling for video coding

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
H.264/AVC视频编码新技术研究;王春彦;《 无线通信技术》;全文 *
ITU-T.SERIES H: AUDIOVISUAL AND MULTIMEDIA SYSTEMS Infrastructure of audiovisual services – Coding of moving video.2020,全文. *
一种无线视频业务的应用层跨层优化技术研究;王海丽 等;《电信网技术》;全文 *

Also Published As

Publication number Publication date
US20220086499A1 (en) 2022-03-17
KR20220037380A (ko) 2022-03-24
KR20220037382A (ko) 2022-03-24
JP7270012B2 (ja) 2023-05-09
EP3972271A1 (en) 2022-03-23
CN114205626A (zh) 2022-03-18
US11877011B2 (en) 2024-01-16
JP7202429B2 (ja) 2023-01-11
JP2022050360A (ja) 2022-03-30
EP3972272A1 (en) 2022-03-23
EP3972270A1 (en) 2022-03-23
US11831921B2 (en) 2023-11-28
JP2022050361A (ja) 2022-03-30
US20220086498A1 (en) 2022-03-17
JP7203172B2 (ja) 2023-01-12
US11729427B2 (en) 2023-08-15
CN114205602A (zh) 2022-03-18
JP2022050359A (ja) 2022-03-30
KR20220037379A (ko) 2022-03-24
US20220103865A1 (en) 2022-03-31
CN114205603A (zh) 2022-03-18

Similar Documents

Publication Publication Date Title
US11683529B2 (en) Operational point sample group in coded video
KR20220037396A (ko) 코딩된 비디오에서의 서브픽처 엔티티 그룹 시그널링
CN114205610A (zh) 视频编解码中的解码能力信息存储
CN114205626B (zh) 视频操作点记录语法和语义
WO2022068839A1 (en) Signalling of auxiliary information
KR20220142957A (ko) 서브픽처 엔티티 그룹에 대한 레벨 표시자
US20230262239A1 (en) Decoder configuration information in vvc video coding

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
GR01 Patent grant
GR01 Patent grant