CN114930857A - 用于视频编码的视频数据的存储和传递 - Google Patents

用于视频编码的视频数据的存储和传递 Download PDF

Info

Publication number
CN114930857A
CN114930857A CN202180008003.8A CN202180008003A CN114930857A CN 114930857 A CN114930857 A CN 114930857A CN 202180008003 A CN202180008003 A CN 202180008003A CN 114930857 A CN114930857 A CN 114930857A
Authority
CN
China
Prior art keywords
bitstream
video
configuration record
syntax element
decode
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
CN202180008003.8A
Other languages
English (en)
Inventor
T.斯托克哈默
I.博亚齐齐
D.鲁萨诺夫斯基
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN114930857A publication Critical patent/CN114930857A/zh
Pending legal-status Critical Current

Links

Images

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
    • 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
    • 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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive 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/96Tree coding, e.g. quad-tree coding
    • 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
    • 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
    • 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/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • H04N21/8193Monomedia components thereof involving executable data, e.g. software dedicated tools, e.g. video decoder software or IPMP tool
    • 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/84Generation or processing of descriptive data, e.g. content descriptors
    • 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
    • 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
    • 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/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • 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

Landscapes

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

Abstract

一种用于处理视频数据的设备可以被配置为接收用于对视频数据的比特流进行解码的配置记录,其中用于比特流的配置记录包括工具集指示语法元素,该工具集指示语法元素包括信息,该信息从一组视频解码工具中识别对与该配置记录相关联的比特流进行解码所需要的工具;基于该工具集指示语法元素,确定是否取回与配置记录关联的比特流;以及基于要取回与配置记录相关联的比特流的确定,取回该比特流并将该比特流输出至视频解码器进行解码。

Description

用于视频编码的视频数据的存储和传递
本申请要求于2021年1月7日提交的美国申请号17/143,611的优先权,该美国申请号17/143,611要求于2020年1月8日提交的美国临时专利申请号62/958,561的权益,其全部内容以引用方式并入本文。
技术领域
本公开涉及视频数据的存储和传递。
背景技术
数字视频功能可以集成到各种设备中,包括数字电视、数字直接广播系统、无线广播系统、个人数字助理(PDA)、便携式计算机或台式计算机、平板计算机、电子书阅读器、数字摄像机、数字记录设备、数字媒体播放器、视频游戏设备、视频游戏机、蜂窝或卫星无线电电话、所谓的“智能电话”、视频电话会议设备、视频流传输设备等。数字视频设备实现视频编码技术,诸如在由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4、第10部分、高级视频编码(AVC)、ITU-T H.265/高效视频编码(HEVC)所定义的标准以及此类标准的扩展中所描述的那些。通过实现这样的视频编码技术,视频设备可以更有效地发送、接收、编码、解码和/或存储数字视频信息。
视频编码技术包括空间(画面内)预测和/或时间(画面间)预测,以减少或消除视频序列中固有的冗余。对于基于块的视频编码,可以将视频切片(例如,视频画面或视频画面的一部分)分割成视频块,其也可以被称为编码树单元(CTU)、编码单元(CU)和/或编码节点。画面的帧内编码(I)切片中的视频块是针对同一画面中的相邻块中的参考样本使用空间预测来进行编码的。画面的帧间编码(P或B)切片中的视频块可以针对同一画面中的相邻块中的参考样本使用空间预测,或者针对其它参考画面中的参考样本使用时间预测。画面可以被称为帧,并且参考画面可以被称为参考帧。
发明内容
通常,本公开描述用于基于文件格式的符合视频编码标准的比特流的存储和传递的技术。本公开还描述了用于视频编码标准的媒体格式配置文件的示例、以及使用流传输技术的传递。作为一个示例,视频编码标准是基本视频编码(EVC)标准,该文件格式是国际标准化组织的基本媒体文件格式。国际标准化组织的基本媒体文件格式被称为ISOBMFF。媒体格式配置文件的一个示例是通用媒体应用格式(CMAF)配置文件,流传输技术的一个示例是HTTP上的动态自适应流传输(DASH)。本公开还可以描述与多用途互联网网邮件扩展(MIME)类型一起使用的加密要求和编解码器参数。虽然是针对EVC、ISOBMFF、CMAF和DASH进行描述,但是示例技术不应被认为是受限制的。
根据本公开的一个示例,一种用于处理视频流或视频文件的方法包括接收用于对视频数据的比特流进行解码的配置记录,其中用于比特流的配置记录包括工具集指示语法元素,该工具集指示语法元素包括信息,该信息从一组视频解码工具中识别对该配置记录相关联的比特流进行解码所需要的工具;基于该工具集指示语法元素,确定是否取回与配置记录关联的比特流;以及基于取回与配置记录相关联的比特流的确定,取回该比特流并将该比特流输出至视频解码器进行解码。
根据本公开的另一个示例,一种用于处理视频数据的设备包括存储器,其被配置为存储视频流,以及一个或多个处理器,其被实现在电路中,耦合至存储器,并且可以被配置为接收用于对视频数据的比特流进行解码的配置记录,其中用于比特流的配置记录包括工具集指示语法元素,该工具集指示语法元素包括信息,该信息从一组视频解码工具中识别对该配置记录相关联的比特流进行解码所需要的工具;基于该工具集指示语法元素,确定是否取回与配置记录关联的比特流;以及基于取回与配置记录相关联的比特流的确定,取回该比特流并将该比特流输出至视频解码器进行解码。
根据本公开的另一个示例,一种存储有指令的计算机可读存储介质,所述指令由一个或多个处理器执行时,促使该一个或多个处理器接收用于对视频数据的比特流进行解码的配置记录,其中用于比特流的配置记录包括工具集指示语法元素,该工具集指示语法元素包括信息,该信息从一组视频解码工具中识别对该配置记录相关联的比特流进行解码所需要的工具;基于该工具集指示语法元素,确定是否取回与配置记录关联的比特流;以及基于取回与配置记录相关联的比特流的确定,取回该比特流并将该比特流输出至视频解码器进行解码。
根据本公开的另一个示例,一种用于处理视频流或视频文件的装置包括:用于接收用于对视频数据的比特流进行解码的配置记录的部件,其中用于比特流的配置记录包括工具集指示语法元素,该工具集指示语法元素包括信息,该信息从一组视频解码工具中识别对该配置记录相关联的比特流进行解码所需要的工具;用于基于该工具集指示语法元素、确定是否取回与配置记录关联的比特流的部件;用于基于取回与配置记录相关联的比特流的确定、取回该比特流的部件;以及用于将该比特流输出至视频解码器进行解码的部件。
在附图和以下描述中阐述一个或多个示例的细节。根据说明书、附图和权利要求书,其它特征、目的和优点将显而易见。
附图说明
图1是图示可以执行本公开的技术的示例视频编码和解码系统的框图。
图2A和2B是图示示例四叉树加二叉树(QTBT)结构和对应的编码树单元(CTU)的概念图。
图3是图示可以执行本公开的技术的示例视频编码器的框图。
图4是图示可以执行本公开的技术的示例视频解码器的框图。
图5是图示根据本公开的一种或多种技术的文件的示例结构的概念图。
图6是示出示例多媒体内容的元素的概念图。
图7是图示示例视频文件的元素的框图。
图8是图示根据本公开的技术的用于处理视频数据的示例方法的流程图。
具体实施方式
由ISO/IEC JTC 1/SC 29/WG 11(MPEG)开发的必要视频编码(EVC)标准提供了一种高效且低复杂度的视频编码解决方案。EVC基本流被构造为网络抽象层(NAL)单元。NAL单元在ISO基本媒体文件格式(ISOBMFF)中的存储遵循与其它NAL结构化的视频格式(例如,高效视频编码(HEVC)和/或通用视频编码(VVC)标准)类似的原则。
EVC基本流的存储可以分为两部分:在基本流中全局使用的静态信息和每个样本可能有所不同的动态信息。序列参数集(SPS)和画面参数集(PPS)可能是很少更改的信息的一部分,并且可以被认为是静态的。可以使用一组标志来指示是否期望参数集在流中改变。在这种情况下,将定义样本分组,以指示参数集确实发生变化的样本。
自适应参数集(APS)可以是动态信息,其可能会在每个样本的基础上发生更改。APS被用于携带自适应环路滤波器(ALF)信息。通过标志来发信号通知ALF的存在,并且携带APS信息的样本可能属于同一样本分组。
框可以是指ISOBMFF中的基本语法结构,包括四字符编码框类型、框的字节计数、和有效载荷。ISOBMFF文件包括一系列框,并且框可以包含其它框。影片框(“moov”)包含文件中存在的连续媒体流的元数据,每一个元数据在文件中表示为轨道。
轨道的元数据可以被封闭在轨道框(“trak”)中,而轨道的媒体内容可以或者被封闭在媒体数据框(“mdat”)中或者直接在单独的文件中。轨道的媒体内容包括一系列样本,诸如音频或视频访问单元。访问单元通常是包括针对公共时间实例的编码的媒体(例如,画面)数据的数据单元。样本是由特定规范(诸如本文描述的视频编码规范)定义的访问单元。样本条目可以提供对应样本的描述。
ISOBMFF指定以下类型的轨道:媒体轨道,其包含基本媒体流;提示轨道,其或者包括媒体传输指令或者表示接收的分组流;以及定时元数据轨道,其包括时间同步的元数据。
本公开描述用于视频数据的比特流的配置记录,该配置记录包括工具集指示语法元素,该工具集指示语法元素包括信息,该信息识别对与配置记录相关联的比特流进行解码所需要的工具。本公开还描述了用于在例如HTTP传输中包括多用途互联网邮件扩展(MIME)类型参数的技术,该MIME类型参数包括键值对。键可以指示MIME类型识别视频解码工具,并且该值可以识别对比特流进行解码所需要的工具。典型地,如果在用于媒体流的至少一个参数集中启用了工具,则可以认为该工具是需要的。通过使用这样的工具集指示语法元素和MIME类型,本公开的技术可以有利地使视频处理设备能够确定视频处理设备的视频解码器是否能够对文件进行解码而不必解析文件的大部分。
图1是图示可以执行本公开的技术的示例视频编码和解码系统100的框图。本公开的技术通常针对对视频数据进行编译码(编码和/或解码)。通常,视频数据包括用于处理视频的任何数据。因此,视频数据可以包括原始的、未经编码的视频、经编码的视频、经解码的(例如,重构的)视频、和视频元数据(诸如信令数据)。
如图1所示,系统100包括源设备102,在此示例中,源设备102提供要由目的地设备116解码和显示的经编码视频数据。具体来讲,源设备102经由计算机可读介质110将视频数据提供给目的地设备116。源设备102和目的地设备116可以包括任何广泛范围的设备,包括桌面型计算机、笔记本(即,膝上型)计算机、平板计算机、机顶盒、手机(诸如智能电话)、电视机、相机、显示设备、数字媒体播放器、视频游戏机、视频流传输设备等。在一些情况下,源设备102和目的地设备116可以被配备用于无线通信,因此可以被称为无线通信设备。
在图1的示例中,源设备102包括视频源104、存储器106、视频编码器200和输出接口108。目的地设备116包括输入接口122、视频解码器300、存储器120和显示设备118。根据本公开,源设备102和目的设备116可以被配置为应用用于基于文件格式(例如,基于ISO基本媒体文件格式(ISOBMFF)的必要视频编码(EVC)基本比特流)的符合视频编码标准的比特流的存储和传递的技术。本公开还描述了媒体配置文件(例如,通用媒体应用格式(用于EVC的CMAF媒体配置文件)),描述了使用通过HTTP的动态自适应流传输(DASH)的传递,描述了加密要求,并且描述了要与多用途互联网邮件扩展(MIME)类型一起使用的编解码器参数,该MIME类型可以由视频编码器200和视频解码器300利用。因此,源设备102表示被配置为执行视频编码和传输的客户机设备的示例,而目的地设备116表示被配置为接收和解码已编码视频的目的地设备的示例。在其它示例中,源设备和目的地设备可以包括其它组件或排列。例如,源设备102可以从外部视频源(诸如外部相机)接收视频数据。同样地,目的地设备116可以与外部显示设备对接,而不是包括集成的显示设备。
如图1中示出的系统100仅是一个示例。通常,任何数字视频编码和/或解码设备都可以执行用于基于文件格式(例如,基于ISOBMFF的EVC基本比特流)的符合视频编码标准的比特流的存储和传递的技术。本公开还描述了媒体配置文件(例如,用于EVC的CMAF媒体配置文件),描述了使用DASH的传递,描述了加密要求,并且描述了要与视频编码器200和视频解码器300可以利用的MIME类型一起使用的编解码器参数。源设备102和目的地设备116仅是这样的编译码设备的示例,其中,源设备102生成用于向目的地设备116传输的经编码视频数据。本公开将“编译码”设备称为执行数据的编译码(编码和/或解码)的设备。因此,视频编码器200和视频解码器300分别表示编译码设备(特别是视频编码器和视频解码器)的示例。在一些示例中,源设备102和目的地设备116可以以大体上对称的方式操作,使得源设备102和目的地设备116中的每一个包括视频编码和解码组件。因此,系统100可以支持源设备102和目的地设备116之间的单向或双向视频传输,例如,用于视频流传输、视频重放、视频广播、或视频电话。
通常,视频源104表示视频数据的源(即,原始的、未经编码的视频数据),并将视频数据的一系列连续的画面(也被称为“帧”)提供给视频编码器200,视频编码器200对画面的数据进行编码。视频源104的源设备102可以包括视频捕获设备(诸如视频相机)、包含有先前捕获的原始视频的视频存档、和/或用于从视频内容提供者接收视频的视频馈送接口。作为另一替代,视频源104可以生成基于计算机图形的数据作为源视频,或者直播视频、存档的视频和计算机生成的视频的组合。在每种情况下,视频编码器200对捕获的、预先捕获的或计算机生成的视频数据进行编码。视频编码器200可以将画面从接收到的顺序(有时称为“显示顺序”)重新排列为用于编码的编码顺序。视频编码器200可以生成包括经编码视频数据的比特流。然后,源设备102可以经由输出接口108将经编码视频数据输出到计算机可读介质110上,以供例如目的地设备116的输入接口122进行接收和/或取回。
源设备102的存储器106和目的地设备116的存储器120表示通用存储器。在一些示例中,存储器106、120可以存储原始视频数据,例如,来自视频源104的原始视频和来自视频解码器300的原始的经解码视频数据。另外或替代地,存储器106、120可以存储,例如分别可由视频编码器200和视频解码器300执行的软件指令。尽管在此示例中存储器106和存储器120与视频编码器200和视频解码器300分开示出,但是应当理解,视频编码器200和视频解码器300也可以包括内部存储器,以实现功能上相似或等效的目的。此外,存储器106、120可以存储例如从视频编码器200输出并输入到视频解码器300的经编码视频数据。在一些示例中,部分存储器106、120可以被分配作为一个或多个视频缓冲器,例如,以存储原始的、经解码的和/或经编码的视频数据。
计算机可读介质110可以表示能够将经编码视频数据从源设备102传输到目的地设备116的任何类型的介质或设备。在一个示例中,计算机可读介质110表示用于使源设备102能够实时地、例如经由射频网络或基于计算机的网络将经编码视频数据直接发送到目的地设备116的通信介质。根据诸如无线通信协议之类的通信标准,输出接口108可以调制包括经编码视频数据的传输信号,并且输入接口122可以解调所接收的传输信号。通信介质可以包括任何无线或有线通信介质,诸如射频(RF)频谱或一条或多条物理传输线。通信介质可以形成诸如局域网、广域网或全球网络(诸如因特网)之类的基于分组的网络的一部分。通信介质可以包括路由器、交换机、基站或任何其它有助于从源设备102到目的地设备116的通信的装备。
在一些示例中,源设备102可以将经编码数据从输出接口108输出到存储设备112。类似地,目的地设备116可以经由输入接口122从存储设备112访问经编码数据。存储设备112可以包括多种分布式或本地访问的数据存储介质中的任何一种,诸如硬盘驱动器、蓝光光盘、DVD、CD-ROM、闪存、易失性或非易失性存储器、或任何其它适用的用于存储经编码视频数据的数字存储介质。
在一些示例中,源设备102可以将经编码视频数据输出到文件服务器114或者另一中间存储设备,该中间存储设备可以存储由源设备102生成的经编码视频。目的地设备116可以经由流传输或下载从文件服务器114访问存储的视频数据。文件服务器114可以是能够存储经编码视频数据并将该经编码视频数据发送到目的地设备116的任何类型的服务器设备。文件服务器114可以表示网络服务器(例如,用于网站)、文件传输协议(FTP)服务器、内容递送网络设备、或网络附加存储(NAS)设备。目的地设备116可以通过包括互联网连接的任何标准数据连接从文件服务器114访问经编码视频数据。这可以包括适用于访问文件服务器114上存储的经编码视频数据的无线信道(例如Wi-Fi连接)、有线连接(例如数字订户线(DSL)、电缆调制解调器等)或二者的组合。文件服务器114和输入接口122可以被配置为根据流传输协议、下载传输协议或其组合来操作。
输出接口108和输入接口122可以表示无线发射机/接收机、调制解调器、有线网络组件(例如,以太网卡)、根据任何各种IEEE 802.11标准操作的无线通信组件、或其它物理组件。在输出接口108和输入接口122包括无线组件的示例中,输出接口108和输入接口122可以被配置为根据蜂窝通信标准(诸如4G、4G-LTE(长期演进)、高级LTA、5G等)来传递诸如经编码视频数据之类的数据。在输出接口108包括无线发射机的一些示例中,输出接口108和输入接口122可以被配置为根据其它无线标准(诸如IEEE 802.11规范、IEEE 802.15规范(例如ZigBeeTM)、BluetoothTM标准等)传递诸如经编码视频数据之类的数据。在一些示例中,源设备102和/或目的地设备116可以包括各自的片上系统(SoC)设备。例如,源设备102可以包括SoC设备以执行归因于视频编码器200和/或输出接口108的功能,并且目的地设备116可以包括SoC设备以执行归因于视频解码器300和/或输入接口122的功能。
本公开的技术可以应用于支持各种多媒体应用中的任何一种的视频编码,诸如空中电视广播、有线电视传输、卫星电视传输、互联网流传输视频传输(诸如通过HTTP动态的自适应流传输(DASH))、被编码到数据存储介质上的数字视频、对存储在数据存储介质上的数字视频的解码或其它应用。
目的地设备116的输入接口122从计算机可读介质110(例如,通信介质、存储设备112、文件服务器114等)接收经编码视频比特流。该经编码视频比特流可以包括由视频编码器200定义的,也由视频解码器300使用的信令信息,诸如具有描述视频块或其它经编码单元(例如,切片、画面、画面分组、序列等)的特性和/或处理的语法元素。显示设备118向用户显示经解码视频数据的经解码画面。显示设备118可以表示各种显示设备中的任何一种,诸如阴极射线管(CRT)、液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一种类型的显示设备。
尽管未在图1中示出,但是在一些示例中,视频编码器200和视频解码器300可以分别与音频编码器和/或音频解码器集成,并且可以包括适当的MUX-DEMUX单元或其它硬件和/或软件,以处置包括通用数据流中的音频和视频两者的复用流。如果适用,MUX-DEMUX单元可以符合ITU H.223多路复用器协议或诸如用户数据报协议(UDP)之类的其它协议。
视频编码器200和视频解码器300的每一个可以实现为各种适用的编码器和/或解码器电路中的任何一种,诸如一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、分立逻辑、软件、硬件、固件或其任意组合。当部分地在软件中实现该技术时,设备可以将软件的指令存储在适用的非暂时性计算机可读介质中,并使用一个或多个处理器在硬件中执行指令以执行本公开的技术。视频编码器200和视频解码器300的每一个可以被包括在一个或多个编码器或解码器中,其任一者可以集成为相应设备中的组合式编码器/解码器(CODEC)的一部分。包括视频编码器200和/或视频解码器300的设备可以包括集成电路、微处理器和/或无线通信设备,诸如蜂窝电话。
视频编码器200和视频解码器300可以根据其它专有或工业标准(诸如联合探索测试模型(JEM)或ITU-T H.266,也称为多功能视频编码(VVC))来操作。在ITU-T SG 16WP3联合视频专家组(JVET)和ISO/IEC JTC 1/SC29/WG 11,第16次会议:日内瓦,CH,2019年10月1日至11日,JVET-P2001-v14,Bross等人的“多功能视频编码(草案7)”(以下称为“VVC草案7”)中,描述了VVC标准的近期草案。视频编码器200和视频解码器300可以根据由ISO/IECJTC 1/SC 29/WG 11(MPEG)开发的EVC标准来操作。然而,本公开的技术不限于任何特定的编码标准。
通常,视频编码器200和视频解码器300可以执行画面的基于块的编码。术语“块”通常是指包括要处理的(例如,经编码、经解码或以其它方式在编码和/或解码处理中使用)数据的结构。例如,块可以包括亮度和/或色度数据的样本的二维矩阵。通常,视频编码器200和视频解码器300可以对以YUV(例如,Y、Cb、Cr)格式表示的视频数据进行编译码。也就是说,不是对画面的样本的红、绿和蓝(RGB)数据进行编译码,而是视频编码器200和视频解码器300可以对亮度和色度分量进行编译码,其中色度分量可以包括红色和蓝色色度分量二者。在一些示例中,视频编码器200在编码之前将接收到的RGB格式的数据转换成YUV表示,并且视频解码器300将YUV表示转换成RGB格式。作为替代,预处理和后处理单元(未示出)可以执行这些转换。
本公开通常可以将画面的编译码(例如,编码和解码)指代为包括对画面的数据进行编码或解码的处理。类似地,本公开可以将对画面的块的编译码指代为包括对块的数据进行编码或解码的处理,例如,预测和/或残差编译码。经编码视频比特流通常包括表示编译码决策(例如,编译码模式)以及将画面分割成块的语法元素的一系列值。因此,对画面或块进行编译码的指代通常应理解为对形成画面或块的语法元素的值进行编译码。
各种视频编码标准定义了各种块,有时被称为编码单元(CU)、预测单元(PU)和变换单元(TU)。视频编码器(例如,视频编码器200)根据四叉树结构将编码树单元(CTU)分割为CU。也就是说,视频编码器将CTU和CU分割为四个相等的非重叠正方形,并且四叉树的每个节点具有零个或四个子节点。没有子节点的节点可以被称为“叶节点”,并且这种叶节点的CU可以包括一个或多个PU和/或一个或多个TU。该视频编码器可以进一步分割PU和TU。例如,残差四叉树(RQT)表示TU的分割,并且PU表示帧间预测数据,而TU表示残差数据。帧内预测的CU包括帧内预测信息,诸如帧内模式指示。
作为另一示例,视频编码器200和视频解码器300可以被配置为根据JEM、VVC、EVC或任何其它这种标准进行操作。视频编码器(诸如视频编码器200)将画面分割为多个编码树单元(CTU)。视频编码器200可以根据树结构(诸如四叉树加二叉树(QTBT)结构或多类型树(MTT)结构)分割CTU。QTBT结构消除了多个分割类型的概念,诸如CU、PU和TU之间的分离。QTBT结构包括两个级别:根据四叉树分割所分割的第一级别,以及根据二叉树分割所分割的第二级别。QTBT结构的根节点对应于CTU。二叉树的叶节点对应于编码单元(CU)。
在MTT分割结构中,可以使用四叉树(QT)分割、二叉树(BT)分割以及一种或多种类型的三叉树(TT)(也称为三元树(TT))分割来对块进行分割。三叉树或三元树分割是将块分为三个子块的分割方式。在一些示例中,三叉树或三元树分割将块划分为三个子块,而不通过中心来划分原始块。MTT中的分割类型(例如,QT、BT和TT)可以是对称的或不对称的。
在一些示例中,视频编码器200和视频解码器300可以使用单个QTBT或MTT结构来表示亮度和色度分量中的每一个,而在其它示例中,视频编码器200和视频解码器300可以使用两个或多个QTBT或MTT结构,诸如用于亮度分量的一个QTBT/MTT结构和用于两个色度分量的另一个QTBT/MTT结构(或者用于相应色度分量的两个QTBT/MTT结构)。
视频编码器200和视频解码器300可以被配置为使用四叉树分割、QTBT分割、MTT分割或其它分割结构。为了解释说明的目的,本公开的技术的描述是关于QTBT分割而呈现的。然而,应该理解的是,本公开的技术还可应用于被配置为使用四叉树分割或其它类型的分割的视频编码器。
可以在画面中以各种方式将块(例如,CTU或CU)分组。作为一个示例,砖块(brick)可以指画面中特定图块(tile)中的CTU行的矩形区域。图块可以是画面中的特定图块列和特定图块行中的CTU的矩形区域。图块列指的是具有等于画面高度的高度和由语法元素指定的宽度(例如,诸如在画面参数集中)的CTU的矩形区域。图块行指的是具有由语法元素指定的高度(例如,诸如在画面参数集中)和等于画面宽度的宽度的CTU的矩形区域。
在一些示例中,可以将图块分割为多个砖块,每个砖块可以包括该图块中的一个或多个CTU行。没有被分割为多个砖块的图块也可以称为砖块。但是,作为图块的真子集的砖块不能称为图块。
画面中的砖块也可以在切片中排列。切片可以是画面的整数数量的砖块,其可以被唯一地包含在单个网络抽象层(NAL)单元中。在一些示例中,切片包括若干个完整图块或仅包括一个图块的连续序列的完整砖块。
本公开可以互换地使用“N x N”和“N乘N”以在垂直和水平维度方面指代块(诸如CU或其它视频块)的样本维度,例如16x16样本或16乘16样本。通常,16x16的CU在垂直方向上将有16个样本(y=16),在水平方向上将有16个样本(x=16)。同样地,N x N的CU通常在垂直方向上具有N个样本,在水平方向上具有N个样本,其中N表示非负整数值。CU中的样本可以按行和列排列。此外,CU在水平方向上不必具有与垂直方向上相同数量的样本。例如,CU可以包含N x M个样本,其中M不一定等于N。
视频编码器200对表示预测和/或残差信息以及其它信息的CU的视频数据进行编码。预测信息指示将如何预测CU以便形成该CU的预测块。残差信息通常表示编码之前的CU和预测块的样本之间的逐个样本差值。
为了预测CU,视频编码器200通常可以通过帧间预测或帧内预测来形成CU的预测块。帧间预测通常是指从先前编码的画面的数据来预测CU,而帧内预测通常是指从同一画面的先前编码的数据来预测CU。为了执行帧间预测,视频编码器200可以使用一个或多个运动矢量来生成预测块。视频编码器200通常可以执行运动搜索,以识别例如在CU和参考块之间的差值方面与该CU紧密匹配的参考块。视频编码器200可以使用绝对差之和(SAD)、平方差之和(SSD)、平均绝对差(MAD)、均方差(MSD)或其它此类差值计算来计算差值度量,以确定参考块是否紧密匹配当前CU。在一些示例中,视频编码器200可以使用单向预测或双向预测来预测当前CU。
一些视频编码标准还提供了仿射运动补偿模式,该模式可以被视为帧间预测模式。在仿射运动补偿模式中,视频编码器200可以确定表示非平移运动(诸如放大或缩小、旋转、透视运动或其它不规则运动类型)的两个或更多个运动矢量。
为了执行帧内预测,视频编码器200可以选择帧内预测模式以生成预测块。例如,视频编码器200可以利用67种或者一些其它数量的帧内预测模式,包括各种方向模式以及平面模式和DC模式。通常,视频编码器200选择描述当前块(例如,CU的块)的相邻样本的帧内预测模式,从该相邻样本预测当前块的样本。假设视频编码器200以光栅扫描顺序(从左到右、从上到下)对CTU和CU进行编译码,这样的样本通常可以在与当前块相同的画面中位于当前块的上方、左上方或左侧。
视频编码器200对表示当前块的预测模式的数据进行编码。例如,针对帧间预测模式,视频编码器200可以对表示使用各种可用帧间预测模式中的哪一个的数据以及用于对应模式的运动信息进行编码。针对单向或双向帧间预测,例如,视频编码器200可以使用高级运动矢量预测(AMVP)或合并模式来对运动矢量进行编码。视频编码器200可以使用类似模式来对用于仿射运动补偿模式的运动矢量进行编码。
在诸如块的帧内预测或帧间预测之类的预测之后,视频编码器200可以计算该块的残差数据。残差数据(诸如残差块)表示该块和使用相对应的预测模式形成的该块的预测块之间的逐个样本差值。视频编码器200可以将一个或多个变换应用于残差块,以在变换域而非样本域中产生经变换的数据。例如,视频编码器200可以将离散余弦变换(DCT)、整数变换、子波变换或概念上类似的变换应用于残差视频数据。另外,视频编码器200可以在第一变换之后应用二次变换,诸如取决于模式的不可分二次变换(MDNSST)、取决于信号的变换、Karhunen-Loeve变换(KLT)等。视频编码器200在应用一个或多个变换之后产生变换系数。
如上所述,在进行任何变换以产生变换系数之后,视频编码器200可以执行变换系数的量化。量化通常是指对变换系数进行量化以可能地减少用于表示该变换系数的数据量的处理,这提供进一步压缩。通过执行量化处理,视频编码器200可以减少与一些或所有变换系数相关联的比特深度。例如,视频编码器200可以在量化期间将n位值向下舍入为m位值,其中n大于m。在一些示例中,为了执行量化,视频编码器200可以执行待量化的值的按位右移。
在量化之后,视频编码器200可以扫描变换系数,从而从包括经量化的变换系数的二维矩阵产生一维矢量。可以将扫描设计为将较高能量(因此较低频率)的变换系数放在矢量的前面,并将较低能量(因此较高频率)的变换系数放在矢量的后面。在一些示例中,视频编码器200可以利用预定义的扫描顺序来扫描经量化的变换系数以产生串行化矢量,然后对该矢量的经量化的变换系数进行熵编码。在其它示例中,视频编码器200可以执行自适应扫描。在扫描经量化的变换系数以形成该一维矢量之后,视频编码器200可以例如根据上下文自适应二进制算术编译码(CABAC)对该一维矢量进行熵编码。视频编码器200还可以对描述与编码的视频数据相关联的元数据的语法元素的值进行熵编码,以由视频解码器300在对视频数据进行解码时使用。
为了执行CABAC,视频编码器200可以在上下文模型中将上下文分配给要发送的符号。该上下文可以涉及,例如符号的相邻值是否为零值。概率确定可以基于分配给符号的上下文。
视频编码器200可以例如在画面头、块头、切片头中向视频解码器300进一步生成诸如基于块的语法数据、基于画面的语法数据和基于序列的语法数据之类的语法数据,或诸如序列参数集(SPS)、画面参数集(PPS)或视频参数集(VPS)之类的其它语法数据。视频解码器300可以类似地解码此类语法数据以确定如何解码相对应的视频数据。
以这种方式,视频编码器200可以生成包括经编码视频数据的比特流,例如,描述画面到块(例如,CU)的分割以及用于块的预测和/或残差信息的语法元素。最终,视频解码器300可以接收该比特流并对经编码视频数据进行解码。
通常,视频解码器300执行与由视频编码器200执行的处理互逆的处理,以对比特流的经编码视频数据进行解码。例如,视频解码器300可以以基本上类似于视频编码器200的CABAC编码处理但与其互逆的方式,使用CABAC对比特流的语法元素的值进行解码。语法元素可以定义画面到CTU的分割信息、以及根据相对应的分割结构(诸如QTBT结构)对每个CTU的分割,以定义CTU的CU。语法元素可以进一步定义视频数据的块(例如,CU)的预测和残差信息。
残差信息可以由例如经量化的变换系数表示。视频解码器300可以对块的量化的变换系数进行逆量化和逆变换,以再现该块的残差块。视频解码器300使用发信号通知的预测模式(帧内或帧间预测)和相关的预测信息(例如,用于帧间预测的运动信息)以形成该块的预测块。然后,视频解码器300可以将预测块和残差块组合起来(以逐个样本为基础),以再现原始块。视频解码器300可以执行附加处理,诸如执行解块处理以减少沿着块的边界的视觉伪像。
本公开通常可能涉及“发信号通知”某些信息,诸如语法元素。术语“发信号通知”通常是指用于对经编码视频数据进行解码的语法元素的值和/或其它数据的通信。也就是说,视频编码器200可以在比特流中发信号通知语法元素的值。通常,发信号通知是指在比特流中生成值。如上所述,源设备102可以基本上实时地或不实时地将比特流传输到目的地设备116,诸如在将语法元素存储到存储设备112以供稍后由目的地设备116取回时可能发生。
以下描述EVC的示例技术。在一些示例中,EVC技术可以类似于VVC和/或HEVC的那些技术(例如,诸如基于块的编译码技术)。
EVC样本包含访问单元,如ISO/IEC 23094-1条款3.1:信息技术–通用视频编译码–第1部分:必要视频编码中所定义的。在EVC中,可存在比特流符合EVC的规范顺序,并且可能存在某些限制。规范流格式是一种EVC基本流,除了ISO/IEC 14496-15:信息技术–视听对象的编译码–第15部分:高级视频编译码(AVC)文件格式,条款4.3.2中的一般条件外,它还满足以下条件:
a.访问单元定界符NAL单元:访问单元定界符NAL单元遵守的约束在ISO/IEC23094-1中定义。
b.SPS和PPS:要在画面中使用的SPS或PPS可以(并且在一些示例中必须)在包含该画面的样本之前或在该画面的样本中发送。至少具有等于0的id的SPS和PPS可以被存储在包含EVC基本流的轨道的样本条目中。
c.APS:要在切片中使用的APS可以(在一些示例中必须)在包含该切片的VCL NAL单元之前发送。APS可以存储在样本条目和/或样本中。
d.SEI消息:声明性质的SEI消息可以存储在样本条目中;没有关于从样本中移除此类SEI消息的规定。
e.填充数据。视频数据自然以文件格式表示为可变比特率,并且在需要时应填充以进行传输。
当以如ISO/IEC 23094-1附录C中所指定的恒定比特率(CBR)模式操作HRD时,填充数据NAL单元、起始码、SEI消息或填充数据SEI消息的删除或添加可以更改关于与假设参考解码器(HRD)一致的比特流特性。
以下是EVC解码器配置记录和描述。在一些示例中,可以根据EVC解码器配置来配置视频解码器300。作为描述EVC解码器配置描述的一部分,以下指定用于ISO/IEC 23094-1视频内容的解码器配置信息。
此记录包含版本字段。如果无法识别版本号,则文件格式解析器(例如,读取器)可能(例如,应该)不会尝试对此记录或其适用的流进行解码。
此记录的兼容扩展可能会对其进行扩展,并且可能不会更改配置版本代码。读取器可能会忽略超出该读取器被配置为要解析的数据的定义之外的、无法识别的数据。
profile_idc、level_idc、toolset_idc、chroma_format_idc、pic_width_in_luma_samples、pic_height_in_luma_samples、bit_depth_luma_minus8和bit_depth_chroma_minus8的值可能是(并且在一些示例中,应该)对于在解码流时被激活的所有参数集(称为“所有参数集”)有效。具体来说,以下限制可能适用:
a.配置文件指示profile_idc可以(例如,应该)指示与该配置记录相关联的流所符合的配置文件。如果用不同配置文件标记SPS,则可能需要检查流以确定整个流符合哪个配置文件(如果有)。如果不检查整个流,或者检查发现整个流不符合任何配置文件,则整个流可以(例如,应该)被拆分为具有单独配置记录的两个或更多个子流,在所述配置记录中能够满足这些规则。
b.级别指示level_idc可以(例如,应该)指示等于或大于此配置记录的所有参数集中指示的最高级别的能力级别。
c.pic_width_in_luma_samples和pic_height_in_luma_samples可以(例如,应该)包含此配置记录的所有参数集的最高值。
d.工具集指示toolset_idc可以(例如,应该)发信号通知对与此配置记录关联的流进行解码所需要的所有工具。该工具标记可以(例如,应该)遵守如ISO/IEC 23094-1的表A.6提供(下面再现)的一致性要求,并且可以(例如,应该)与SPS中发信号通知的toolset_idc字段相同。
e.所有参数集中的chroma_format_idc的值可以(例如,应该)是相同的。
f.所有参数集中的bit_depth_luma_minus8的值可以(例如,应该)是相同的。
g.所有参数集中的bit_depth_chroma_minus8的值可以(例如,应该)是相同的。
EVC解码器配置记录中提供了有关EVC视频基本流使用的色度格式和比特深度的明确指示。每个类型的这样的信息可以(例如,应该)在单个EVC配置记录中的所有参数集中(如果存在的话)是相同的。如果两个序列在任何类型的这样的信息中是不同的,则可以(例如,应该)使用两种不同的EVC样本条目。
存在携带初始化NAL单元的一组阵列。NAL单元类型可以被限制为仅指示SPS、PPS、APS和SEI NAL单元。可以定义在ISO/IEC 23094-1和此规范中保留的NAL单元类型,并且可以忽略具有无法识别的NAL单元类型的NAL单元。可以设计这种“容忍的”行为(例如,忽略无法识别的NAL单元类型),以便不会引发错误,这允许在将来的规范中对这些阵列进行向后兼容扩展的可能性。
如果存储在样本条目中,则长度字段可以在每个样本中使用以指示其包含的NAL单元以及参数集的长度。在一些示例中,该阵列是以SPS、PPS、APS、SEI为顺序。
ISO/IEC 23094-1的表A.6如下:
Figure BDA0003725562120000161
Figure BDA0003725562120000171
Figure BDA0003725562120000181
以下描述视频编码器200和视频解码器300使用的语法。
Figure BDA0003725562120000182
Figure BDA0003725562120000191
以下描述说明用于在以上语法中定义术语的语义。语法元素profile_idc、level_idc、toolset_idc、chroma_format_idc、toolset_idc、bit_depth_luma_minus8和bit_depth_chroma_minus8包含配置记录的所有参数集的PPS中的字段的匹配值。注释“(32)”指示语法元素toolset_idc为32位。这32位可以包括一位的标志,每个标志对应于特定的工具,或者在某些情况下,这32位中的多个位可以例如对应于工具的组合或从工具集中的工具选择。
当sps_in_stream字段的值为“0”时,语法元素pic_width_in_luma_samples和pic_height_in_luma_samples包含此配置记录的所有SPS中的字段的最大值。当sps_in_stream字段的值为“1”时,这些语法元素可以包含此配置记录的所有SPS和该流中的所有SPS中的字段的最大值。如果当sps_in_stream字段的值是“0”时、此记录中的所有参数集的SPS中的这些字段的最大值不是通过此字段指示,或者如果当sps_in_stream字段的值为“1”时、该流中的SPS中的这些字段的值比该记录中的字段的最大值具有更大的值,则可以(例如,应该)使用值“0”。
语法元素sps_in_stream指示该流可能包含附加SPS,这些附加SPS未包括在此配置记录的NAL单元阵列中。语法元素pps_in_stream指示该流可能包含附加PPS,这些附加PPS未包括在此配置记录的NAL单元阵列中。语法元素aps_in_stream指示该流可能包含附加APS,这些附加APS未包含在此配置记录的NAL单元阵列中。
语法元素numArrays指示所指示类型的NAL单元阵列的数量。语法元素NAL_unit_type指示后续阵列中NAL单元的类型(可以(例如,应该)是所有该类型)。NAL_unit_type采用ISO/IEC 23094-1中定义的值,并且可能被限制为采用指示SPS、PPS、APS或SEI NAL单元的值之一。
语法元素numNalus指示在配置记录中包括的针对此配置记录所应用到的流的指示类型的NAL单元的数量。语法元素nalUnitLength指示NAL单元的字节长度。语法元素nalUnit包含如ISO/IEC 23094-1中指定的SPS、PPS、APS或SEI NAL单元。
根据ISO基本媒体文件格式及其扩展的视频文件将数据存储在一系列对象中,其被称为“框”。下面描述了ISO基本媒体文件格式,包括EVC视频流定义以及示例条目名称和格式。
a.样本条目和框类型:‘evc1’,‘evcC’
b.容器:样本表框(‘stb1’)
c.强制:‘evc1’样本条目是强制的
d.数量:可能存在一个或多个样本条目
EVC可视样本条目可能(例如,应该)包含如下定义的EVC配置框。这包括EVCDecoderConfigurationRecord。
可选的BitRateBox可以出现在EVC视觉样本条目中,以发信号通知EVC视频流的比特率信息。
在ISO基本媒体文件格式规范允许的情况下,可以使用多个样本条目来指示使用不同配置或参数集的视频部分。
当样本条目名称为‘evc1’时,这一样本条目适用的流可以(例如,应该)是在EVCConfigurationBox中给出的配置(包括配置文件、级别和工具集)下运行的EVC解码器(例如,视频解码器300)所看到的兼容EVC流。
‘evc1’样本条目允许参数集同时存储在样本条目中和流中。sps_in_stream、pps_in_stream和aps_in_stream在设置为0时,指示相对应类型的NAL单元的阵列完整。
以下是针对文件格式的配置框的语法示例集。
Figure BDA0003725562120000201
下面是如上所述的语法的示例语义集合。
基类VisualSampleEntry中的Compressorname指示被推荐的与值“\012EVC编译码”一起使用的压缩器的名称(\012是10,以字节为单位的串长度)。EVCDecoderConfigurationRecord在第5.3.3章节中定义(例如,诸如可能但不限于ISO/IEC23904-1)。
下面描述参数集。作为概述,可以(例如,应该)在样本条目中携带至少具有id等于0的初始SPS和PPS。如果将sps_in_stream和/或pps_in_stream设置为“1”,则流中的带内可能存在附加SPS和/或PPS。
携带参数集的样本可以(例如,应该)属于与该参数集类型相对应的样本分组。在本规范中定义了三个样本group_type‘pss1’。另一个分组类型参数用于区分SPS、PPS和APS,其中,‘sps1’识别携带SPS的样本的样本分组,‘pps1’识别携带PPS的样本的样本分组,而‘aps1’识别携带APS的样本的样本分组。
下面描述了包括定义的参数集样本分组条目。
a.分组类型:‘pss1’
b.容器:样本分组描述框(‘sgpd’)
c.强制:无
d.数量:零或更多
参数集样本分组识别包含类型为SPS、PPS或APS的参数集的样本。grouping_type_parameter进一步识别参数集的类型,并且可以取‘sps1’‘、pps1’或‘aps1’的值。
下面描述了参数集样本分组条目的一些语法。
class PSSSampleEntry()extends VisualSampleGroupEntry('pss1')
{
}
下面描述了同步示例。‘evc1’轨道中的同步样本可以(例如,应该)包含VCL NAL单元,其指示在样本中具有nuh_temporal_id等于0的经编译码的画面是瞬时解码刷新(IDR)画面。
表1指示了EVC VCL NAL单元类型、ISOBMFF同步样本状态和如ISOBMFF中记录的SAP类型之间的映射。
表1-同步样本状态和SAP类型到NAL单元类型的映射
NAL单元类型 ISOBMFF同步样本状态 DASH SAP类型
IDR_N_LP 1
下面是EVC的子样本的定义。为了在EVC流中使用SubSampleInformationBox(ISO/IEC 14496-12的8.7.7),以如下指定的子样本信息框的标志字段的值为基础来定义子样本。此框的存在是可选的;但是,如果存在于包含EVC数据的轨道中,则框中的‘codec_specific_parameters’字段可以(例如,应该)具有此处定义的语义。
标志如下指定此框中给出的子样本信息的类型:
a.0:基于NAL单元的子样本:子样本包含一个或多个连续NAL单元。
b.1:基于图块的子样本:子样本包含具有一个图块的所有CTU的VCL NAL单元、连同任何相关联的非VCL NAL单元(如果有的话)。
c.2:基于切片的子样本:子样本包含一个切片(即,一个VCL NAL单元)和相关联的非VCL NAL单元(如果有的话)。
d.标志的其它值被保留。
可以(例如,应该)将subsample_priority字段设置为根据ISO/IEC 14496-12中该字段的规范的值。
仅当如果该子样本被丢弃(例如,由SEI NAL单元组成的子样本)该样本仍可解码时,可丢弃字段可以(例如,应该)被设置为1。
当NAL单元的第一字节被包括在子样本中时,之前长度字段也可以(例如,应该)被包括在同一子样本中。
针对EVC如下定义了SubSampleInformationBox的codec_specific_parameters字段:
Figure BDA0003725562120000221
用于基于图块的子样本的tile_col_idx,此参数指示包含此子样本的图块的图块列的基于0的索引。
用于基于图块的子样本的tile_row_idx,此参数指示包含此子样本的图块的图块行的基于0的索引。
下面描述CMAF媒体配置文件。ISO/IEC 23000-19通用媒体应用格式(CMAF)在ISO/IEC 14496-12之外的ISOBMFF文件上定义了结构约束,目的是例如加密文件的自适应流传输或传递。通过FileTypeBox中存在CMAF定义的结构品牌,来发信号通知与这些结构约束的一致性。
如果ISO BMFF轨道使用标志‘cevc’,则其被称为CMAF EVC轨道,并且适用以下约束条件(定义用于EVC的CMAF媒体配置文件):
a.其可以(例如,应该)使用ISO/IEC 23094-1条款6.3中定义的‘evc1’示例条目。
b.轨道可以(例如,应该)符合ISO/IEC 23000-19条款7中的一般CMAF轨道约束
c.轨道可以(例如,应该)符合ISO/IEC 23000-19条款9中的一般CMAF视频轨道约束
如果在CMAF交换集中提供了EVC媒体,则
a.CMAF交换集中的每个CMAF轨道可以(例如,应该)符合CMAFEVC轨道
b.CMAF交换集可以(例如,应该)符合ISO/IEC 23000-19条款7中的一般CMAF交换集约束,以及
c.ISO/IEC 23000-19条款9中定义的一般CMAF视频轨道交换集约束。
遵循这些要求的CMAF交换集被定义为CMAF EVC媒体配置文件‘cevc’。使用如分别在ISO/IEC 23001-7条款10.1和10.4中指定的‘cenc’AES-CTR方案或‘cbcs’AES-CBC子样本模式加密方案,CMAF EVC轨道和CMAF EVC交换集的加密可以(例如,应该)符合ISO/IEC23000-19条款8。
此外,如果使用了使用如ISO/IEC 23001-7的条款9.6中所定义的模式加密的通用加密的‘cbcs’模式,则可以(例如,应该)应用10的模式块长度和1:9的加密:跳过模式(例如,如ISO/IEC 23001-7的条款10.4中所述)。
下面描述到DASH传递的映射。如果在适应集的DASH媒体表示中提供了EVC编码的媒体,则适应集可以(例如,应该)符合ISO/IEC 23009-1中定义的CMAF的DASH配置文件。以下参数可以(例如,应该)出现在“适应集”级别和集合上:
a.@codecs是根据附件A设置的
b.@mimeType是与“video/mp4配置文件=‘cevc’”兼容地设置的
下面是针对MIME类型‘codes’参数的子参数的说明。DASH和其它应用需要IETFRFC 6381中针对ISO BMFF媒体轨道指定的编解码器参数的定义值。用于EVC编解码器的编解码器参数串如下:<示例条目4CC>.<key1><value1>.<key2><value2>.....<keyN><valueN>
键被定义为4CC。表2中定义了一组初始的键和相关联的值对。附加键可以被指定为4CC。在一些示例中,键与ISO/IEC 23091-2对齐。
如果未提供特定键,则将应用指定的默认值,或者如果未声明(n/a),则该键的值未知。
表2针对EVC定义的键和值的初始集合的定义
Figure BDA0003725562120000241
Figure BDA0003725562120000251
例如,codecs=“evc1.vprf3.vlev51.vtoo03FF.vbit20.vcss420.vcpr09.vtrc16.vmac09.vsar01”表示EVC主配置文件,级别5.1,具有与(0,0)亮度样本并置的4:2:0色度子采样、受限工具集、ITU-R BT.2100色原、ITU-R BT.2100PQ传输特性、ITU-RBT.2100YCbCr颜色矩阵和1:1的样本宽高比。如果识别evc1样本条目,则可以(例如,必须)识别表2中的所有键。如果无法识别键,则忽略该键值对。在一些示例中,可以定义其它键,例如仅2CC。
‘vtoo’和toolset_idc的键值对与解码器配置记录中的toolset_idc语法元素传达相同的信息,但表示以不同的方式将此信息公开给视频处理设备。
根据上述技术,目的地设备116可以被配置为接收用于对视频数据的比特流进行解码的配置记录,其中,用于比特流的配置记录包括工具集指示语法元素,该工具集指示语法元素包括从一组视频解码工具识别对与配置记录相关联的比特流进行解码所需要的工具;基于工具集指示语法元素,确定是否取回与配置记录相关联的比特流;以及基于取回与配置记录相关联的比特流的确定,取回该比特流并将该比特流输出至视频解码器进行解码。目的地设备116可以另外地或可替代地接收包括键值对的MIME类型参数,其中,键指示该MIME类型识别视频解码工具,而值从视频解码工具识别对该比特流进行解码所需要的工具。视频数据的比特流可以包括一个或多个参数集,并且可以在一个或多个参数集的至少一个中启用在配置记录中被识别为对比特流进行解码所需要的每个工具。
在文件格式信息的配置框中用信号发送工具集指示语法元素。包括识别对与配置记录相关联的比特流进行解码所需要的工具的信息的工具集指示语法元素可以识别对与配置记录相关联的比特流进行解码所需要的所有工具。工具集指示语法元素可以是无符号的32位整数值,该无符号的32位整数值的每个位对应于用于对比特流进行解码的唯一工具。
可以根据必要EVC标准来格式化配置记录。用于比特流的配置记录可以在工具集指示语法元素之前包括配置文件语法元素和/或级别语法元素。用于比特流的配置记录可以在工具集指示语法元素之后包括色度格式语法元素。
图2A和2B是图示示例四叉树加二叉树(QTBT)结构130、和相对应的编码树单元(CTU)132的概念图。实线表示四叉树拆分,而虚线表示二叉树拆分。在二叉树的每个拆分(即,非叶)节点中,发信号通知一个标志以指示使用哪种拆分类型(即,水平或垂直),在这一示例中,0指示水平拆分,1指示垂直拆分。对于四叉树拆分,由于四叉树节点将一个块水平和垂直地拆分为具有相等尺寸的4个子块,因此无需指示拆分类型。因此,视频编码器200可以对QTBT结构130的区域树级别(即,实线)的语法元素(诸如拆分信息)和QTBT结构130的预测树级别(即,虚线)的语法元素(诸如拆分信息)进行编码,而视频解码器300可以对其进行解码。视频编码器200可以对由QTBT结构130的终端叶节点所表示的CU的视频数据(诸如预测和变换数据)进行编码,而视频解码器300可以对其进行解码。
通常,图2B的CTU 132可以与定义对应于第一和第二级别的QTBT结构130的节点的块的尺寸的参数相关联。这些参数可以包括CTU尺寸(表示CTU 132在样本中的尺寸)、最小四叉树尺寸(MinQTSize,表示最小允许四叉树叶节点尺寸)、最大二叉树尺寸(MaxBTSize,表示最大允许二叉树根节点尺寸)、最大二叉树深度(MaxBTDepth,表示最大允许二叉树深度)和最小二叉树尺寸(MinBTSize,表示最小允许二叉树叶节点尺寸)。
对应于CTU的QTBT结构的根节点可以在QTBT结构的第一级别具有四个子节点,其中的每一个可以根据四叉树分割来进行分割。也就是,第一级别的节点是叶节点(没有子节点)或具有四个子节点。QTBT结构130的示例将这样的节点表示为包括父节点和具有分支实线的子节点。如果第一级别的节点不大于最大允许二叉树根节点尺寸(MaxBTSize),则可以通过相应的二叉树对该节点进行进一步分割。一个节点的二叉树拆分可以是迭代的,直到拆分产生的节点达到最小允许二叉树叶节点尺寸(MinBTSize)或最大允许二叉树深度(MaxBTDepth)。QTBT结构130的示例将这样的节点表示为具有用于分支的虚线。二叉树叶节点被称为编码单元(CU),其用于预测(例如,画面内或画面间预测)和变换,无需任何进一步的分割。如上所讨论的,CU也可以被称为“视频块”或“块”。
在QTBT分割结构的一个示例中,CTU尺寸被设置为128x128(亮度样本和两个相对应的64x64色度样本),MinQTSize被设置为16x16,MaxBTSize被设置为64x64,MinBTSize(针对宽度和高度二者)被设置为4,MaxBTDepth被设置为4。首先对CTU应用四叉树分割以生成四叉树叶节点。四叉树叶节点的尺寸可以从16x16(即MinQTSize)到128x128(即CTU尺寸)。如果四叉树叶节点为128x128,则由于尺寸超过MaxBTSize(在此示例中即为64x64),因此该四叉树叶节点不会被二叉树进一步拆分。否则,四叉树叶节点将被二叉树进一步分割。因此,四叉树叶节点也是二叉树的根节点,并且使二叉树深度为0。当二叉树深度达到MaxBTDepth(在此示例中4)时,不允许进一步拆分。当二叉树节点的宽度等于MinBTSize(在此示例中4)时,意味着不允许进一步的水平拆分。类似地,具有等于MinBTSize的高度的二叉树节点意味着该二叉树节点不允许被进一步的垂直拆分。如上所述,二叉树的叶节点被称为CU,并且根据预测和变换被进一步处理而无需进一步分割。
图3是图示可以执行本公开的技术的示例视频编码器200的框图。图3是为了解释说明的目的而提供的,并且不应被认为是对本公开中广泛例示和描述的技术的限制。为了解释说明的目的,本公开根据JEM、EVC、VVC(ITU-T H.266,开发中)和HEVC(ITU-T H.265)的技术描述视频编码器200。然而,本公开的技术可以由被配置于其它视频编译码标准的视频编码设备来执行。
在图3的示例中,视频编码器200包括视频数据存储器230、模式选择单元202、残差生成单元204、变换处理单元206、量化单元208、逆量化单元210、逆变换处理单元212、重构单元214、滤波器单元216、经解码画面缓冲器(DPB)218和熵编码单元220。视频数据存储器230、模式选择单元202、残差生成单元204、变换处理单元206、量化单元208、逆量化单元210、逆变换处理单元212、重构单元214、滤波器单元216、DPB 218和熵编码单元220中的任何一个或全部可以在一个或多个处理器中或在处理电路中实现。例如,视频编码器200的单元可以被实现为一个或多个电路或逻辑元件,作为硬件电路的一部分,或者作为处理器、ASIC、FPGA的一部分。此外,视频编码器200可包括附加的或替代的处理器或处理电路,以执行这些和其它功能。
视频数据存储器230可以存储要由视频编码器200的组件编码的视频数据。视频编码器200可以从例如视频源104(图1)接收存储在视频数据存储器230中的视频数据。DPB218可以充当参考画面存储器,其存储参考视频数据以供视频编码器200在后续视频数据的预测中使用。视频数据存储器230和DPB 218可以由各种不同存储设备(诸如动态随机存取存储器(DRAM),包括同步DRAM(SDRAM)、磁阻RAM(MRAM)、电阻RAM(RRAM)或其它类型的存储设备)中的任何一个形成。视频数据存储器230和DPB 218可以由相同的存储设备或分离的存储设备提供。在各种示例中,视频数据存储器230可以与视频编码器200的其它组件一起在芯片上(如图所示),或者相对于那些组件在芯片之外。
在本公开中,对视频数据存储器230的引用不应被解释为限于视频编码器200内部的存储器(除非如此具体地描述),或者限于视频编码器200外部的存储器(除非如此具体地描述)。而是,对视频数据存储器230的引用应被理解为存储视频编码器200接收的用于编码的视频数据(例如,要编码的当前块的视频数据)的参考存储器。图1的存储器106还可以提供来自视频编码器200的各个单元的输出的临时存储。
示出图3的各种单元以帮助理解由视频编码器200执行的操作。这些单元可以被实现为固定功能电路、可编程电路或其组合。固定功能电路是指提供特定功能并在可以执行的操作上预先设置的电路。可编程电路是指可以被编程以执行各种任务并且在可以执行的操作中提供灵活功能的电路。例如,可编程电路可以运行软件或固件,其使可编程电路以该软件或固件的指令所定义的方式操作。固定功能电路可以运行软件指令(例如,以接收参数或输出参数),但是固定功能电路执行的操作的类型通常是不可变的。在一些示例中,一个或多个单元可以是不同的电路块(固定功能或可编程的),并且在一些示例中,一个或多个单元可以是集成电路。
视频编码器200可以包括由可编程电路形成的算术逻辑单元(ALU)、基本功能单元(EFU)、数字电路、模拟电路和/或可编程内核。在使用由可编程电路运行的软件来执行视频编码器200的操作的示例中,存储器106(图1)可以存储视频编码器200接收并运行的软件的指令(例如,目标代码),或者视频编码器200中的另一存储器(未示出)可以存储这种指令。
视频数据存储器230被配置为存储接收到的视频数据。视频编码器200可以从视频数据存储器230取回视频数据的画面,并将该视频数据提供给残差生成单元204和模式选择单元202。视频数据存储器230中的视频数据可以是要被编码的原始视频数据。
模式选择单元202包括运动估计单元222、运动补偿单元224和帧内预测单元226。模式选择单元202可以包括附加功能单元,以根据其它预测模式执行视频预测。作为示例,模式选择单元202可以包括调色板单元、块内复制单元(其可以是运动估计单元222和/或运动补偿单元224的一部分)、仿射单元、线性模型(LM)单元等。
模式选择单元202通常协调多个编码遍次,以测试编码参数的组合以及针对这种组合所得的率失真值。编码参数可以包括CTU到CU的分割、用于CU的预测模式、用于CU的残差数据的变换类型、用于CU的残差数据的量化参数等等。模式选择单元202可以最终选择具有比其它测试的组合更好的率失真值的编码参数的组合。
视频编码器200可以将从视频数据存储器23取回的画面分割为一系列CTU,并将一个或多个CTU封装在切片中。模式选择单元202可以根据树结构(诸如上面描述的QTBT结构或四叉树结构)来分割画面的CTU。如上所述,视频编码器200可以通过根据树结构分割CTU来形成一个或多个CU。这样的CU通常也可以被称为“视频块”或“块”。
通常,模式选择单元202还控制其组件(例如,运动估计单元222、运动补偿单元224和帧内预测单元226)以生成当前块(例如,当前CU,或者PU和TU的重叠部分)的预测块。针对当前块的帧间预测,运动估计单元222可以执行运动搜索以识别一个或多个参考画面(例如,存储在DPB 218中的一个或多个先前编码的画面)中的一个或多个紧密匹配的参考块。特别地,运动估计单元222可以例如根据绝对差之和(SAD)、平方差之和(SSD)、平均绝对差(MAD)、均方差(MSD)等来计算表示潜在参考块与当前块如何相似的值。运动估计单元222通常可以使用当前块与所考虑的参考块之间的逐个样本差值来执行这些计算。运动估计单元222可以识别具有从这些计算得到的最低值的参考块,该参考块指示与当前块最紧密匹配的参考块。
运动估计单元222可以形成定义参考画面中的参考块的位置相对于当前画面中的当前块的位置的一个或多个运动矢量(MV)。然后,运动估计单元222可以将运动矢量提供给运动补偿单元224。例如,针对单向帧间预测,运动估计单元222可以提供单个运动矢量,而针对双向帧间预测,运动估计单元222可以提供两个运动矢量。然后,运动补偿单元224可以使用运动矢量来生成预测块。例如,运动补偿单元224可以使用运动矢量来取回参考块的数据。作为另一示例,如果运动矢量具有分数的样本精度,则运动补偿单元224可以根据一个或多个插值滤波器来对预测块的值进行插值。此外,针对双向帧间预测,运动补偿单元224可以取回由相应运动矢量识别的两个参考块的数据,并且例如通过逐样本平均或加权平均来组合取回的数据。
作为另一示例,针对帧内预测或帧内预测编译码,帧内预测单元226可以从与当前块相邻的样本来生成预测块。例如,对于定向模式,帧内预测单元226通常可以在数学上组合相邻样本的值,并在当前块上沿定义的方向填充这些计算出的值以产生预测块。作为另一示例,针对DC模式,帧内预测单元226可以计算当前块的相邻样本的平均值,并且生成预测块以包括针对预测块的每个样本的该得到的平均值。
模式选择单元202将预测块提供给残差生成单元204。残差生成单元204从视频数据存储器230接收原始的未编码版本的当前块,并从模式选择单元202接收预测块。残差生成单元204计算当前块和预测块之间的逐个样本差值。所得的逐个样本差值定义当前块的残差块。在一些示例中,残差生成单元204还可以确定残差块中的样本值之间的差值,以使用残差差分脉冲码调制(RDPCM)来生成残差块。在一些示例中,可以使用执行二进制减法的一个或多个减法器电路来形成残差生成单元204。
在模式选择单元202将CU分割为PU的示例中,每个PU可以与亮度预测单元和相对应的色度预测单元相关联。视频编码器200和视频解码器300可以支持具有各种尺寸的PU。如上所指示的,CU的尺寸可以是指CU的亮度编码块的尺寸,并且PU的尺寸可以是指PU的亮度预测单元的尺寸。假设特定CU的尺寸为2Nx2N,则视频编码器200可以支持用于帧内预测的2Nx2N或NxN的PU尺寸、以及用于帧间预测的2Nx2N、2NxN、Nx2N、NxN或类似的对称PU尺寸。视频编码器200和视频解码器300还可以支持用于帧间预测的2NxnU、2NxnD、nLx2N和nRx2N的PU尺寸的不对称分割。
在模式选择单元202不再将CU进一步分割为PU的示例中,每个CU可以与亮度编码块和相对应的色度编码块相关联。如上所述,CU的尺寸可以是指CU的亮度编码块的尺寸。视频编码器200和视频解码器300可以支持2N×2N、2N×N或N×2N的CU尺寸。
对于诸如帧内块复制模式编译码、仿射模式编译码、和线性模型(LM)模式编译码的其它视频编译码技术,作为少数示例,模式选择单元202经由与编译码技术相关联的相应单元来生成正被编码的当前块的预测块。在一些示例中,诸如调色板模式编码,模式选择单元202可以不生成预测块,而是生成指示基于所选择的调色板来重构块的方式的语法元素。在这样的模式中,模式选择单元202可以将这些语法元素提供给熵编码单元220以进行编码。
如上所述,残差生成单元204接收当前块和相对应的预测块的视频数据。然后,残差生成单元204生成当前块的残差块。为了生成残差块,残差生成单元204计算预测块和当前块之间的逐个样本差值。
变换处理单元206将一个或多个变换应用于残差块以生成变换系数的块(在本文中称为“变换系数块”)。变换处理单元206可以将各种变换应用于残差块以形成变换系数块。例如,变换处理单元206可以将离散余弦变换(DCT)、定向变换、Karhunen-Loeve变换(KLT)或概念上类似的变换应用于残差块。在一些示例中,变换处理单元206可以对残差块执行多个变换,例如主变换和副变换(诸如旋转变换)。在一些示例中,变换处理单元206不将变换应用于残差块。
量化单元208可以量化变换系数块中的变换系数,以产生经量化的变换系数块。量化单元208可以根据与当前块相关联的量化参数(QP)值来量化变换系数块的变换系数。视频编码器200(例如,经由模式选择单元202)可以通过调整与CU相关联的QP值,来调整应用于与当前块相关联的变换系数块的量化程度。量化可能会导致信息损失,并且因此,经量化的变换系数可能会比变换处理单元206产生的原始变换系数具有更低的精度。
逆量化单元210和逆变换处理单元212可以分别将逆量化和逆变换应用于经量化的变换系数块,以从变换系数块重构残差块。重构单元214可以基于重构的残差块和由模式选择单元202生成的预测块,来产生与当前块相对应的重构块(尽管可能具有某种程度的失真)。例如,重构单元214可以将重构的残差块的样本添加到来自模式选择单元202所生成的预测块的相对应样本,以产生重构块。
滤波器单元216可以对重构块执行一个或多个滤波器操作。例如,滤波器单元216可以执行解块操作以减少沿着CU的边缘的块状伪像。在一些示例中,滤波器单元216的操作可以被跳过。
视频编码器200将重构块存储在DPB 218中。例如,在不需要滤波器单元216的操作的示例中,重构单元214可以将重构块存储到DPB 218。在需要滤波器单元216的操作的示例中,滤波器单元216可以将滤波后的重构块存储到DPB 218。运动估计单元222和运动补偿单元224可以从DPB 218取回参考画面,该参考画面由重构(并潜在地滤波后)的块形成,以对随后的经编码画面的块进行帧间预测。另外,帧内预测单元226可以使用DPB 218中的当前画面的重构块,来对当前画面中的其它块进行帧内预测。
通常,熵编码单元220可以对从视频编码器200的其它功能组件接收的语法元素进行熵编码。例如,熵编码单元220可以对来自量化单元208的经量化的变换系数块进行熵编码。作为另一示例,熵编码单元220可以对来自模式选择单元202的预测语法元素(例如,用于帧间预测的运动信息或用于帧内预测的帧内模式信息)进行熵编码。熵编码单元220可以对语法元素(它们是视频数据的另一示例)执行一个或多个熵编码操作,以生成经熵编码的数据。例如,熵编码单元220可以对数据执行上下文自适应可变长度编码(CAVLC)操作、CABAC操作、可变到可变(V2V)长度编码操作、基于语法的上下文自适应二进制算术编码(SBAC)操作、概率区间分割熵(PIPE)编码操作、指数哥伦布编码操作、或另一种类型熵编码操作。在一些示例中,熵编码单元220可以在语法元素未被熵编码的旁通模式下操作。
视频编码器200可以输出包括重构切片或画面的块所需要的经熵编码语法元素的比特流。特别地,熵编码单元220可以输出该比特流。
关于块描述了上述操作。这样的描述应该被理解为是用于亮度编码块和/或色度编码块的操作。如上所述,在一些示例中,亮度编码块和色度编码块是CU的亮度和色度分量。在一些示例中,亮度编码块和色度编码块是PU的亮度和色度分量。
在一些示例中,不必针对色度编码块重复关于亮度编码块执行的操作。作为一个示例,不需要重复用于识别用于亮度编码块的运动矢量(MV)和参考画面的操作来识别用于色度块的MV和参考画面。相反,可以缩放用于亮度编码块的MV以确定用于色度块的MV,并且参考画面可以是相同的。作为另一示例,针对亮度编码块和色度编码块,帧内预测处理可以是相同的。
视频编码器200表示配置为对视频数据进行编码的设备的示例,该设备包括被配置为存储视频数据的存储器,以及在电路中实现的一个或多个处理单元,该处理单元被配置为执行本公开中描述的一种或多种示例技术。
在一些示例中,源设备可以被配置为接收来自视频编码器200的输出,并确定(例如,生成)用于比特流的配置记录,该比特流封装由视频编码器200根据必要视频编码(EVC)标准编码的视频数据,其中包括用于对该比特流进行解码的信息。配置记录可以包括工具集指示语法元素(例如,toolset_idc)。可以以文件格式级别(例如,作为文件格式级别数据)或以封装视频编码层(VCL)级别编码的媒体数据的级别,来提供配置记录。例如,如本文所讨论的,配置记录可以被包括在媒体文件的配置框中,其中,配置框与影片片段框或包括实际编码的媒体数据的其它框是分开的。在一些示例中,工具集指示语法元素可以包括对与配置记录相关联的比特流进行解码所需要的所有工具的信息。工具集指示语法元素可以指示与在序列参数集(SPS)中发信号通知的另一个toolset_idc字段匹配的工具。
在一些示例中,工具集指示语法元素可以被认为包括播放样本条目中的文件所必需的工具,该样本条目是经编码参数的一部分。为了启用工具集指示语法元素,可以利用针对MIME类型中的经编码参数的编码方案。
图4是图示可以执行本公开的技术的示例视频解码器300的框图。图4是为了解释说明的目的提供的,而非限制本公开中广泛例示和描述的技术。为了解释说明的目的,本公开描述了根据JEM、EVC、VVC(ITU-T H.266,开发中)和HEVC(ITU-T H.265)的技术的视频解码器300。然而,本公开的技术可以由被配置用于其它视频编码标准的视频编码设备来执行。
在图4的示例中,视频解码器300包括经编码画面缓冲(CPB)存储器320、熵解码单元302、预测处理单元304、逆量化单元306、逆变换处理单元308、重构单元310、滤波器单元312和经解码画面缓冲器(DPB)314。CPB存储器320、熵解码单元302、预测处理单元304、逆量化单元306、逆变换处理单元308、重构单元310、滤波器单元312和DPB 314中的任何一个或全部可以实现在一个或多个处理器或处理电路中。例如,视频解码器300的单元可以被实现为一个或多个电路或逻辑元件,作为硬件电路的一部分或者作为处理器、ASIC、FPGA的一部分。此外,视频解码器300可以包括另外的或替代的处理器或处理电路,以执行这些和其它功能。
预测处理单元304包括运动补偿单元316和帧内预测单元318。预测处理单元304可以包括附加单元以根据其它预测模式执行预测。作为示例,预测处理单元304可以包括调色板单元、块内复制单元(其可以形成运动补偿单元316的一部分)、仿射单元、线性模型(LM)单元等。在其它示例中,视频解码器300可以包括更多、更少或不同的功能组件。
CPB存储器320可以存储要由视频解码器300的组件解码的视频数据,诸如经编码的视频比特流。例如,可以从计算机可读介质110(图1)获得存储在CPB存储器320中的视频数据。CPB存储器320可以包括存储来自经编码视频比特流的经编码视频数据(例如,语法元素)的CPB。而且,CPB存储器320可以存储除了经编码画面的语法元素之外的视频数据,诸如表示来自视频解码器300的各个单元的输出的临时数据。DPB 314通常存储经解码画面,视频解码器300可以在对经编码视频比特流的后续数据或画面进行解码时,输出该经解码画面和/或使用该经解码画面作为参考视频数据。CPB存储器320和DPB 314可以由诸如DRAM(包括SDRAM、MRAM、RRAM)或其它类型的存储设备之类的各种存储设备中的任何一个形成。CPB存储器320和DPB 314可以由相同的存储设备或分离的存储设备提供。在各种示例中,CPB存储器320可以与视频解码器300的其它组件在芯片上,或者相对于那些组件在芯片之外。
附加地或可替代地,在一些示例中,视频解码器300可以从存储器120(图1)取回经编码视频数据。也就是说,存储器120可以如上所讨论地用CPB存储器320存储数据。同样地,当视频解码器300的一些或所有功能被实现在软件中以由视频解码器300的处理电路执行时,存储器120可以存储要由视频解码器300执行的指令。
图4中示出的各种单元是为了帮助理解由视频解码器300执行的操作而图示的。这些单元可以被实现为固定功能电路、可编程电路或其组合。类似于图3,固定功能电路是指提供特定功能并在可以执行的操作上预先设置的电路。可编程电路是指可以被编程以执行各种任务并且在可以执行的操作中提供灵活功能的电路。例如,可编程电路可以运行软件或固件,其使可编程电路以该软件或固件的指令所定义的方式操作。固定功能电路可以运行软件指令(例如,以接收参数或输出参数),但是固定功能电路执行的操作的类型通常是不可变的。在一些示例中,一个或多个单元可以是不同的电路块(固定功能或可编程的),并且在一些示例中,一个或多个该单元可以是集成电路。
视频解码器300可以包括ALU、EFU、数字电路、模拟电路和/或由可编程电路形成的可编程内核。在视频解码器300的操作由在可编程电路上运行的软件执行的示例中,片上或片外存储器可以存储视频解码器300接收并运行的软件的指令(例如,目标代码)。
熵解码单元302可以从CPB接收经编码视频数据并且对该视频数据进行熵解码以再现语法元素。预测处理单元304、逆量化单元306、逆变换处理单元308、重构单元310和滤波器单元312可以基于从比特流提取的语法元素来生成经解码视频数据。
通常,视频解码器300在逐个块的基础上重构画面。视频解码器300可以在每个块上单独执行重构操作(其中,当前正在被重构(即,被解码)的块可以被称为“当前块”)。
熵解码单元302可以对定义经量化的变换系数块的经量化变换系数的语法元素、以及诸如量化参数(QP)和/或变换模式指示之类的变换信息进行熵解码。逆量化单元306可以使用与经量化的变换系数块相关联的QP来确定量化度,并且同样地,确定逆量化单元306要应用的逆量化度。逆量化单元306可以,例如执行按位左移操作以对经量化变换系数进行逆量化。从而,逆量化单元306可以形成包括变换系数的变换系数块。
在逆量化单元306形成变换系数块之后,逆变换处理单元308可以将一个或多个逆变换应用于变换系数块以生成与当前块相关联的残差块。例如,逆变换处理单元308可以将逆DCT、逆整数变换、逆Karhunen-Loeve变换(KLT)、逆旋转变换、逆定向变换或另一逆变换应用于变换系数块。
此外,预测处理单元304根据由熵解码单元302熵解码的预测信息语法元素来生成预测块。例如,如果预测信息语法元素指示当前块是帧间预测的,则运动补偿单元316可以生成预测块。在这种情况下,预测信息语法元素可以指示DPB 314中的参考画面,从该参考画面取回参考块,以及识别参考画面中的参考块的位置相对于当前画面中的当前块的位置的运动矢量。运动补偿单元316通常可以以与关于运动补偿单元224(图3)所描述的方式基本相似的方式来执行帧间预测处理。
作为另一示例,如果预测信息语法元素指示当前块是帧内预测的,则帧内预测单元318可以根据由该预测信息语法元素指示的帧内预测模式来生成预测块。再次,帧内预测单元318通常可以以与关于帧内预测单元226(图3)所描述的方式基本上类似的方式来执行帧内预测处理。帧内预测单元318可以从DPB 314取回当前块的相邻样本的数据。
重构单元310可以使用预测块和残差块来重构当前块。例如,重构单元310可以将残差块的样本添加到预测块的相对应样本以重构当前块。
滤波器单元312可以对重构块执行一个或多个滤波器操作。例如,滤波器单元312可以执行解块操作以减少沿着重构块的边缘的块状伪像。滤波器单元312的操作不一定在所有的示例中执行。
视频解码器300可以将重构块存储在DPB 314中。例如,在未执行滤波器单元312的操作的示例中,重构单元310可以将重构块存储到DPB 314。在执行滤波器单元312的操作的示例中,滤波器单元312可以将滤波后的重构块存储到DPB 314。如上所讨论的,DPB 314可以将诸如用于帧内预测的当前画面的样本、以及用于后续运动补偿的先前经解码的画面之类的参考信息提供给预测处理单元304。此外,视频解码器300可以从DPB 314输出经解码的画面(例如,经解码的视频),以用于随后在诸如图1的显示设备118之类的显示设备上呈现。
以这种方式,视频解码器300表示视频解码设备的示例,该视频解码设备包括配置为存储视频数据的存储器、以及在电路中实现并被配置为执行本公开中描述的示例技术的一个或多个处理单元。
在一些示例中,客户端设备可以被配置为根据必要视频编码(EVC)标准接收用于对视频数据的比特流进行解码的配置记录。该配置记录可以包括工具集指示语法元素(例如,toolset_idc)。在一些示例中,工具集指示语法元素可以包括对与配置记录相关联的比特流进行解码所需要的所有工具的信息。配置记录的工具集指示语法元素可以匹配在序列参数集(SPS)中发信号通知的工具集指示语法元素。基于工具集指示语法元素,客户端设备可以确定是否取回与配置记录相关联的比特流。基于取回与配置记录相关联的比特流的确定,客户端设备可以取回比特流,并将比特流输出到视频解码器300以进行解码。
在一些示例中,工具集指示语法元素可以被认为包括播放样本条目中的文件所需要的工具,该样本条目是编码参数的一部分。为了启用工具集指示语法元素,可以利用用于MIME类型中经编码参数的编码方案。
图5是图示根据本公开的一种或多种技术的文件500的示例结构的概念图。在图5的示例中,文件500包括影片框502和多个媒体数据框504。虽然在图5的示例中被图示为在同一个文件中,但是在其它示例中,影片框502和媒体数据框504可以在单独的文件中。如上所指示的,框可以是由唯一的类型标识符和长度定义的面向对象的构建框。例如,框可以是ISOBMFF中的基本语法结构,包括四字符编码的框类型、框的字节计数、和有效载荷。
影片框502可以包含文件500的轨道的元数据。文件500的每个轨道可以包括连续的媒体数据流。每个媒体数据框504可以包括一个或多个样本505。每个样本505可以包括音频或视频访问单元。每个访问单元可以包括用于多视图编码或可扩展视频编码的多个经编码画面。例如,访问单元可以包括每个层的一个或多个经编码画面。
此外,在图5的示例中,影片框502包括轨道框506。轨道框506可以包围文件500的轨道的元数据。在其它示例中,影片框502可以包括用于文件500的不同轨道的多个轨道框。轨道框506包括轨道参考框508和媒体框510。轨道参考框508可以包括轨道参考类型框509。轨道参考类型框509可以与类型(例如,‘tbas’)和识别另一个轨道的轨道标识符相关联。根据本公开的第六技术,图块轨道的轨道参考框可以包括或可以不包括与类型标识符‘tbas’相关联的轨道参考类型框。
媒体框510可以包含声明关于轨道内的媒体数据的信息的所有对象。媒体框510包括媒体信息框512。媒体信息框512可以包含声明轨道的媒体的特性信息的所有对象。媒体信息框512包括样本表框514。样本表框514可以指定样本特定的元数据。
在图5的示例中,样本表框514包括样本描述框516,并且样本描述框516包括样本条目518。样本条目518包括EVC解码器配置520,如上所述,EVC解码器配置520可以包括工具集指示语法元素。在其它示例中,样本表框514可以包括除样本描述框516和样本条目518之外的其它框。虽然在图5中未示出,但是样本条目518可以包括解码器配置记录。如以上更详细描述的,本公开描述了用于在诸如样本条目518的样本条目中包括新类型的重要信息的技术。
图6是图示示例多媒体内容620的元素的概念图。在图6的示例中,多媒体内容620包括MPD 622和多个表示624A-624N(表示624)。表示624A包括可选的报头数据626和分段628A-628N(分段628),而表示624N包括可选的报头数据630和分段632A-632N(分段632)。为了方便起见,字母N用于指定每个表示624中的最后一个影片片段。在一些示例中,在表示624之间可以存在不同数量的影片片段。
MPD 622可以包括与表示624分开的数据结构。通常,MPD 422可以包括一般描述表示424的特性的数据,诸如编码和渲染特性、适配集、MPD 422所对应的配置文件、文本类型信息、相机角度信息、评级信息、特技模式信息(例如,指示包括时间子序列的表示的信息)、和/或用于取回远程周期的信息(例如,用于在播放期间将目标广告插入媒体内容中的信息)。
报头数据626,当存在时,可以描述分段628的特性,例如,随机访问点(RAP,也称为流访问点(SAP))的时间位置、分段628中的哪些包括随机访问点、分段628内到随机访问点的字节偏移、分段628的统一资源定位符(URL)、或者分段628的其它方面。报头数据630,当存在时,可以描述分段632的相似特性。另外或替代地,这样的特性可以被完全包括在MPD622内。
分段628、632包括一个或多个经编码视频样本,每个经编码视频样本可以包括视频数据的帧或切片。分段628的每个经编码视频样本可以具有相似的特性,例如,高度、宽度和带宽要求。这样的特性可以由MPD 622的数据来描述,尽管在图6的示例中未图示这样的数据。MPD 622可以包括如3GPP规范所描述的特性,并添加本公开中所描述的任何或所有发信号通知的信息。
每个分段628、632可以与唯一的统一资源定位符(URL)相关联。因此,每个分段628、632可以是可使用流传输网络协议(诸如DASH)独立取回的。以这种方式,目的地设备可以使用HTTP GET请求来取回分段628或632。在一些示例中,目的地设备可以使用HTTP部分GET请求来取回分段628或632的特定字节范围。
图7是图示示例视频文件750的元素的框图。可以认为视频文件750封装分段。如上所述,根据ISO基础媒体文件格式及其扩展的视频文件将数据存储在被称为“框”的一系列对象中。在图7的示例中,视频文件750包括文件类型(FTYP)框752、影片(MOOV)框754、分段索引(sidx)框762、影片片段(MOOF)框764和影片片段随机访问(MFRA)框766。虽然图7表示视频文件的示例,但是应该理解,其它媒体文件可以包括根据ISO基本媒体文件格式及其扩展、与视频文件750的数据相似地构造的其它类型的媒体数据(例如,音频数据、定时文本数据等)。
FTYP框752一般描述视频文件750的文件类型。文件类型框752可以包括识别描述视频文件750最佳用途的规范的数据。文件类型框752可以替代地被放在MOOV框754、影片片段框764和/或MFRA框766之前。
在一些示例中,诸如视频文件750的分段可以在FTYP框752之前包括MPD更新框(未示出)。MPD更新框可以包括信息,该信息指示对应于包括视频文件750的表示的MPD要与用于更新该MPD的信息一起被更新。例如,MPD更新框可以提供用于更新MPD的资源的URI或URL。作为另一示例,MPD更新框可以包括用于更新MPD的数据。在一些示例中,MPD更新框可以紧跟着视频文件750的分段类型(STYP)框(未示出),其中,STYP框可以定义视频文件750的分段类型。
在图7的示例中,MOOV框754包括影片头(MVHD)框756、轨道(TRAK)框758和一个或多个影片扩展(MVEX)框760。通常,MVHD框756可以描述视频文件750的一般特性。例如,MVHD框756可以包括描述原始创建视频文件750的时间、最后修改视频文件750的时间、视频文件750的时间标度、视频文件750的重放持续时间的数据、或者一般描述视频文件750的其它数据。
TRAK框758可以包括用于视频文件750的轨道的数据。TRAK框758可以包括描述与TRAK框758相对应的轨道的特性的轨道头(TKHD)框。在一些示例中,TRAK框758可以包括经编码视频画面,而在其它示例中,轨道的经编码视频画面可以被包括在影片片段764中,影片片段764可以由TRAK框758和/或sidx框762的数据引用。
在一些示例中,视频文件750可以包括多于一个轨道。因此,MOOV框754可以包括等于视频文件750中的轨道数量的多个TRAK框。TRAK框758可以描述视频文件750的相对应轨道的特性。例如,TRAK框758可以描述用于相对应轨道的时间和/或空间信息。当参数集轨道被包括在视频文件(诸如视频文件750)中时,类似于MOOV框754的TRAK框758的TRAK框可以描述参数集轨道的特性。可以在描述参数集轨道的TRAK框内的参数集轨道中发信号通知序列级SEI消息的存在。
MVEX框760可以描述相对应的影片片段764的特性,例如,以发信号通知除了包括在MOOV框754内的视频数据(如果有的话),视频文件750还包括影片片段764。在流传输视频数据的上下文中,经编码视频画面可以被包括在影片片段764中,而不是MOOV框754中。因此,所有经编码视频样本都可以被包括在影片片段764中,而不是MOOV框754中。
MOOV框754可以包括等于视频文件750中的影片片段764的数量的多个MVEX框760。每个MVEX框760可以描述影片片段764中的对应影片片段的特性。例如,每个MVEX框可以包括影片扩展头框(MEHD),该影片扩展头框(MEHD)描述影片片段764中的对应影片片段的时间持续时间。
序列数据集可以被存储在不包括实际经编码视频数据的视频样本中。视频样本一般可以对应于访问单元,访问单元是在特定时间实例处的经编码画面的表示。在AVC的上下文中,经编码画面包括一个或多个VCL NAL单元,其包含用于构造访问单元和其它相关联的非VCL NAL单元的所有像素的信息,诸如SEI消息。因此,可以包括序列级SEI消息的序列数据集可以被包括在影片片段764之一中。可以发信号通知序列数据集和/或序列级SEI消息的存在是在对应于影片片段764之一的MVEX框760之一中的影片片段764之一中存在。
SIDX框762是视频文件750的可选元素。也就是说,符合3GPP文件格式或其它此类文件格式的视频文件不一定包括SIDX框762。根据3GPP文件格式的示例,SIDX框可以用于识别分段(例如,视频文件750中包含的分段)的子分段。3GPP文件格式将子分段定义为“一个或多个连续影片片段框的自包含集,其具有相对应的(多个)媒体数据框,包含由影片片段框引用的数据的媒体数据框必须跟在那个影片片段框之后并且在包含关于同一轨道的信息的下一个影片片段框之前”。3GPP文件格式还指示SIDX框“包含对该框所记录的(子)分段的子分段的引用序列。引用的子分段在呈现时间上是连续的。类似地,分段索引框所引用的字节在该分段内始终是连续的。所引用的尺寸给出所引用材料中字节数的计数。”
SIDX框762一般提供表示视频文件750中包括的分段的一个或多个子分段的信息。例如,此类信息可以包括子分段开始和/或结束的重放时间、用于该子分段的字节偏移、子段是否包括(例如,以其起始)流访问点(SAP)、SAP的类型(例如,SAP是否是即时解码器刷新(IDR)画面、净随机访问(CRA)画面、断点链接访问(BLA)画面等)、SAP在子分段中的位置(在重放时间和/或字节偏移方面)等。
影片片段764可以包括一个或多个经编码视频画面。在一些示例中,影片片段764可以包括一个或多个画面组(GOP),每个画面组可以包括多个经编码视频画面,例如,帧或画面。另外,如上所述,在一些示例中,影片片段764可以包括序列数据集。每一个影片片段764可以包括影片片段头框(MFHD,图7中未示出)。MFHD框可以描述相对应的影片片段的特性,诸如影片片段的序列号。影片片段764可以按序列号的顺序包含在视频文件750中。
MFRA框766可以描述视频文件750的影片片段764中的随机访问点。这可以帮助执行特技模式,诸如对由视频文件750封装的分段中的特定时间位置(即,重放时间)执行搜索。在一些示例中,MFRA框766一般是可选的,不必被包括在视频文件中。同样,客户端设备不一定要引用MFRA框766以正确地解码和显示视频文件750的视频数据。MFRA框766可以包括等于视频文件750的轨道数量、或者在一些示例中等于视频文件750的媒体轨道(例如,非提示轨道)数量的多个轨道片段随机访问(TFRA)框(未显示)。
在一些示例中,影片片段764可以包括一个或多个流访问点(SAP),诸如IDR画面。同样,MFRA框766可以提供SAP在视频文件7 50中的位置的指示。因此,视频文件750的时间子序列可以从视频文件750的SAP来形成。该时间子序列也可以包括其它画面,诸如取决于SAP的P帧和/或B帧。可以将时间子序列的帧和/或切片排列在分段内,使得可以适当地解码取决于子序列的其它帧/切片的时间子序列的帧/切片。例如,在数据的分层排列中,用于其它数据的预测的数据也可以被包括在时间子序列中。
在此示例中,视频文件750还包含样本描述框768。特别地,在此示例中,样本描述框768被包括在TRAK框758内。在图7的示例中,样本描述框768不包括根据编解码器编码的视频数据。
示例样本描述框768可以定义如下:
样本条目和框类型:‘hvc2’、‘hev2’、‘lhv1’、‘lhe1’、‘lhvC’
·容器:样本描述框(‘stsd’)
·强制:‘hvc1’、‘hev1’、‘hvc2’、‘hev2’、‘lhv1’或‘lhe1’样本条目是强制的·数量:可以存在一个或多个样本条目
在样本描述框768的这一示例定义中,当样本条目名称为‘lhv1’时,array_completeness的默认和强制值对于所有类型的参数集的阵列为4,对于所有其它类型为0。当样本条目名称为‘lhe1’时,array_completeness的默认值对于所有阵列为0。
图8是图示根据本公开的技术的用于处理视频数据的示例方法的流程图。虽然关于图1的目的地设备116进行了描述,但是应该理解的是,其它设备可以被配置为执行类似于图8的方法。
目的地设备116可以被配置为接收用于对视频数据的比特流进行解码的配置记录(800)。用于比特流的配置记录可以包括工具集指示语法元素,该工具集指示语法元素包括从一组视频解码工具中识别对与配置记录相关联的比特流进行解码所需要的工具的信息。基于配置记录中的工具集指示语法元素,目的地设备116可以确定是否取回与配置记录相关联的比特流(802)。然后,目的地设备116可以取回比特流(804)。目的地设备116可以将比特流输出到视频解码器以进行解码(806)。目的地设备116可以另外或可替代地接收包括键值对的MIME类型参数,其中,键指示识别视频解码工具的MIME类型,并且值从视频解码工具识别对比特流进行解码所需要的工具。视频数据的比特流可以包括一个或多个参数集,并且可以在一个或多个参数集的至少一个中启用在配置记录中识别为对比特流进行解码所需要的每个工具。
在文件格式信息的配置框中发信号通知工具集指示语法元素。包括识别对与配置记录相关联的比特流进行解码所需要的工具的信息的工具集指示语法元素可以识别对与配置记录相关联的比特流进行解码所需的所有工具。工具集指示语法元素可以是无符号的32位整数值,其中无符号的32位整数值的每一位对应于用于对比特流进行解码的唯一工具。
可以根据必要EVC标准来格式化配置记录。用于比特流的配置记录可以在工具集指示语法元素之前包括配置文件语法元素和/或级别语法元素。用于比特流的配置记录可以在工具集指示语法元素之后包括色度格式语法元素。
应该认识到,取决于示例,本文中描述的任何技术的某些动作或事件可以以不同的序列执行,可以被一起添加、合并或省去(例如,不是所有描述的动作或事件是实践这些技术所必须的)。此外,在某些示例中,动作或事件可以,例如通过多线程处理、中断处理、或多个处理器并发地而不是顺序地执行。
以下条款表示上述系统和技术的示例实现。
条款1。一种处理视频流或视频文件的方法,该方法包括:接收用于对视频数据的比特流进行解码的配置记录,其中用于比特流的配置记录包括工具集指示语法元素,该工具集指示语法元素包括信息,该信息从一组视频解码工具中识别对该配置记录相关联的比特流进行解码所需要的工具;基于该工具集指示语法元素,确定是否取回与配置记录关联的比特流;以及基于要取回与配置记录相关联的比特流的确定,取回该比特流并将该比特流输出至视频解码器进行解码。
条款2。条款1的方法,还包括:接收包括键值对的多用途互联网邮件扩展(MIME)类型参数,其中,所述键指示MIME类型识别视频解码工具,并且所述值从视频解码工具中识别对比特流进行解码所需要的工具。
条款3。条款1或2的方法,其中,视频数据的比特流包括一个或多个参数集,并且其中,在一个或多个参数集的至少一个中启用在配置记录中被识别为对比特流进行解码所需要的每一个工具。
条款4。条款1-3的任何一个的方法,其中,包括识别对与配置记录相关联的比特流进行解码所需要的工具的信息的工具集指示语法元素,识别对与配置记录相关联的比特流进行解码所需要的所有工具。
条款5。条款1-4的任何一个的方法,其中,根据基本视频编码(EVC)标准来格式化配置记录。
条款6。条款1-5的任何一个的方法,其中,在文件格式信息的配置框中发信号通知工具集指示语法元素。
条款7。条款1-6的任何一个的方法,其中,工具集指示语法元素包括无符号的32位整数值。
条款8。条款7的方法,其中,无符号的32位整数值的每一位对应于用于对比特流进行解码的唯一工具。
条款9。条款1-8的任何一个的方法,其中,用于比特流的配置记录在工具集指示语法元素之前包括配置文件语法元素。
条款10。条款1-9的任何一个的方法,其中,用于比特流的配置记录在工具集指示语法元素之前包括级别语法元素。
条款11。条款1-10的任何一个的方法,其中,用于比特流的配置记录在工具集指示语法元素之后包括色度格式语法元素。
条款12。条款1-11的任何一个的方法,其中,配置记录包括文件格式级别数据,该文件格式级别数据将视频编码层(VCL)级别编码的媒体数据封装在视频数据的比特流中,其中,VCL级别编码的媒体数据包括一个或多个参数集,并且其中,在该一个或多个参数集的至少一个中启用在配置记录中识别为对比特流进行解码所需要的每一个工具。
条款13。一种用于处理视频数据的设备,该设备包括:存储器;以及一个或多个处理器,该一个或多个处理器在电路中实现,耦合到存储器,并且被配置为:接收用于对视频数据的比特流进行解码的配置记录,其中用于比特流的配置记录包括工具集指示语法元素,该工具集指示语法元素包括信息,该信息从一组视频解码工具中识别对该配置记录相关联的比特流进行解码所需要的工具;基于该工具集指示语法元素,确定是否取回与配置记录关联的比特流;以及基于要取回与配置记录相关联的比特流的确定,取回该比特流并将该比特流输出至视频解码器进行解码。
条款14。条款13的设备,其中,所述一个或多个处理器还被配置为:接收包括键值对的多用途互联网邮件扩展(MIME)类型参数,其中,所述键指示MIME类型识别视频解码工具,并且所述值从视频解码工具中识别对比特流进行解码所需要的工具。
条款15。条款13或14的设备,其中,视频数据的比特流包括一个或多个参数集,并且其中,在一个或多个参数集的至少一个中启用在配置记录中被识别为对比特流进行解码所需要的每一个工具。
条款16。条款13-15的任何一个的设备,其中,包括识别对与配置记录相关联的比特流进行解码所需要的工具的信息的工具集指示语法元素识别对与配置记录相关联的比特流进行解码所需要的所有工具。
条款17。条款13-16的任何一个的设备,其中,根据基本视频编码(EVC)标准来格式化配置记录。
条款18。条款13-17的任何一个的设备,其中,在文件格式信息的配置框中发信号通知工具集指示语法元素。
条款19。条款13-15的任何一个的设备,其中,工具集指示语法元素包括无符号的32位整数值。
条款20。条款19的任何一个的设备,其中,无符号的32位整数值的每一位对应于用于对比特流进行解码的唯一工具。
条款21。条款13-20的任何一个的设备,其中,用于比特流的配置记录在工具集指示语法元素之前包括配置文件语法元素。
条款22。条款13-21的任何一个的设备,其中,用于比特流的配置记录在工具集指示语法元素之前包括级别语法元素。
条款23。条款13-22的任何一个的设备,其中,用于比特流的配置记录在工具集指示语法元素之后包括色度格式语法元素。
条款24。条款13-23的任何一个的设备,其中,配置记录包括文件格式级别数据,该文件格式级别数据将视频编码层(VCL)级别编码的媒体数据封装在视频数据的比特流中,其中,VCL级别编码的媒体数据包括一个或多个参数集,并且其中,在该一个或多个参数集的至少一个中启用在配置记录中识别为对比特流进行解码所需要的每一个工具。
条款25。一种存储有指令的计算机可读存储介质,该指令由一个或多个处理器执行时,使一个或多个处理器:接收用于对视频数据的比特流进行解码的配置记录,其中用于比特流的配置记录包括工具集指示语法元素,该工具集指示语法元素包括信息,该信息从一组视频解码工具中识别对该配置记录相关联的比特流进行解码所需要的工具;基于该工具集指示语法元素,确定是否取回与配置记录关联的比特流;以及基于要取回与配置记录相关联的比特流的确定,取回该比特流并将该比特流输出至视频解码器进行解码。
条款26。条款25的计算机可读存储介质,其中,所述指令使一个或多个处理器:接收包括键值对的多用途互联网邮件扩展(MIME)类型参数,其中,所述键指示MIME类型识别视频解码工具,并且所述值从视频解码工具中识别对比特流进行解码所需要的工具。
条款27。条款25或26的计算机可读存储介质,其中,视频数据的比特流包括一个或多个参数集,并且其中,在一个或多个参数集的至少一个中启用在配置记录中被识别为对比特流进行解码所需要的每一个工具。
条款28。条款25-27的任何一个的计算机可读存储介质,其中,包括识别对与配置记录相关联的比特流进行解码所需要的工具的信息的工具集指示语法元素识别对与配置记录相关联的比特流进行解码所需要的所有工具。
条款29。条款25-28的任何一个的计算机可读存储介质,其中,配置记录包括文件格式级别数据,该文件格式级别数据将视频编码层(VCL)级别编码的媒体数据封装在视频数据的比特流中,其中,VCL级别编码的媒体数据包括一个或多个参数集,并且其中,在该一个或多个参数集的至少一个中启用在配置记录中识别为对比特流进行解码所需要的每一个工具。
条款30。一种用于处理视频流或视频文件的装置,该装置包括:用于接收用于对视频数据的比特流进行解码的配置记录的部件,其中用于比特流的配置记录包括工具集指示语法元素,该工具集指示语法元素包括信息,该信息从一组视频解码工具中识别对该配置记录相关联的比特流进行解码所需要的工具;用于基于该工具集指示语法元素、确定是否取回与配置记录关联的比特流的部件;用于基于要取回与配置记录相关联的比特流的确定、取回该比特流的部件;以及用于将该比特流输出至视频解码器进行解码的部件。
条款31。一种处理视频数据的方法,该方法包括:接收用于根据基本视频编码(EVC)标准对视频数据的比特流进行解码的配置记录,其中用于比特流的配置记录包括工具集指示语法元素,该工具集指示语法元素包括对该配置记录相关联的比特流进行解码所需要的所有工具的信息;基于该工具集指示语法元素,确定是否取回与配置记录关联的比特流;以及基于要取回与配置记录相关联的比特流的确定,取回该比特流并将该比特流输出至视频解码器进行解码。
条款32。一种处理视频数据的方法,该方法包括:确定用于由视频编码器根据基本视频编码(EVC)标准生成的视频数据的比特流的配置记录,其中,用于该比特流的配置记录包括用于对该比特流进行解码的信息,并且其中,配置记录包括工具集指示语法元素,该工具集指示语法元素包括对与配置记录相关联的比特流进行解码所需要的所有工具的信息;以及发信号通知该配置记录。
条款33。条款31或32的方法,其中,在文件格式信息的配置框中发信号通知工具集指示语法元素。
条款34。一种用于处理视频数据的设备,该设备包括:处理电路,被配置为执行条款1-3的任何一个或组合的方法。
条款35。条款34的设备,还包括存储器,用于存储视频数据。
条款36。条款34和35的任何一个的设备,还包括显示器,被配置为显示经解码视频数据。
条款37。条款34-36的任何一个的设备,其中,该设备包括相机、计算机、移动设备、广播接收机设备或机顶盒中的一个或多个。
条款38。一种其上存储有指令的计算机可读存储介质,该指令在被执行时使一个或多个处理器执行条款31-33的任何一个的方法。
条款39。一种用于处理视频数据的设备,该设备包括用于执行条款31-33的任何一个的方法的部件。
在一个或多个示例中,可以以硬件、软件、固件或其任意组合来实现所描述的功能。如果以软件实现,则功能可以作为一个或多个指令或代码存储在计算机可读介质上或通过计算机可读介质传输,并由基于硬件的处理单元执行。计算机可读介质可以包括计算机可读存储介质,其对应于诸如数据存储介质之类的有形介质,或者通信介质,包括例如根据通信协议来促进将计算机程序从一个地方转移到另一个地方的任何介质。以这种方式,计算机可读介质通常可以对应于(1)非暂时性的有形计算机可读存储介质,或者(2)诸如信号或载波之类的通信介质。数据存储介质可以是可以由一个或多个计算机或一个或多个处理器访问以检索指令、代码和/或数据结构用于实现本公开中描述的技术的任何可用介质。计算机程序产品可以包括计算机可读介质。
作为示例而非限制,这种计算机可读存储介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储、或其它磁性存储设备、闪存、或可以用于以指令或数据结构形式存储所需程序代码并且可以由计算机访问的任何其它介质。而且,任何连接都适当地称为计算机可读介质。例如,如果使用同轴电缆、光缆、双绞线、数字订户线(DSL)或无线技术(诸如红外、无线电和微波)从网站、服务器或其它远程源发送指令,则介质的定义包括同轴电缆、光缆、双绞线、DSL或诸如红外、无线电和微波之类的无线技术。然而,应当理解,计算机可读存储介质和数据存储介质不包括连接、载波、信号或其它暂时性介质,而是针对非暂时性有形存储介质。如本申请中使用的磁盘和光盘包括致密盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中,磁盘通常以磁性方式再现数据,而光盘用激光光学地再现数据。上述的组合也应包括在计算机可读介质的范围内。
指令可以由一个或多个处理器执行,诸如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它等效集成的或分立逻辑电路。因此,如本申请中所使用的术语“处理器”和“处理电路”可以是指任何前述结构或适合于实现本申请中描述的技术的任何其它结构。另外,在一些方面,本申请中描述的功能可以在被配置用于编码和解码的专用硬件和/或软件模块内提供,或合并在组合编解码器中。同样,该技术可以在一个或多个电路或逻辑元件中完全实现。
本公开的技术可以在包括无线手机、集成电路(IC)或一组IC(例如,芯片集)的多种设备或装置中实现。在本公开中描述各种组件、模块或单元以强调被配置为执行所公开技术的设备的功能方面,但不一定需要由不同硬件单元来实现。而是,如上所述,各种单元可以组合在编解码器硬件单元中,或者由互操作硬件单元的集合来提供,包括与合适的软件和/或固件结合的如上所述的一个或多个处理器。
已经描述了各种示例。这些和其它示例在所附权利要求的范围内。

Claims (30)

1.一种处理视频流或视频文件的方法,所述方法包括:
接收用于对视频数据的比特流进行解码的配置记录,其中,用于所述比特流的所述配置记录包括工具集指示语法元素,所述工具集指示语法元素包括信息,所述信息从一组视频解码工具中识别对与所述配置记录相关联的所述比特流进行解码所需的工具;
基于所述工具集指示语法元素,确定是否取回与所述配置记录相关联的所述比特流;以及
基于取回与所述配置记录相关联的所述比特流的所述确定,取回所述比特流并将所述比特流输出到视频解码器以进行解码。
2.根据权利要求1所述的方法,还包括:
接收包括键值对的多用途互联网邮件扩展(MIME)类型参数,其中,所述键指示所述MIME类型识别所述视频解码工具,并且所述值从所述视频解码工具中识别对所述比特流进行解码所需要的所述工具。
3.根据权利要求1所述的方法,其中,所述视频数据的比特流包括一个或多个参数集,并且其中,在所述一个或多个参数集的至少一个中启用在所述配置记录中被识别为对所述比特流进行解码所需要的所述工具的每一个。
4.根据权利要求1所述的方法,其中,包括识别对与所述配置记录相关联的所述比特流进行解码所需要的所述工具的信息的所述工具集指示语法元素识别对与所述配置记录相关联的所述比特流进行解码所需要的所有工具。
5.根据权利要求1所述的方法,其中,根据基本视频编码(EVC)标准来格式化所述配置记录。
6.根据权利要求1所述的方法,其中,在文件格式信息的配置框中发信号通知所述工具集指示语法元素。
7.根据权利要求1所述的方法,其中,所述工具集指示语法元素包括无符号的32位整数值。
8.根据权利要求7所述的方法,其中,所述无符号的32位整数值的每一位对应于用于对所述比特流进行解码的唯一工具。
9.根据权利要求1所述的方法,其中,用于所述比特流的所述配置记录在所述工具集指示语法元素之前包括配置文件语法元素。
10.根据权利要求1所述的方法,其中,用于所述比特流的所述配置记录在所述工具集指示语法元素之前包括级别语法元素。
11.根据权利要求1所述的方法,其中,用于所述比特流的所述配置记录在所述工具集指示语法元素之后包括色度格式语法元素。
12.根据权利要求1所述的方法,其中,所述配置记录包括文件格式级别数据,所述文件格式级别数据将视频编码层(VCL)级别编码的媒体数据封装在所述视频数据的所述比特流中,其中,所述VCL级别编码的媒体数据包括一个或多个参数集,并且其中,在所述一个或多个参数集的至少一个中启用在所述配置记录中识别为对所述比特流进行解码所需要的所述工具的每一个。
13.一种用于处理视频数据的设备,所述设备包括:
存储器;以及
一个或多个处理器,所述一个或多个处理器在电路中实现,耦合到所述存储器,并且被配置为:
接收用于对视频数据的比特流进行解码的配置记录,其中,用于所述比特流的所述配置记录包括工具集指示语法元素,所述工具集指示语法元素包括信息,所述信息从一组视频解码工具中识别对与所述配置记录相关联的所述比特流进行解码所需的工具;
基于所述工具集指示语法元素,确定是否取回与所述配置记录相关联的所述比特流;以及
基于取回与所述配置记录相关联的所述比特流的所述确定,取回所述比特流并将所述比特流输出到视频解码器以进行解码。
14.根据权利要求13所述的设备,其中,所述一个或多个处理器还被配置为:
接收包括键值对的多用途互联网邮件扩展(MIME)类型参数,其中,所述键指示所述MIME类型识别所述视频解码工具,并且所述值从所述视频解码工具中识别对所述比特流进行解码所需要的所述工具。
15.根据权利要求13所述的设备,其中,所述视频数据的比特流包括一个或多个参数集,并且其中,在所述一个或多个参数集的至少一个中启用在所述配置记录中被识别为对所述比特流进行解码所需要的所述工具的每一个。
16.根据权利要求13所述的设备,其中,包括识别对与所述配置记录相关联的所述比特流进行解码所需要的所述工具的信息的所述工具集指示语法元素识别对与所述配置记录相关联的所述比特流进行解码所需要的所有工具。
17.根据权利要求13所述的设备,其中,根据基本视频编码(EVC)标准来格式化所述配置记录。
18.根据权利要求13所述的设备,其中,在文件格式信息的配置框中发信号通知所述工具集指示语法元素。
19.根据权利要求13所述的设备,其中,所述工具集指示语法元素包括无符号的32位整数值。
20.根据权利要求19所述的设备,其中,所述无符号的32位整数值的每一位对应于用于对所述比特流进行解码的唯一工具。
21.根据权利要求13所述的设备,其中,用于所述比特流的所述配置记录在所述工具集指示语法元素之前包括配置文件语法元素。
22.根据权利要求13所述的设备,其中,用于所述比特流的所述配置记录在所述工具集指示语法元素之前包括级别语法元素。
23.根据权利要求13所述的设备,其中,用于所述比特流的所述配置记录在所述工具集指示语法元素之后包括色度格式语法元素。
24.根据权利要求13所述的设备,其中,所述配置记录包括文件格式级别数据,所述文件格式级别数据将视频编码层(VCL)级别编码的媒体数据封装在所述视频数据的所述比特流中,其中,所述VCL级别编码的媒体数据包括一个或多个参数集,并且其中,在所述一个或多个参数集的至少一个中启用在所述配置记录中识别为对所述比特流进行解码所需要的所述工具的每一个。
25.一种存储有指令的计算机可读存储介质,所述指令由一个或多个处理器执行时,促使所述一个或多个处理器:
接收用于对视频数据的比特流进行解码的配置记录,其中,用于所述比特流的所述配置记录包括工具集指示语法元素,所述工具集指示语法元素包括信息,所述信息从一组视频解码工具中识别对与所述配置记录相关联的所述比特流进行解码所需的工具;
基于所述工具集指示语法元素,确定是否取回与所述配置记录相关联的所述比特流;以及
基于取回与所述配置记录相关联的所述比特流的所述确定,取回所述比特流并将所述比特流输出到视频解码器以进行解码。
26.根据权利要求25所述的计算机可读存储介质,其中,所述指令促使所述一个或多个处理器:
接收包括键值对的多用途互联网邮件扩展(MIME)类型参数,其中,所述键指示所述MIME类型识别所述视频解码工具,并且所述值从所述视频解码工具中识别对所述比特流进行解码所需要的所述工具。
27.根据权利要求25所述的计算机可读存储介质,其中,所述视频数据的比特流包括一个或多个参数集,并且其中,在所述一个或多个参数集的至少一个中启用在所述配置记录中被识别为对所述比特流进行解码所需要的所述工具的每一个。
28.根据权利要求25所述的计算机可读存储介质,其中,包括识别对与所述配置记录相关联的所述比特流进行解码所需要的所述工具的信息的所述工具集指示语法元素识别对与所述配置记录相关联的所述比特流进行解码所需要的所有工具。
29.根据权利要求25所述的计算机可读存储介质,其中,所述配置记录包括文件格式级别数据,所述文件格式级别数据将视频编码层(VCL)级别编码的媒体数据封装在所述视频数据的所述比特流中,其中,所述VCL级别编码的媒体数据包括一个或多个参数集,并且其中,在所述一个或多个参数集的至少一个中启用在所述配置记录中识别为对所述比特流进行解码所需要的所述工具的每一个。
30.一种用于处理视频流或视频文件的装置,所述装置包括:
用于接收用于对视频数据的比特流进行解码的配置记录的部件,其中,用于所述比特流的所述配置记录包括工具集指示语法元素,所述工具集指示语法元素包括信息,所述信息从一组视频解码工具中识别对与所述配置记录相关联的所述比特流进行解码所需的工具;
用于基于所述工具集指示语法元素、确定是否取回与所述配置记录相关联的所述比特流的部件;
用于基于取回与所述配置记录相关联的所述比特流的所述确定、取回所述比特流的部件;以及
用于将所述比特流输出到视频解码器以进行解码的部件。
CN202180008003.8A 2020-01-08 2021-01-08 用于视频编码的视频数据的存储和传递 Pending CN114930857A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202062958561P 2020-01-08 2020-01-08
US62/958,561 2020-01-08
US17/143,611 2021-01-07
US17/143,611 US11356706B2 (en) 2020-01-08 2021-01-07 Storage and delivery of video data for video coding
PCT/US2021/012641 WO2021142219A1 (en) 2020-01-08 2021-01-08 Storage and delivery of video data for video coding

Publications (1)

Publication Number Publication Date
CN114930857A true CN114930857A (zh) 2022-08-19

Family

ID=76654781

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180008003.8A Pending CN114930857A (zh) 2020-01-08 2021-01-08 用于视频编码的视频数据的存储和传递

Country Status (15)

Country Link
US (2) US11356706B2 (zh)
EP (1) EP4088471A1 (zh)
JP (1) JP2023517440A (zh)
KR (1) KR20220124168A (zh)
CN (1) CN114930857A (zh)
AU (1) AU2021205938A1 (zh)
BR (1) BR112022013247A2 (zh)
CA (1) CA3164786A1 (zh)
CL (1) CL2022001830A1 (zh)
CO (1) CO2022009480A2 (zh)
IL (1) IL293683A (zh)
MX (1) MX2022008364A (zh)
TW (1) TW202133614A (zh)
WO (1) WO2021142219A1 (zh)
ZA (1) ZA202206888B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11303935B2 (en) * 2019-07-10 2022-04-12 Qualcomm Incorporated Deriving coding system operational configuration
US11356706B2 (en) 2020-01-08 2022-06-07 Qualcomm Incorporated Storage and delivery of video data for video coding
JP7473656B2 (ja) 2020-01-09 2024-04-23 テレフオンアクチーボラゲット エルエム エリクソン(パブル) ピクチャヘッダ存在
US20220337855A1 (en) * 2021-04-20 2022-10-20 Samsung Electronics Co., Ltd. Operation of video decoding engine for evc

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9241167B2 (en) 2012-02-17 2016-01-19 Microsoft Technology Licensing, Llc Metadata assisted video decoding
US9380289B2 (en) 2012-07-20 2016-06-28 Qualcomm Incorporated Parameter sets in video coding
US10129566B2 (en) 2015-03-16 2018-11-13 Microsoft Technology Licensing, Llc Standard-guided video decoding performance enhancements
US10999605B2 (en) * 2017-01-10 2021-05-04 Qualcomm Incorporated Signaling of important video information in file formats
BR112020026618A2 (pt) 2018-06-26 2021-03-30 Huawei Technologies Co., Ltd. Projetos de sintaxe de alto nível para codificação de nuvem de pontos
GB2618718B (en) * 2019-03-20 2024-03-13 V Nova Int Ltd Low complexity enhancement video coding
US20210329007A1 (en) * 2019-12-05 2021-10-21 William Michael Pearce Method of Using Sequential Email Numbering to Detect an Email Phishing Attempt or Fraudulent Email Within an Email Domain
KR20220109464A (ko) * 2020-01-03 2022-08-04 후아웨이 테크놀러지 컴퍼니 리미티드 유연한 프로파일 구성의 인코더, 디코더 및 대응하는 방법들
US11356706B2 (en) 2020-01-08 2022-06-07 Qualcomm Incorporated Storage and delivery of video data for video coding
US20230209091A1 (en) * 2020-06-17 2023-06-29 Intel Corporation Method, apparatus, and articles of manufacture to generate packed video frames for a volumetric video bitstream and an immersive video bitstream

Also Published As

Publication number Publication date
US20220279213A1 (en) 2022-09-01
AU2021205938A1 (en) 2022-07-07
WO2021142219A1 (en) 2021-07-15
CL2022001830A1 (es) 2023-02-10
MX2022008364A (es) 2022-08-04
BR112022013247A2 (pt) 2022-09-06
EP4088471A1 (en) 2022-11-16
KR20220124168A (ko) 2022-09-13
CO2022009480A2 (es) 2022-07-29
ZA202206888B (en) 2024-02-28
TW202133614A (zh) 2021-09-01
US11356706B2 (en) 2022-06-07
US20210211735A1 (en) 2021-07-08
US11706460B2 (en) 2023-07-18
IL293683A (en) 2022-08-01
CA3164786A1 (en) 2021-07-15
JP2023517440A (ja) 2023-04-26

Similar Documents

Publication Publication Date Title
CN105637885B (zh) 一种处理多层视频数据的方法、视频装置和计算机可读数据存储媒体
CN107750458B (zh) 视频编码方法、编解码装置及介质
US10306253B2 (en) Signaling of parameter sets in files of multi-layer bitstreams
CN110178379B (zh) 以文件格式用信号表示重要视频信息的方法和设备
US11706460B2 (en) Storage and delivery of video data for video coding
TW202133616A (zh) 視訊編解碼中的畫面標頭訊框內隨機存取畫面和漸進解碼器刷新訊號傳遞
TW201735608A (zh) 用於產生對視訊之顏色再映射資訊之補充增強資訊訊息之方法及系統
CN114270868A (zh) 用于在视频编码中处理随机访问图片的装置、方法和计算机程序
US20230328261A1 (en) Media file processing method and device therefor
CN116601963A (zh) 生成/接收包括nal单元阵列信息的媒体文件的方法和装置及发送媒体文件的方法
KR20230124964A (ko) 레이어 정보를 포함하는 미디어 파일 생성/수신 방법,장치 및 미디어 파일 전송 방법
CN116868575A (zh) 生成/接收包括nal单元信息的媒体文件的方法和装置及发送媒体文件的方法
KR20230175242A (ko) Eos 샘플 그룹에 기반한 미디어 파일 생성/수신 방법,장치 및 미디어 파일 전송 방법
CN116569557A (zh) 支持以样本为单位的随机访问的媒体文件生成/接收方法和设备及发送媒体文件的方法
CN117223290A (zh) 用于基于eos样本组生成/接收媒体文件的方法和设备以及用于发送媒体文件的方法
CN116235502A (zh) 生成/接收包括输出层集合信息的媒体文件的方法和设备及发送媒体文件的方法
CN116941246A (zh) 用信号通知子画面id信息的媒体文件生成/接收方法和装置以及存储媒体文件的计算机可读记录介质

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40079979

Country of ref document: HK