CN110089126B - 处理视频数据的方法、设备及计算机可读媒体 - Google Patents

处理视频数据的方法、设备及计算机可读媒体 Download PDF

Info

Publication number
CN110089126B
CN110089126B CN201880005215.9A CN201880005215A CN110089126B CN 110089126 B CN110089126 B CN 110089126B CN 201880005215 A CN201880005215 A CN 201880005215A CN 110089126 B CN110089126 B CN 110089126B
Authority
CN
China
Prior art keywords
scheme
box
type
video data
media
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
CN201880005215.9A
Other languages
English (en)
Other versions
CN110089126A (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.)
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 CN110089126A publication Critical patent/CN110089126A/zh
Application granted granted Critical
Publication of CN110089126B publication Critical patent/CN110089126B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • 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/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/124Quantisation
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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
    • 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/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/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
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • 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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • 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

Abstract

本发明提供用于处理视频数据且处理一或多个媒体格式文件的技术及系统。举例来说,可获得且处理视频数据,以产生媒体格式文件,所述媒体格式文件包含所述视频数据及与所述视频数据相关联的限制方案信息框。所述限制方案信息框包含多个方案类型框,所述多个方案类型框识别用于处理所述视频数据所需的多个限制方案类型。在另一实例中,获得包含所述视频数据及与所述视频数据相关联的所述限制方案信息框的所述媒体格式文件。可剖析所述媒体格式文件,且可根据由所述多个方案类型框识别的所述多个限制方案类型而处理所述视频数据。

Description

处理视频数据的方法、设备及计算机可读媒体
技术领域
本申请案涉及用于视频的限制方案。更特定来说,本申请案涉及用于提供媒体文件格式的限制方案的改进式设计的系统及方法。
背景技术
许多装置及系统允许处理且输出视频数据以供消耗。数字视频数据包含大量数据以满足消费者及视频提供商提供者的需求。举例来说,视频数据的消费者需要具有最优质量(具有高保真度、剖析度、帧速率等等)的视频。结果,满足此些需求所需的大量视频数据对处理及存储视频数据的通信网络及装置造成负担。
各种视频译码技术可用以压缩视频数据。视频译码是根据一或多个视频译码标准执行。举例来说,视频译码标准包含高效视频译码(high-efficiency video coding,HEVC)、高级视频译码(advanced video coding,AVC)、活动图片专家组(moving pictureexperts group,MPEG)译码等等。视频译码通常使用利用存在于视频图像或序列中的冗余的预测方法(例如帧间预测、帧内预测等等)。视频译码技术的重要目标是将视频数据压缩成使用较低位速率的形式,同时避免视频质量的降级或使视频质量的降级最小化。随着不断演进的视频服务变得可用,需要具有优选译码效率的编码技术。
发明内容
在一些实例中,在本文中描述了用于提供媒体文件格式的限制方案的改进式设计的系统及方法。所述媒体文件格式可包含ISO基本媒体文件格式(ISOBMFF)或其它适合的媒体文件格式。ISOBMFF为媒体文件格式的一个实例,其包含限制方案设计。ISOBMFF 中的所述限制方案设计用于处置以下情形:所述媒体格式文件的原创者在处理与所述媒体格式文件相关联的媒体内容(例如视频位流)时需要通过播放器或显现器执行某些动作。限制方案使得播放器能够检查媒体格式文件以易于确定用于显现媒体内容的此类要求,且可防止旧版播放器下载、显现及对需要进一步处理的文件进行解码。旧版播放器可包含未被设计成处理某些媒体内容的播放器装置,这是因为例如所述播放器仅能够播放在无所需处理的情况下经译码的视频内容。限制方案类型的说明性实例包含:立体视频帧封装布置的限制方案类型、虚拟实境视频的限制方案类型等等。
对所述ISOBMFF的所述限制方案设置各种限制。举例来说,可包含于适用于某些媒体内容(例如与所述媒体格式文件的样本项相关联的媒体内容)中的媒体格式文件的部分的限制方案的数目限于仅一个限制方案。此类限制不允许同时将多种类型的限制方案应用于与一个样本项相关联的相同媒体内容。样本项可与视频文件的一或多个样本相关联。举例来说,各媒体流可含于专用于媒体流的媒体类型(例如视频、音频或其它媒体类型)的播放轨(属于所述媒体格式文件)中。所述媒体流可由样本项参数化,所述样本项含有媒体类型(指示对所述媒体流进行解码所需的解码器的类型)的名称及所需解码器的任何参数化。在一个说明性实例中,对ISOBMFF中的所述限制方案的限制防止以下可能性:将立体视频布置的所述限制方案及虚拟实境视频的所述限制方案应用于与一个样本项相关联的相同视频内容。然而,多个限制方案应用于的视频内容,例如帧封装立体虚拟实境视频,可能且极有可能处于真实世界媒体应用程序中。
本文中所描述的技术及系统可产生且处理媒体格式文件(根据所述媒体文件格式),所述媒体格式文件包含可同时应用于与一个样本项相关联的相同媒体内容的多个限制方案。术语“受限制方案”与“限制方案”可互换使用。所述改进式设计适用于任何类型的视频编解码器。在一些实例中,多个方案类型框可包含于含于媒体格式文件的样本项中的限制方案信息框中。方案类型框定义特定限制的准确性质。所述多个方案类型框允许识别处理与所述样本项相关联的媒体内容所需的多个限制方案的能力。方案类型框也可被称作兼容方案类型框。在一些状况下,多个方案信息框也可包含于所述限制方案信息框中。对于特定方案所需的数据存储于方案信息框中。举例来说,一个方案信息框可包含于各方案类型框的限制方案信息框中。在一些实例中,多个限制方案信息框可包含于样本项容器中。
根据至少一个实例,提供一种处理视频数据的方法。所述方法包括获得所述视频数据。所述方法进一步包括产生媒体格式文件,所述媒体格式文件包含所述视频数据及与所述视频数据相关联的限制方案信息框。所述限制方案信息框包含多个方案类型框。所述多个方案类型框识别用于处理所述视频数据所需的多个限制方案类型。
在另一实例中,提供一种用于处理视频数据的设备,其包含:经配置以存储视频数据的存储器;及处理器。所述处理器经配置以且可获得所述视频数据。所述处理器经进一步配置以且可产生媒体格式文件,所述媒体格式文件包含所述视频数据及与所述视频数据相关联的限制方案信息框。所述限制方案信息框包含多个方案类型框。所述多个方案类型框识别用于处理所述视频数据所需的多个限制方案类型。
在另一实例中,提供一种上面存储有指令的非暂时性计算机可读媒体,所述指令在由一或多个处理器执行时使得所述一或多个处理器:获得所述视频数据;及产生媒体格式文件,所述媒体格式文件包含所述视频数据及与所述视频数据相关联的限制方案信息框,所述限制方案信息框包含多个方案类型框,其中所述多个方案类型框识别用于处理所述视频数据所需的多个限制方案类型。
在另一实例中,提供一种用于处理视频数据的设备。所述设备包含用于获得所述视频数据的装置。所述设备进一步包含用于产生媒体格式文件的装置,所述媒体格式文件包含所述视频数据及与所述视频数据相关联的限制方案信息框。所述限制方案信息框包含多个方案类型框。所述多个方案类型框识别用于处理所述视频数据所需的多个限制方案类型。
在一些方面中,所述多个方案类型框中的各方案类型框识别用于处理所述视频数据所需的不同限制方案类型。
在一些方面中,所述视频数据与所述媒体格式文件的一个样本项相关联。
在一些方面中,所述多个方案类型框中的方案类型框识别由所述方案类型框识别的限制方案类型的版本。
在一些方面中,所述多个方案类型框中的方案类型框包含识别符,所述识别符识别实施由所述方案类型框识别的限制方案类型所需的数据源。
在一些方面中,所述限制方案信息框进一步包含多个方案信息框。所述多个方案信息框中的方案信息框包含由所述多个方案类型框中的方案类型框识别的限制方案类型所需的数据。
在一些方面中,使用ISO基本媒体文件格式(ISOBMFF)或使用从所述ISO基本媒体文件格式导出的媒体文件格式产生所述媒体格式文件。
在一些方面中,上文所描述的所述方法、所述设备及所述计算机可读媒体可进一步包括发射所述媒体格式文件。
在一些方面中,上文所描述的所述方法、所述设备及所述计算机可读媒体可进一步包括存储所述媒体格式文件。
在一些方面中,所述设备包括具有用于捕捉图片的摄影机的移动装置。
根据至少一个其它实例,提供一种处理一或多个媒体格式文件的方法。所述方法包括获得媒体格式文件,所述媒体格式文件包含视频数据及与所述视频数据相关联的限制方案信息框。所述限制方案信息框包含多个方案类型框。所述多个方案类型框识别用于处理所述视频数据所需的多个限制方案类型。所述方法进一步包括剖析所述媒体格式文件;及根据由所述多个方案类型框识别的所述多个限制方案类型而处理所述视频数据。
在另一实例中,提供一种处理一或多个媒体格式文件的设备,所述设备包含经配置以存储所述视频数据的存储器及处理器。所述处理器经配置以且可获得媒体格式文件,所述媒体格式文件包含视频数据及与所述视频数据相关联的限制方案信息框。所述限制方案信息框包含多个方案类型框。所述多个方案类型框识别用于处理所述视频数据所需的多个限制方案类型。所述处理器经进一步配置以且可剖析所述媒体格式文件,且根据由所述多个方案类型框识别的所述多个限制方案类型而处理所述视频数据。
在另一实例中,提供一种上面存储有指令的非暂时性计算机可读媒体,所述指令在由一或多个处理器执行时使得所述一或多个处理器:获得媒体格式文件,所述媒体格式文件包含视频数据及与所述视频数据相关联的限制方案信息框,所述限制方案信息框包含多个方案类型框,其中所述多个方案类型框识别用于处理所述视频数据所需的多个限制方案类型;剖析所述媒体格式文件;及根据由所述多个方案类型框识别的所述多个限制方案类型而处理所述视频数据。
在另一实例中,提供一种用于处理一或多个媒体格式文件的设备。所述设备包含用于获得媒体格式文件的装置,所述媒体格式文件包含视频数据及与所述视频数据相关联的限制方案信息框。所述限制方案信息框包含多个方案类型框。所述多个方案类型框识别用于处理所述视频数据所需的多个限制方案类型。所述设备进一步包含用于剖析所述媒体格式文件的装置;及用于根据由所述多个方案类型框识别的所述多个限制方案类型而处理所述视频数据的装置。
在一些方面中,所述多个方案类型框中的各方案类型框识别用于处理所述视频数据所需的不同限制方案类型。
在一些方面中,所述视频数据与所述媒体格式文件的一个样本项相关联。
在一些方面中,所述多个方案类型框中的方案类型框识别由所述方案类型框识别的限制方案类型的版本。
在一些方面中,所述多个方案类型框中的方案类型框包含识别符,所述识别符识别实施由所述方案类型框识别的限制方案类型所需的数据源。
在一些方面中,所述限制方案信息框进一步包含多个方案信息框。所述多个方案信息框中的方案信息框包含由所述多个方案类型框中的方案类型框识别的限制方案类型所需的数据。
在一些方面中,使用ISO基本媒体文件格式(ISOBMFF)或使用从所述ISO基本媒体文件格式导出的媒体文件格式产生所述媒体格式文件。
在一些方面中,上文所描述的所述方法、所述设备及所述计算机可读媒体可进一步包括对所述视频数据进行解码。举例来说,所述设备可包含用于对所述视频数据进行解码的解码器。
在一些方面中,上文所描述的所述方法、所述设备及所述计算机可读媒体可进一步包括显示经解码视频数据。举例来说,所述设备可包含用于显示经解码视频数据的显示器。
在一些方面中,所述设备包括具有用于捕捉图片的摄影机的移动装置。
此发明内容并不打算识别所主张主题的关键或基本特征,也不打算单独使用以确定所主张主题的范围。应参考此专利的整个说明书的适当部分、任何或所有图式及每一权利要求来理解主题。
在参考以下说明书、权利要求书及随附图式时,前述内容连同其它特征及实施例将变得更显而易见。
附图说明
下文参考如下图式详细描述本发明的说明性实施例:
图1是说明根据一些实例的编码装置及解码装置的实例的框图;
图2是说明根据一些实例的遵循ISO基本媒体文件格式(ISOBMFF)的实例文件结构的图式;
图3是说明根据一些实例的含有视频呈现的数据及元数据的ISO基本媒体文件(根据ISOBMFF格式化)的实例的图式;
图4是说明根据一些实例的可包含于ISO基本媒体文件中的媒体框的实例的图式;
图5是说明根据一些实例的用于处理视频数据的过程的实例的流程图;
图6是说明根据一些实例的用于处理一或多个媒体格式文件的过程的实例的流程图;
图7是说明根据一些实例的实例视频编码装置的框图;且
图8是说明根据一些实例的实例视频解码装置的框图。
具体实施方式
在下文提供本发明的某些方面及实施例。此些方面及实施例的一些可独立地应用并且其中的一些可以将对所属领域的技术人员显而易见的组合来应用。在以下描述中,出于解释的目的,阐述特定细节以便提供对本发明的实施例的透彻理解。然而,各种实施例可在无此些特定细节的情况下得以实践将为显而易见的。图式及描述不打算为限定性的。
随后描述仅提供示范性实施例且并不打算限制本发明的范围、可应用性或配置。实际上,示范性实施例的随后描述将为所属领域的技术人员提供能够实施示范性实施例的描述。应理解,可在不脱离如所附权利要求书中所阐述的本发明精神及范围的情况下对元件的功能及布置做出各种改变。
在以下描述中给出特定细节以提供对实施例的透彻理解。然而,所述领域的一般技术人员应了解,实施例可在无需此些具体细节的情况下实践。举例来说,电路、系统、网络、过程及其它组件可在块图形式中展示为组件以便在不必要细节下不与实施例混淆。在其它情况下,可在无不必要细节的情况下展示熟知电路、过程、算法、结构及技术以便避免混淆实施例。
而且,应注意,个别实施例可描述为被描绘为流程图(flowcart)、流程框图(flowdiagram)、数据流程图、结构图或框图的过程。尽管流程图可能将操作描述为顺序过程,但许多操作可并行地或同时加以执行。另外,操作的次序可重新布置。过程在其操作完成时终止,但可具有不包含于图中的额外步骤。过程可对应于方法、函数、程序、子例程、子程序等。当过程对应于函数时,其终止可对应于函数传回到呼叫函数或主函数。
术语“计算机可读媒体”包含但不限于便携式或非便携式存储装置、光存储装置,及能够存储、含有或携载指令及/或数据的各种其它媒体。计算机可读媒体可包含非暂时性媒体,其中可存储数据并且不包含载波及/或无线地或经由有线连接传播的暂时电子信号。非暂时性媒体的实例可包含但不限于磁盘或磁带、例如紧密光盘(compact disk,CD) 或数字化通用光盘(digital versatile disk,DVD)的光学存储媒体、快闪存储器、存储器或存储器装置。计算机可读媒体可具有存储于其上的程序代码及/或机器可执行指令,所述程序代码及/或机器可执行指令可表示程序、函数、子程序、程序、例程、子例程、模块、软件套件、类别或指令、数据结构或程序语句陈述式的任何组合。一个码段可通过传递及/或接收信息、数据、论证、参数或存储器内容耦合到另一码段或硬件电路。信息、引数、参数、数据等可经由包含存储器共享、消息传递、符记传递、网络发射等等的任何合适方式传递、转递或发射。
此外,可由硬件、软件、固件、中间软件、微码、硬件描述语言或其任何组合实施方法的实施例。当以软件、固件、中间软件或微码实施时,执行必要任务的程序代码或程序代码片段(例如计算机程序产品)可存储于计算机可读或机器可读媒体中。处理器可执行必要任务。
可捕捉视频内容且将其译码成经编码视频位流。媒体格式可用于囊封经译码视频。媒体格式的一个实例包含ISO基本媒体文件格式(ISO base media file format,ISOBMFF)。 ISOBMFF用作许多编解码器囊封格式的基础。连续媒体(例如音频及视频)、静态媒体(例如图像)以及元数据可存储于符合ISOBMFF的文件中。根据ISOBMFF结构化的文件可用于许多用途,包含本地媒体文件播放、远程文件的逐渐下载、用于经由HTTP的动态自适应流式传输(Dynamic Adaptive Streaming over HTTP,DASH)的片段、用于待流式传输的内容及所述内容的打包指令的容器、及接收到的实时媒体流的记录等等。
ISOBMFF包含在以下情况下使用的限制方案设计:媒体格式文件的创建者(例如原创者、生产者等等)在处理与媒体格式文件相关联的媒体内容(例如经编码视频位流)时需要通过播放器或显现器执行某些动作。如下文更详细地描述,本文中所描述的一或多个系统及方法是针对改进限制方案设计。此类改进可用于基于ISOBMFF的文件或用于任何其它文件格式。
如上文所提及,所捕捉视频帧可经编码及/或压缩以供存储及/或发射,且接收器装置可对经编码视频帧进行解码及/或解压缩。随着更多装置及系统为消费者提供消耗数字视频数据的能力,对高效视频译码技术的需要变得更加重要。需要视频译码来减少处置存在于数字视频数据中的大量数据所必要的存储及发射要求。各种视频译码技术可用于将视频数据压缩成使用较低位速率同时维持高视频质量的形式。
图1是说明视频译码系统100的实例的框图,视频译码系统100包含编码装置104及解码装置112。编码装置104可为源装置的部分,且解码装置112可为接收装置的部分。源装置及/或接收装置可包含电子装置,例如移动或静止电话手机(例如智能型手机、蜂窝式电话等等)、台式计算机、膝上型或笔记型计算机、平板计算机、机顶盒、电视、摄影机、显示装置、数字媒体播放器、视频游戏主机、视频流式传输装置、因特网协议 (InternetProtocol,IP)摄影机或任何其它适合的电子装置。在一些实例中,源装置及接收装置可包含用于无线通信的一或多个无线收发器。本文中所描述的译码技术可适用于各种多媒体应用中的视频译码,包含流式传输视频发射(例如经由因特网)、电视广播或发射、编码数字视频以供存储于数据存储媒体上、解码存储于数据存储媒体上的数字视频或其它应用。在一些实例中,系统100可支持单向或双向视频发射以支持例如视频会议、视频流式传输、视频播放、视频广播、游戏及/或视频电话的应用。
编码装置104(或编码器)可用以使用视频译码标准或协议编码视频数据以产生经编码视频位流。视频译码标准的实例包含ITU-T H.261、ISO/IEC MPEG-1 Visual、ITU-TH.262或ISO/IEC MPEG-2 Visual、ITU-T H.263、ISO/IEC MPEG-4 Visual、ITU-T H.264(也称为ISO/IEC MPEG-4 AVC),包含其可缩放视频译码(Scalable Video Coding,SVC) 及多视图视频译码(Multiview Video Coding,MVC)扩展,及高效视频译码(High EfficiencyVideo Coding,HEVC)或ITU-T H.265。存在涉及多层视频译码的HEVC的各种扩展,包含范围及屏幕内容译码扩展、3D视频译码(3D video coding,3D-HEVC)及多视图扩展 (multiviewextension,MV-HEVC)及可缩放扩展(scalable extension,SHVC)。HEVC及其扩展已通过ITU-T视频译码专家组(Video Coding Experts Group,VCEG)及ISO/IEC动画专家组(Motion Picture Experts Group,MPEG)的视频译码联合协作小组(Joint CollaborationTeam on Video Coding,JCT-VC)以及3D视频译码扩展开发联合协作小组 (JointCollaboration Team on 3D Video Coding Extension Development,JCT-3V)开发。 MPEG及ITU-T VCEG已也形成联合探索视频小组(joint exploration video team,JVET),以探索用于下一代视频译码标准的新译码工具。参考软件被称作联合探索模型(jointexploration model,JEM)。
本文中所描述的许多实施例提供使用JEM模型、HEVC标准及/或其扩展的实例。然而,本文中所描述的技术及系统也可适用于其它译码标准,例如AVC、MPEG、其扩展或已可用或尚不可用或尚未开发的其它适合的译码标准。因此,尽管可参考特定视频译码标准描述本文中所描述的技术及系统,但所属领域的一般技术人员将了解,描述不应解译为仅适用于彼特定标准。
参考图1,视频源102可将视频数据提供到编码装置104。视频源102可为源装置的一部分,或可为除源装置以外的装置的一部分。视频源102可包含视频捕捉装置(例如摄像机、摄影机电话、视频电话等等)、含有经存储视频的视频存档、提供视频数据的视频服务器或内容提供者、从视频服务器或内容提供者接收视频的视频馈入接口、用于产生计算机图形视频数据的计算机图形系统、此些源的组合或任何其它适合的视频源。
来自视频源102的视频数据可包含一或多个输入图片或帧。视频的各图片或帧为场景的静态图像。在一些实例中,视频数据的图片或帧可包含映射或投影到几何形状(例如TSP、立方体或其它适合的几何形状)的平面上的360度视频数据。编码装置104的编码器引擎106(或编码器)编码视频数据以产生经编码视频位流。在一些实例中,经编码视频位流(或“视频位流”或“位流”)为一系列的一或多个经译码视频序列。经译码视频序列(codedvideo sequence,CVS)包含一系列存取单元(access unit,AU),其始于在基础层中具有随机存取点图片且具有某些属性的AU,直到且不包含在基础层中具有随机存取点图片且具有某些属性的下一AU。举例来说,开始CVS的随机存取点图片的某些性质可包含等于1的RASL旗标(例如NoRaslOutputFlag)。否则,随机存取点图片(具有等于0的RASL旗标)并不开始CVS。存取单元(AU)包含一或多个经译码图片及对应于共享相同输出时间的经译码图片的控制信息。图片的经译码切片在位流层级囊封到称为网络抽象层(network abstractionlayer,NAL)单元的数据单元中。举例来说,HEVC视频位流可包含一或多个CVS,所述一或多个CVS包含NAL单元。NAL单元中的每一个具有NAL单元标头。在一个实例中,标头对于H.264/AVC(除了多层扩展以外)为一个位组且对于HEVC为两个位组。NAL单元标头中的语法元素采取经指定位,且因此对所有种类的系统及输送层可见,例如输送流、实时输送(Real-timeTransport,RTP)协议、文件格式等等。
两种类别的NAL单元存在于HEVC标准中,包含视频译码层(video coding layer,VCL)NAL单元及非VCL NAL单元。VCL NAL单元包含经译码图片数据的一个切片或切片片段(如下描述),且非VCL NAL单元包含关于一或多个经译码图片的控制信息。在一些状况下,NAL单元可被称作包。HEVC AU包含含有经译码图片数据的VCL NAL 单元及对应于经译码图片数据的非VCL NAL单元(如果存在)。
NAL单元可含有形成视频数据的经译码表示(例如,视频中的图片的经译码表示)的位序列(例如经编码视频位流、位流的CVS等等)。编码器引擎106通过将每一图片分割成多个切片而产生图片的经译码表示。切片独立于其它切片,以使得在不依赖于来自同一图片内的其它切片的数据的情况下译码所述切片中的信息。切片包含一或多个切片片段,所述一或多个切片片段包含独立切片片段及(如果存在)取决于先前切片片段的一或多个相关切片片段。切片接着被分割成明度样本及色度样本的译码树型块(coding tree block,CTB)。明度样本的CTB及色度样本的一或多个CTB连同样本的语法被称为译码树型单元(coding tree unit,CTU)。CTU为用于HEVC编码的基本处理单元。CTU可经分裂成具有不同大小的多个译码单元(coding unit,CU)。CU含有被称为译码块(coding block,CB)的明度及色度样本阵列。
明度及色度CB可进一步被分裂成预测块(prediction block,PB)。PB是对于帧间预测或块内复制预测(在可用或经启用以供使用时)使用相同运动参数的明度分量或色度分量的样本的块。所述明度PB及一或多个色度PB连同相关联语法形成预测单元(prediction unit,PU)。对于帧间预测,一组运动参数(例如一或多个运动向量、参考索引等等)在每一PU的位流中用信号发送,且用于明度PB及一或多个色度PB的帧间预测。运动参数也可被称作运动信息。CB也可被分割成一或多个变换块(TB)。TB表示色彩分量的样本的正方形块,对所述正方形块应用同一二维变换以用于译码预测残余信号。变换单元(transform unit,TU)表示明度及色度样本的TB以及对应语法元素。
CU的大小对应于译码模式的大小,且可为正方形形状。举例来说,CU的大小可为 8×8样本、16×16样本、32×32样本、64×64样本或达到相应CTU的大小的任何其它适当大小。短语“N×N”在本文中用以指视频块就垂直及水平尺寸而言的像素尺寸(例如8 像素×8像素)。可按行及列来排列块中的像素。在一些实施例中,块在水平方向上可不具有与在垂直方向上相同的数目个像素。与CU相关联的语法数据可描述例如将CU分割成一或多个PU。分割模式可在CU经帧内预测模式编码抑或经帧间预测模式编码之间有所不同。PU可经分割成非正方形形状。与CU相关联的语法数据也可描述例如根据 CTU将CU分割成一或多个TU。TU可为正方形或非正方形形状。
根据HEVC标准,可使用变换单元(TU)来执行变换。TU可针对不同CU而变化。可基于给定CU内的PU的大小而对TU设定大小。TU可与PU大小相同或小于PU。在一些实例中,可使用被称为“残余四分树”(residual quad tree,RQT)的四分树结构将对应于CU的残余样本再分成较小单元。RQT的叶节点可对应于TU。可变换与TU相关联的像素差值以产生变换系数。变换系数可随后由编码器引擎106量化。
一旦视频数据的图片被分割成CU,编码器引擎106便使用预测模式来预测每一PU。随后从原始视频数据减去预测单元或预测块以得到残余(如下描述)。对于每一CU,可使用语法数据在位流内部发信预测模式。预测模式可包含帧内预测(或图片内预测)或帧间预测(或图片间预测)。帧内预测利用图片内的空间相邻样本之间的相关。举例来说,在使用帧内预测的情况下,使用例如DC预测以发现PU的平均值、使用平面预测以使平面表面拟合于PU、使用方向预测以从相邻数据外插或使用任何其它合适类型的预测,从同一图片中的相邻图像数据预测每一PU。帧间预测使用图片之间的时间相关以便导出图像样本的块的运动补偿预测。举例来说,在使用帧间预测的情况下,使用运动补偿预测从一或多个参考图片(按输出次序在当前图片之前或之后)中的图像数据预测每一 PU。可例如以在CU层级决定是否使用图片间预测抑或图片内预测来译码图片区域。
在一些实例中,图片的一或多个切片被指派切片类型。切片类型包含I切片、P切片及B切片。I切片(帧内预测帧,可独立解码)是仅通过帧内预测译码的图片的切片,且因此可独立解码,这是因为I切片仅需要帧内的数据来预测切片的任何预测单元或预测块。P切片(单向预测帧)是可通过帧内预测及通过单向帧间预测译码的图片的切片。通过帧内预测或帧间预测译码P切片内的每一预测单元或预测块。当应用帧间预测时,仅通过一个参考图片预测所述预测单元或预测块,且因此参考样本仅来自一个帧的一个参考区。B切片(双向预测性帧)是可运用帧内预测及运用帧间预测(例如双向预测抑或单向预测)译码的图片的切片。可从两个参考图片双向预测B切片的预测单元或预测块,其中各图片贡献一个参考区域,且两个参考区域的样本集经加权(例如以相等权重或以不同权重)以产生双向预测块的预测信号。如上文所解释,一个图片的切片被独立译码。在一些状况下,图片可仅作为一个切片而被译码。
PU可包含与预测过程相关的数据(例如运动参数或其它适合的数据)。举例来说,当使用帧内预测编码PU时,PU可包含描述用于PU的帧内预测模式的数据。作为另一实例,当使用帧间预测来编码PU时,PU可包含定义用于PU的运动向量的数据。定义用于PU的运动向量的数据可描述例如运动向量的水平分量(Δx)、运动向量的垂直分量 (Δy)、用于运动向量的分辨率(例如整数精度、四分之一像素精度或八分之一像素精度)、运动向量指向的参考图片、参考索引、用于运动向量的参考图片列表(例如列表0、列表 1或列表C),或其任何组合。
编码装置104接着可执行变换及量化。举例来说,在预测之后,编码器引擎106可计算对应于PU的残余值。残余值可包括正经译码的像素(PU)的当前块与用以预测当前块(例如当前块的经预测版本)的预测块之间的像素差值。举例来说,在产生预测块(例如发出帧间预测或帧内预测)之后,编码器引擎106可通过从当前块减去由预测单元产生的预测块来产生残余块。残余块包含量化当前块的像素值与预测块的像素值之间的差的一组像素差值。在一些实例中,残余块可以二维块格式(例如像素值的二维矩阵或阵列)表示。在此些实例中,残余块为像素值的二维表示。
使用块变换来变换可在执行预测之后剩余的任何残余数据,此变换可基于离散余弦变换、离散正弦变换、整数变换、小波变换、其它适合的变换函数或其任何组合。在一些状况下,一或多个块变换(例如大小32×32、16×16、8×8、4×4或其它适合的大小)可应用于各CU中的残余数据。在一些实施例中,TU可用于通过编码器引擎106实施的变换及量化过程。给定的具有一或多个PU的CU也可包含一或多个TU。如下文进一步详细描述,可使用块变换将残余值变换成变换系数,且接着可使用TU来量化及扫描残余值以产生用于熵译码的串行化变换系数。
在一些实施例中,在使用CU的PU进行帧内预测性或帧间预测性译码之后,编码器引擎106可计算CU的TU的残余数据。PU可包括空间域(或像素域)中的像素数据。在应用块变换之后,TU可包括变换域中的系数。如先前所提及,残余数据可对应于未经编码图片的像素及与对应于PU的预测值之间的像素差值。编码器引擎106可形成包含CU的残余数据的TU,且接着可变换TU以产生CU的变换系数。
编码器引擎106可执行变换系数的量化。量化通过量化变换系数以减少用以表示系数的数据的量而提供进一步压缩。举例来说,量化可减少与系数中的一些或所有相关联的位深度。在一个实例中,具有n位值的系数可在量化期间经降值舍位为m位值,其中 n大于m。
一旦执行了量化,那么经译码视频位流包含经量化变换系数、预测信息(例如模式、运动向量、块向量等等)、分割信息及任何其它适合的数据,例如其它语法数据。接着可通过编码器引擎106对经译码视频位流的不同元素进行熵编码。在一些实例中,编码器引擎106可利用预定义扫描次序扫描经量化变换系数以产生可经熵编码的串行化向量。在一些实例中,编码器引擎106可执行自适应扫描。在扫描经量化变换系数以形成向量 (例如一维向量)之后,编码器引擎106可对向量进行熵编码。举例来说,编码器引擎106 可使用上下文自适应性可变长度译码、上下文自适应性二进制算术译码、基于语法的上下文自适应性二进制算术译码、概率区间分割熵译码或另一适合的熵编码技术。
如先前所描述,HEVC位流包含NAL单元的群组,包含VCL NAL单元及非VCL NAL单元。VCL NAL单元包含形成经译码视频位流的经译码图片数据。举例来说,形成经译码视频位流的位序列存在于VCL NAL单元中。除了其它信息以外,非VCL NAL 单元也可含有具有与经编码视频位流相关的高层级级信息的参数集。举例来说,参数集可包含视频参数集(video parameter set,VPS)、序列参数集(sequence parameter set,SPS) 及图片参数集(picture parameter set,PPS)。参数集的目标的实例包含位速率效率、错误复原及提供系统层接口。每一切片参考单一作用中PPS、SPS及VPS以存取解码装置112 可用于解码切片的信息。可针对每一参数集译码识别符(identifier,ID),包含VPS ID、 SPS ID及PPS ID。SPS包含SPS ID及VPS ID。PPS包含PPS ID及SPS ID。每一切片标头包含PPS ID。使用ID,可识别针对给定切片的作用中参数集。
PPS包含适用于给定图片中的所有切片的信息。因此,图片中的所有切片参考同一PPS。不同图片中的切片也可参考同一PPS。SPS包含适用于同一经译码视频序列(codedvideo sequence,CVS)或位流中的所有图片的信息。如先前所描述,经译码视频序列为一系列存取单元(access unit,AU),其始于在基层中且具有某些属性(如上文所描述)的随机存取点图片(例如瞬时解码参考(instantaneous decode reference,IDR)图片或断链存取(broken link access,BLA)图片或其它适当的随机存取点图片),直到且不包含具有在基层中且具有某些属性的随机存取点图片的下一AU(或位流的末端)。SPS中的信息可不在经译码视频序列内在图片间改变。经译码视频序列中的图片可使用同一SPS。VPS包含适用于经译码视频序列或位流内的所有层的信息。VPS包含具有适用于全部经译码视频序列的语法元素的语法结构。在一些实施例中,可与经编码位流一起频带内发射VPS、SPS或PPS。在一些实施例中,可在与含有经译码视频数据的NAL单元分开的发射中带外经发射VPS、SPS或PPS。
视频位流也可包含补充增强信息(Supplemental Enhancement Information,SEI)消息。举例来说,SEI NAL单元可为视频位流的部分。在一些状况下,SEI信息可含有解码过程未必需要的信息。举例来说,SEI信息中的信息可能并非对于解码器对位流的视频图片进行解码必不可少,但解码器可使用所述信息以改进对图片(例如经解码输出)的显示或处理。SEI消息中的信息可为嵌入型元数据。在一个说明性实例中,SEI消息中的信息可由解码器侧实体使用以改进内容的可见性。在一些情况下,某些应用标准可强制此类SEI消息在位流中的存在以使得符合应用标准的所有装置可达成质量的改进(例如用于帧可兼容平面立体3DTV视频格式的帧封装SEI消息的携载,其中针对视频的每一帧携载SEI消息;恢复点SEI消息的处置;拉移式扫描矩形SEI消息在DVB中的使用;外加许多其它实例)。
编码装置104的输出110可经由通信链路120将组成经编码视频位流数据的NAL 单元发送到接收装置的解码装置112。解码装置112的输入114可接收NAL单元。通信链路120可包含由无线网络、有线网络或有线网络与无线网络的组合提供的信道。无线网络可包含任何无线接口或无线接口的组合,且可包含任何适合的无线网络(例如因特网或其它广域网、基于包的网络、WiFiTM、射频(radio frequency,RF)、UWB、WiFi-Direct、蜂窝式、长期演进(Long-Term Evolution,LTE)、WiMaxTM等等)。有线网络可包含任何有线接口(例如光纤、以太网、电力线以太网、经由同轴电缆的以太网、数字信号线(digital signal line,DSL)等等)。可使用各种设备来实施有线及/或无线网络,所述设备例如基站、路由器、存取点、桥接器、网关、交换器等等。可根据通信标准(例如无线通信协议)调制经编码视频位流数据,且将其发射到接收装置。
在一些实例中,编码装置104可将经编码视频位流数据存储于存储器108中。输出110可从编码器引擎106或从存储器108检索经编码视频位流数据。存储器108可包含多种分散式或本地存取的数据存储媒体中的任一个。举例来说,存储器108可包含硬盘机、存储光盘、快闪存储器、易失性或非易失性存储器或用于存储经编码视频数据的任何其它适合的数字存储媒体。
解码装置112的输入114接收经编码视频位流数据,且可将视频位流数据提供到解码器引擎116,或提供到存储器118以供稍后由解码器引擎116使用。通过对组成经编码视频数据的一或多个经译码视频序列的元素进行熵解码(例如使用熵解码器)及提取,解码器引擎116可对经编码视频位流数据进行解码。解码器引擎116可接着重新按比例调整经编码视频位流数据且对经编码视频位流数据执行反变换。残余数据接着传递到解码器引擎116的预测级。解码器引擎116接着预测像素的块(例如PU)。在一些实例中,预测经添加到反变换的输出(残余数据)。
解码装置112可将经解码视频输出到视频目的地装置122,视频目的地装置可包含用于将经解码视频数据显示给内容的消费者的显示器或其它输出装置。在一些方面中,视频目的地装置122可为包含解码装置112的接收装置的部分。在一些方面中,视频目的地装置122可为不同于接收装置的单独装置的部分。
在一些实施例中,视频编码装置104及/或视频解码装置112可分别与音频编码装置及音频解码装置集成。视频编码装置104及/或视频解码装置112也可包含实施上文所描述的译码技术所必要的其它硬件或软件,例如一或多个微处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integratedcircuit,ASIC)、现场可编程门阵列(field programmable gate array,FPGA)、离散逻辑、软件、硬件、固件或其任何组合。视频编码装置104及视频解码装置112可集成为各别装置中的组合式编码器/解码器(编解码器)的部分。下文参考图7描述编码装置104的特定细节的实例。下文参考图8描述解码装置112的特定细节的实例。
对HEVC标准的扩展包含多视图视频译码扩展(被称作Multiview Video Codingextension,MV-HEVC)及可缩放视频译码扩展(被称作Scalable Video Coding extension,SHVC)。MV-HEVC及SHVC扩展共享分层译码的概念,其中不同层包含于经编码视频位流中。经译码视频序列中的每一层是由唯一层识别符(ID)定址。层ID可存在于NAL 单元的标头中以识别NAL单元所相关联的层。在MV-HEVC中,不同层可表示视频位流中的同一场景的不同视图。在SHVC中,提供以不同空间剖析度(或图片剖析度)或以不同重构保真度表示视频位流的不同可缩放层。可缩放层可包含基层(具有层ID=0)及一或多个增强层(其中层ID=1、2、…n)。基层可符合HEVC的第一版本的配置文件,且表示位流中的最低可用层。与基层相比,增强层具有增加的空间剖析度、时间剖析度或帧速率及/或重构保真度(或质量)。增强层经阶层式组织,且可(或可不)取决于较低层。在一些实例中,可使用单一标准编解码器来译码不同层(例如使用HEVC、SHVC或其它译码标准编码所有层)。在一些实例中,可使用多标准编码解码器来译码不同层。举例来说,可使用AVC来译码基层,而可使用对HEVC标准的SHVC及/或MV-HEVC扩展来译码一或多个增强层。
一般来说,层包含一组VCL NAL单元及对应的一组非VCL NAL单元。NAL单元被指派特定层ID值。在层可取决于较低层的意义上,层可为阶层式的。层集合指表示于位流内的独立的层的集合,意谓在解码过程中层集合内的层可取决于层集合中的其它层,但并不取决于任何其它层来进行解码。因此,层集合中的层可形成可表示视频内容的独立位流。可通过子位流提取过程的操作从另一位流获得层集合中的层的集合。层集合可对应于待在解码器希望根据某些参数操作时被解码的层集合。
如先前所描述,媒体格式可用于囊封经译码视频。媒体格式的一个实例包含ISO基本媒体文件格式(ISOBMFF,ISO/IEC 14496-12中指定)。也存在从ISOBMFF(ISO/IEC 14496-14)导出的其它媒体文件格式,包含MPEG-4文件格式(ISO/IEC 14496-12)、3GPP 文件格式(3GPP TS 26.244)及AVC文件格式(ISO/IEC 14496-15)。举例来说,如上文所论述经编码的视频位流可使用ISOBMFF、从ISOBMFF导出的文件格式、某一其它文件格式及/或包含ISOBMFF的文件格式的组合来写入或封装到一或多个文件中。ISOBMFF 文件可使用视频播放器装置播放,可由编码装置(或文件产生装置)发射且接着由播放器装置显示,可经存储,及/或可以任何其它适合的方式使用。
ISOBMFF用作许多编解码器囊封格式(例如AVC文件格式等等)以及用于许多多媒体容器格式(例如MPEG-4文件格式、3GPP文件格式(3GP)、DVB文件格式等等)的基础。连续媒体(例如音频及视频)、静态媒体(例如图像)以及元数据可存储于符合ISOBMFF的文件中。根据ISOBMFF结构化的文件可用于许多用途,包含本地媒体文件播放、远程文件的逐渐下载、用于经由HTTP的动态自适应流式传输(DASH)的片段、用于待流式发射的内容及所述内容的打包指令的容器,及接收到的实时媒体流的记录以及其它适合的目的。举例来说,尽管最初经设计用于存储,但ISOBMFF已证明为对于媒体予以流式传输(例如对于逐渐下载或DASH)极具价值。为了流式传输目的,可使用在ISOBMFF 中定义的电影片段。
ISOBMFF经设计而以灵活且可扩展格式含有计时媒体信息,所述计时媒体信息促进媒体的互换、管理、编辑及呈现。对媒体的呈现可在含有所述呈现的系统“本地”,或所述呈现可经由网络或其它流传送机构(例如DASH或其它适合的流式传输机制)。如 ISOBMFF规范中所定义的“呈现”为常常通过已由视频检索装置依序检索相关或由于某其它原因相关的图片序列。本文中,呈现也可被称作电影或视频呈现。呈现可包含音频。单一呈现可含于一或多个文件中,其中一个文件含有用于整个呈现的元数据。元数据包含信息,例如时序及成框数据、描述词、指标、参数,及描述呈现的其它信息。元数据自身并不包含视频及/或音频数据。除含有元数据的文件以外的文件无需根据 ISOBMFF而格式化,且仅仅需要经格式化以使得此些文件可通过元数据参考。
ISO基本媒体文件的文件结构为对象定向式结构,且文件中的个别对象的结构可直接从对象的类型来推断。ISOBMFF规范将ISO基本媒体文件中的对象规范称作“框”。ISO基本媒体文件构建为可含有其它框的一系列框。举例来说,框可为ISOBMFF中的基本语法结构,包含四字符译码框类型、框的位组计数及有效负载。框可包含提供框的大小及类型的标头。大小描述框的整个大小,包含标头、字段及含有于帧内的所有框。播放器装置不能识别的类型的框通常被忽略且跳过。
ISOBMFF文件可含有不同种类的框。举例来说,电影框(“moov”)含有文件中存在的连续媒体流的元数据,其中各媒体流在文件中表示为播放轨。将用于播放轨的元数据封闭于播放轨框(“trak”)中,而将播放轨的媒体内容封闭于媒体数据框(“mdat”)中或直接封闭于单独文件中。可存在不同种类的跟踪器。举例来说,ISOBMFF指定以下类型的播放轨:媒体播放轨,其含有基本媒体流;提示播放轨,其包含媒体发射指令或表示接收的包流;及计时元数据播放轨,其包括时间同步的元数据。
用于播放轨的媒体内容包含序列样本,例如音频或视频存取单元。每一播放轨的元数据包含样本描述项的列表,每一项提供在播放轨中使用的译码或封装格式及对于处理彼格式需要的初始化数据。各样本与播放轨的样本描述项中的一个相关联。
ISOBMFF实现使用各种机构来使用样本特定元数据。样本表框(“stbl”)内的特定框已经标准化以响应普通需求。举例来说,同步样本框(“stss”)可用以列举播放轨的随机存取样本。样本分群机构实现根据四字符分群类型将样本映射成共享指定为文件中的样本群组描述项的同一性质的样本的群组。已在ISOBMFF中指定若干分群类型。
图2为说明具有遵循ISO基本媒体文件格式的结构文件的文件200的实例的图式。ISO基本媒体文件200也可被称作媒体格式文件。媒体呈现可但并非始终含于一个文件中,在此状况下媒体呈现自含于文件中。文件200包含电影容器202(或“电影框”)。电影容器202可含有媒体的元数据,元数据可包含例如一或多个视频播放轨及一或多个音频播放轨。举例来说,视频播放轨210可含有关于视频的各层的信息,信息可存储于一或多个媒体信息容器214中。举例来说,媒体信息容器214可包含样本表,样本表提供关于视频的视频样本的信息。在各种实施方案中,视频数据块222及音频数据块224 含于媒体数据容器204中。在一些实施方案中,视频数据块222及音频数据块224可含于一或多个其它文件(除文件200以外)中。
在各种实施方案中,呈现(例如运动序列)可含于若干文件中。所有时序及成框(例如位置及大小)信息可在ISO基本媒体文件中,且辅助文件可基本上使用任何格式。
ISO文件具有逻辑结构、时间结构及实体结构。不需要不同结构耦合。文件的逻辑结构具有又含有一组时间平行播放轨(例如视频播放轨210)的电影。文件的时间结构为播放轨在时间上含有样本的序列,且那些序列由任选编辑列表映射到整体电影的时刻表中。
文件的实体结构从媒体数据样本本身分离对于逻辑、时间及结构分解所需的数据。此结构信息在电影框(例如电影容器202)中集中,同时可能在时间上由电影片段框扩展。电影框记录样本的逻辑及时序关系,且也含有样本定位于何处的指标。指标可指向同一文件或另一文件中,所述文件可由例如统一资源定位符(Uniform Resource Locator,URL)等等参考。
各媒体流含于对于彼媒体类型专用的播放轨中。举例来说,在图2中所说明的实例中,电影容器202包含视频播放轨210及音频播放轨216。电影容器202也可包含提示播放轨218,提示播放轨218可包含从视频播放轨210及/或音频播放轨216发射指令,或可表示关于电影容器202或文件200的其它电影容器(未展示)中的其它播放轨的其它信息。各播放轨可进一步由样本项参数化。举例来说,在所说明实例中,视频播放轨210 包含媒体信息容器214,媒体信息容器214包含样本的表(被称作“样本表”)。样本项含有准确媒体类型(例如对流进行解码所需的解码器的类型)及彼所需解码器的任何参数化的“名称”。名称可呈四字符码(例如moov、trak或其它适合的名称码)形式。存在针对各种媒体类型定义的样本项格式。样本项可进一步包含对媒体数据容器204中的框220 中的视频数据块(例如视频数据块222)的指标。框220包含交错时间序视频样本(组织成视频数据块,例如视频数据块222)、音频框(例如音频数据块224中)及提示指令(例如提示指令块226中)。
对元数据的支持可呈不同形式。在一个实例中,时控元数据可存储于适当播放轨中,且可视需要与由元数据描述的媒体数据同步。在第二实例中,存在对于附接到电影或个别播放轨的非时控元数据的一般支持。结构支持为一般的,且如同所述媒体数据,允许在文件中或另一文件中的其它处存储元数据资源。
在一些状况下,视频文件中的一个播放轨可含有多个层。视频播放轨也可包含播放轨标头(例如播放轨标头212),播放轨标头可含有关于视频播放轨(例如视频播放轨210)的内容的一些信息。举例来说,播放轨标头可包含播放轨内容信息(也被称作“tcon”) 框。tcon框可列出视频播放轨中的所有层及子层。视频文件也可包含操作点信息框(也被称作“oinf”框)。oinf框记录关于操作点的信息,例如构成操作点的层及子层、操作点之间的相依性(如果存在)、配置文件、等级、操作点的层参数及其它此类操作点相关信息。在一些状况下,操作点也可被称作操作点。
图3为说明根据ISOBMFF格式化的ISO基本媒体文件300的另一实例的图式。ISO 基本媒体文件300也可被称作媒体格式文件。ISO基本媒体文件300含有视频呈现的数据及元数据。在文件300的顶部层级处,包含有文件类型框310、电影框320及一或多个片段330a、330b、330c到330n。在此层级可被包含但在此实例中并未表示的其它框包含自由空闲框、元数据框及媒体数据框等等。
文件类型框310由框类型“ftyp”识别。文件类型框310通常尽可能早地放置于ISO基本媒体文件300中。文件类型框310识别最适合于剖析文件的ISOBMFF规范。“最”在此情况下意谓,ISO基本媒体文件300可能已根据特定ISOBMFF规范格式化,但很可能与规范的其它反复兼容。此最合适规范被称作主流品牌。播放器装置可使用主流品牌来确定装置是否能够对文件的内容进行解码且显示文件的内容。文件类型框310也可包含版本号,版本号可用以指示ISOBMFF规范的版本。文件类型框310也可包含兼容品牌的列表,所述列表包含文件兼容的其它品牌的列表。ISO基本媒体文件可与大于一个主流品牌兼容。
当ISO基本媒体文件包含文件类型框(如ISO基本媒体文件300)时,仅存在一个文件类型框。在一些状况下,ISO基本媒体文件可省略文件类型框以便与其它早期播放器装置兼容。当ISO基本媒体文件不包含文件类型框时,播放器装置可采用默认主流品牌 (例如mp41)、次要版本(例如“0”)及兼容品牌(例如mp41、isom、iso2、avc1等等)。
ISO基本媒体文件300进一步包含电影框320,电影框320含有呈现的元数据。电影框320由框类型“moov”识别。ISO/IEC 14496-12规定,含于一个文件或多个文件中的呈现可包含仅一个电影框320。电影框通常接近ISO基本媒体文件的开始(例如如由 ISO基本媒体文件300中的电影框320的放置指示)。电影框320包含电影标头框322,且可包含一或多个播放轨框324以及其它框。
由框类型“mvhd”识别的电影标头框322可包含与媒体无关且与作为整体的呈现相关的信息。举例来说,电影标头框322可包含信息,例如产生时间、修改时间、时间标度及/或针对呈现的持续时间等等。电影标头框322也可包含识别呈现中的下一播放轨的识别符。举例来说,在所说明实例中,识别符可指向由电影框320含有的播放轨框324。
由框类型“trak”识别的播放轨框324可含有用于呈现的播放轨的信息。呈现可包含一或多个播放轨,其中每一播放轨独立于呈现中的其它播放轨。每一播放轨可包含对于播放轨中的内容特定的时间及空间信息,且每一播放轨可与媒体框相关联。播放轨中的数据可为媒体数据,在此状况下,播放轨为媒体播放轨;或数据可为用于流式传输协议的打包信息,在此状况下,播放轨为提示播放轨。举例来说,媒体数据包含视频及音频数据。在图3中所展示的实例中,实例播放轨框324包含播放轨标头框324a及媒体框324b。播放轨框可包含其它框,例如播放轨参考框、播放轨群组框、编辑框、用户数据框、元框等等。
由框类型“tkhd”识别的播放轨标头框324a可指定含于播放轨框324中的播放轨的特性。举例来说,播放轨标头框324a可包含播放轨的产生时间、修改时间、持续时间、播放轨识别符、层识别符、群组识别符、音量、宽度及/或高度等等。对于媒体播放轨,播放轨标头框324a可进一步识别播放轨是否经启用,播放轨是否应作为呈现的部分而播放,播放轨是否可用以预览呈现,以及播放轨的其它用途。播放轨的呈现通常假定为处于呈现的开始处。播放轨框324可包含编辑列表框(未展示),编辑列表框可包含显式时刻表图。时刻表图可指定播放轨的偏移时间等等,其中偏移指示播放轨的在呈现开始之后的开始时间。
在所说明实例中,播放轨框324也包含由框类型“mdia”识别的媒体框324b。媒体框324b可含有对象及关于播放轨中的媒体数据的信息。举例来说,媒体框324b可含有处置程序参考框,其可识别播放轨的媒体类型及藉以呈现播放轨中的媒体的过程。作为另一实例,媒体框324b可含有媒体信息框,其可指定播放轨中媒体的特性。媒体信息框可进一步包含如上文关于图2所描述的样本表,其中各样本描述包含例如样本的数据的位置的块媒体数据(例如视频或音频数据)。样本的数据存储于下文进一步论述的媒体数据框中。如同大部分其它框一般,媒体框324b也可包含媒体标头框。
在所说明实例中,实例ISO基本媒体文件300也包含呈现的多个片段330a、330b、330c到330n。片段330a、330b、330c到330n并非ISOBMFF框,而是描述电影片段框 332及由电影片段框332参考的媒体数据框338。电影片段框332及媒体数据框338为顶部层级框,但此处分组在一起以指示电影片段框332与媒体数据框338之间的关系。
由框类型“moof”识别的电影片段框332可通过包含将以其它方式存储于电影框320 中的额外信息来扩展呈现。使用电影片段方块(例如电影片段框332),可递增地构建呈现。电影片段框332可包含电影片段标头框334及播放轨片段框336以及此处未说明的其它框。
由框类型“mfhd”识别的电影片段标头框334可包含序号。播放器装置可使用序号来验证片段330a包含数据的下一段以供呈现。在一些状况下,文件的内容或用于呈现的文件可无序地被提供到播放器装置。举例来说,网络包可以不同于最初发射包的次序的次序频繁地到达。在此些状况下,序号可辅助播放器装置确定片段的正确次序。
电影片段框332也可包含由框类型“traf”识别的一或多个播放轨片段框336。电影片段框332可包含一组播放轨片段,每播放轨零或更多个片段。播放轨片段可含有零或多个播放轨行程,其中的每一个描述播放轨的样本的连续行程。除添加样本到播放轨外,播放轨片段可用以将空的时间添加到播放轨。
由框类型“mdat”识别的媒体数据框338含有媒体数据。在视频播放轨中,所述媒体数据框338可含有视频帧、存取单元、NAL单元或其它形式的视频数据。媒体数据框可替代地或另外地包含音频数据。呈现可包含含有于一或多个个别文件中的零或大于零的媒体数据框。媒体数据通过元数据描述。在所说明实例中,媒体数据框338中的媒体数据可通过包含于播放轨片段框336中的元数据来描述。在其它实例中,媒体数据框中的媒体数据可通过电影框320中的元数据来描述。元数据可通过在文件300内的绝对偏移参考特定媒体数据,以使得媒体数据标头及/或媒体数据框338内的自由空间可被跳过。
ISO基本媒体文件300中的其它片段330b、330c到330n可含有类似于针对第一片段330a所说明的框的框,及/或可含有其它框。
如上文所提及,ISOBMFF包含经由网络支持流式传输媒体数据,以及支持对媒体的本地播放。包含一个电影呈现的文件可包含称为提示播放轨的额外播放轨,其含有可在形成且发射文件作为包中辅助流式传输服务器的指令。举例来说,此些指令可包含用于服务器以供发送的数据(例如标头信息)或对媒体数据的片段的参考。文件可包含用于不同流式传输协议的单独提示播放轨。提示播放轨也可在不需要重新格式化文件的情况下添加到文件。
用于对媒体数据进行流式传输的一种方法是经由超文本传送协议(HyperTextTransfer Protocol,HTTP)或DASH(定义于ISO/IEC 23009-1:2014中)的动态自适应流式传输。被称为MPEG-DASH的DASH为启用媒体内容使用常规HTTP网页服务器的高质量流式传输的自适应位速率流式传输技术。DASH通过将媒体内容打断成一系列基于 HTTP的小文件区段来操作,其中每一区段含有短时间间隔的内容。使用DASH,服务器可以不同位速率提供媒体内容。正播放媒体的客户端装置可在下载下一片段时从替代性位速率做出选择,且因此适应于改变网络条件。DASH使用因特网的HTTP网页服务器基础架构来经由全球信息网递送内容。DASH独立于用以对媒体内容进行编码及解码的编码解码器,且因此与例如H.264及HEVC的编码解码器等等一起操作。
ISOBMFF包含在以下情况下使用的限制方案设计:媒体格式文件的创建者(例如原创者、生产者等等)在处理与媒体格式文件相关联的媒体内容时需要通过播放器或显现器执行某些动作。限制方案使得播放器能够检查媒体格式文件以易于确定用于显现媒体内容的此类要求,且可防止旧版播放器下载、显现及对需要进一步处理的文件进行解码。旧版播放器可包含未被设计成处理某些媒体内容的播放器装置,这是因为例如所述播放器仅能够播放在无所需处理的情况下经译码的视频内容。当内容应仅由正确地呈现内容的播放器解码时,可应用限制方案。限制方案类型的说明性实例包含:立体视频帧封装布置(表示为“stvi”)的限制方案类型、虚拟实境视频(表示为“vrvd”)的限制方案类型、投影全向视频(表示为“podv”)的限制方案类型、等矩形投影视频(表示为“erpv”)的限制方案类型、封装等矩形或立方图投影视频(表示为“ercm”)的限制方案类型、超广角全向视频(表示为“fodv”)的限制方案类型等等。
限制方案机制的方面类似于内容保护变换,其中样本项隐藏于一般样本项“encv”、“enca”等等后,从而指示经加密或囊封媒体。用于受限制视频的类似机构使用具有通用样本项“resv”的变换。
如下应用限制方案的应用的实例:
1)样本项的四字符码由新样本项“resv”(意谓受限制视频)替换。
2)限制方案信息框经添加到样本描述,从而使得所有其它框未经修改。
3)原始样本项类型存储于含有于限制方案信息框中的原始格式帧内。
限制方案信息框(RestrictedSchemeInfoBox)与保护方案信息框(表示为ProtectionSchemeInfoBox)以相同方式格式化,惟限制方案信息框使用识别符“rinf”而非“sinf”(如以下实例中所展示)除外。原始样本项类型含有于位于限制方案信息框中的原始格式框中(以相同于用于经加密媒体的保护方案信息框的方式)。
限制的准确性质定义于含于限制方案信息框中的方案顶部框(表示为SchemeTypeBox)中,且彼方案所需的数据存储于方案信息框(表示为SchemeInformationBox)中。
可同时应用约束与保护方案。变换的次序遵循来自样本项的四字符码。举例来说,如果样本项类型为“resv”,那么撤销以上限制方案变换可产生样本项类型“encv”,从而指示媒体受到保护。通过剖析ISO基本媒体文件的文件结构以逐层展开文件以获得且处理文件中的信息,可使用剖析过程来完成撤销变换(例如保护方案、保护方案等等)。举例来说,在剖析受限制视频样本项类型“resv”的限制方案变换以获得与针对样本项类型“resv”使用的特定方案类型(例如立体视频布置的限制方案类型、虚拟实境视频的限制方案类型或其它方案类型)相关的信息之后,播放器装置将在文件中找到与样本项类型“encv”相关的信息。播放器装置接着可剖析加密相关内容,以获得对内容进行解密所需的信息。甚至另外,在剖析且处理加密信息之后,播放器装置可找到对内容进行解码所需的译码信息。接着可处理从文件读取的不同内容。举例来说,可使用来自文件的加密相关信息来对视频内容进行解密。可使用文件中的译码相关信息来对经解密视频进行解码,且接着可使用限制方案信息(例如使用立体视频布置的“stvi”帧类型信息来解封装帧)连同文件中的其它信息来显现经解码视频。
应注意,如果文件原创者仅想要提供咨询信息而不使旧版播放器停止播放文件,那么限制方案Info框可不放置于样本项内部而不应用四字符码变换。在此状况下,不必要包含原始格式框。
限制方案信息框目前定义如下:
限制方案信息框
框类型:“rinf”
容器:受限制样本项或样本项
必选:是
数量:恰好一个
限制方案信息框含有理解所应用的限制方案及其参数两者需要的所有信息。其还记录媒体的原始(未经变换)样本项类型。限制方案信息框为容器框。其在使用指示样本流的码即“resv”的样本项中为必选的。
当用于受限制样本项中时,此框必须含有原始格式框以记录原始样本项及方案类型框。方案信息框取决于约束方案可被需要。
Figure BDA0002101069540000221
方案类型框目前定义如下:
方案类型框
框类型: “schm”
容器: 保护方案信息框(“sinf”),限制方案
信息框(“rinf”),或SRTP过程框(“srpp”)
必选: 否
数量: “sinf”中,零或一个,取决于保护结构;在以下各者中恰好一个:
“rinf”及“srpp”
方案类型框(“schm”)识别保护或限制方案。
Figure BDA0002101069540000231
scheme_type为定义保护或限制方案的程序代码。
scheme_version为方案(用以产生内容)的版本
scheme_URI允许在用户尚未在其系统上安装方案的情况下将用户引导到网页页面的选项。其为形成为UTF-8字符中的空字符结尾字串的绝对URI。
方案信息框目前定义如下:
方案信息框
框类型: “schi”
容器: 保护方案信息框(“sinf”),限制方案
信息框(“rinf”),或SRTP过程框(“srpp”)
必选: 否
数量: 零或一个
方案信息框为仅由正使用的方案解译的容器框。加密或限制系统需要的任何信息存储于此处。此框的内容为其类型及格式由方案类型框中声明的方案定义的一系列框。
aligned(8)class SchemeInformationBox extends Box('schi'){
Box scheme_specific_data[];
}
对于ISOBMFF中的限制方案,存在各种问题。举例来说,在限制方案的现有设计中,在其容器(受限制样本项容器或样本项容器)中可仅存在一个限制方案信息框。另外,在限制方案信息框中可仅存在一个方案类型框,且在限制方案信息框中可仅存在零或一个方案信息框。
此类限制并不允许同时将多种类型的限制方案应用于与一个样本项相关联的相同媒体内容。样本项可与视频文件的一或多个样本相关联。然而,存在利用多个限制方案应用于的视频内容的许多真实世界媒体应用。将帧封装立体虚拟实境视频用作一个说明性实例,对限制方案的限制防止以下可能性:将立体视频布置(表示为“stvi”且定义于ISOBMFF的条项8.15.4中)的限制方案及虚拟实境视频(在本文中表示为“vrvd”且定义于MPEG输入文档m37914中)的所述限制方案应用于与一个样本项相关联的相同视频内容。存在多个限制方案可应用于与一个样本项相关联的相同媒体内容的许多其它实例。
在本文中描述了用以运用限制方案解决上述问题的系统及技术。本文中所描述的方面中的一些可独立地应用,且所述方面中的一些可组合地应用。在一些状况下,可产生包含适用于某些视频内容的多个限制方案的媒体格式文件(根据媒体文件格式,例如ISOBMFF或其它适合的格式)。举例来说,多个限制方案可同时应用于与一个样本项相关联的相同媒体内容。改进式设计适用于任何类型的视频编解码器。播放器装置可接收在其中指示多个限制方案的媒体文件,且可剖析文件以获得将多个限制方案应用于视频内容所需的信息。举例来说,使用来自文件的信息,播放器装置可将多个限制方案应用于与文件中的一个样本项相关联的媒体内容。
在一些实例中,多个方案类型框可包含于含于媒体格式文件的样本项中的限制方案信息框中。如上文所提及,方案类型框定义特定限制的准确性质。举例来说,方案类型框识别适用于与样本项相关联的视频内容的特定方案类型(例如播放轨符合的方案类型)。所述多个方案类型框提供识别处理与所述样本项相关联的媒体内容所需的多个限制方案类型的能力。在一些状况下,方案类型框也可被称作兼容方案类型框。在一些实例中,除了多个方案类型框以外,多个方案信息框也可包含于限制方案信息框中。对于特定方案类型所需的数据存储于对应方案信息框中。举例来说,一个方案信息框可包含于各方案类型框的限制方案信息框中。限制方案信息框(restrictedSchemeInfoBox)是基于 Box()而非FullBox(),不存在版本字段,因此无法定义框的新版本。然而,此方法为向后兼容的,这是因为设计允许将更多可选框添加到框中的末端。
指定适用于与样本项相关联的媒体内容的多个限制方案()的媒体格式文件的详细实施例的说明性实例提供于下文中。在以下实例中,添加到ISO/IEC标准(例如ISO/IEC14496-n、ISO/IEC 15444-n等等)的限制方案设计中描述的实施方案的额外文本在<*>括号之间展示(例如展示为<“额外文本”>)。
在说明性实例中,为了实施指定适用于与样本项相关联的媒体内容的多个限制方案的媒体格式文件,限制方案信息框、方案类型框及方案信息框的定义如下文所示而改变:
限制方案信息框
框类型: “rinf”
容器: 受限制样本项或样本项
必选: 是
数量: 恰好一个
限制方案信息框含有理解所应用的约束方案及其参数两者需要的所有信息。其也记录媒体的原始(未经变换)样本项类型。限制方案信息框为容器框。其在使用指示样本流的码即“resv”的样本项中为必选的。
当用于受限制样本项中时,此框必须含有原始格式框以记录原始样本项及方案类型框。方案信息框取决于约束方案可被需要。
Figure BDA0002101069540000251
方案类型框
框类型: “schm”
容器: 保护方案信息框(“sinf”),限制方案信息框(“rinf”)或SRTP过程框(“srpp”)
必选: 否
数量: “sinf”中零或一个,取决于保护结构;“srpp”中恰好一个;<“rinf”中一或多个>
方案类型框(“schm”)识别保护或限制方案类型。
Figure BDA0002101069540000252
Figure BDA0002101069540000261
scheme_type为定义保护或限制方案的程序代码。
scheme_version为方案(用以产生内容)的版本
scheme_URI允许在用户尚未在其系统上安装方案的情况下将用户引导到网页页面的选项。其是形成为UTF-8字符中的空字符结尾字串的绝对URI。
方案信息框
框类型: “schi”
容器: 保护方案信息框(“sinf”),限制方案信息框(“rinf”)或SRTP过程框(“srpp”)
必选: 否
数量: “sinf”及“srpp”的零或一个;<“rinf”中零或更多个>
方案信息框是仅由正使用的方案解译的容器框。加密或限制系统需要的任何信息存储于此处。此框的内容为其类型及格式由方案类型框中声明的方案定义的一系列框。
aligned(8)class SchemeInformationBox extends Box('schi'){
Box scheme_specific_data[];
}
如上述说明性实例中所展示,限制方案信息框包含多个方案类型框(SchemeTypeBox#1、SchemeTypeBox#i到SchemeTypeBox#N),方案类型框指示处理与含有限制方案信息框的特定样本项容器相关联的媒体内容所需的多个方案类型。在一些状况下,方案类型框中的每一个也可表示为CompatibleSchemeTypeBox。另外,限制方案信息框包含多个方案信息框(SchemeInformationBox#1、SchemeInformationBox#i到SchemeInformationBox#N),方案信息框包含执行对应方案类型所需的数据。举例来说,SchemeInformationBox#1可包含一或多个框,所述一或多个框包含实施由SchemeTypeBox#1识别的方案类型所需的数据。
在一些实例中,根据本文中所描述的技术产生的媒体格式文件可包含样本项容器中的多个限制方案信息框,以便指示适用于与彼样本项相关联的媒体内容的多个限制方案。此技术的详细实施例的说明性实例提供于下文中。在以下实例中,添加到ISO/IEC 标准(例如ISO/IEC 14496-n、ISO/IEC 15444-n等等)的限制方案设计中描述的实施方案的额外文本在<*>括号之间展示(例如展示为<“额外文本”>)。
限制方案信息框的定义如下文所示而改变:
限制方案信息框
框类型: “rinf”
容器: 受限制样本项或样本项
必选: 是
数量: <一或多个>
限制方案信息框含有理解所应用的约束方案及其参数两者需要的所有信息。其也记录媒体的原始(未经变换)样本项类型。限制方案信息框为容器框。其在使用指示样本流的码即“resv”的样本项中为必选的。
当用于受限制样本项中时,此框必须含有原始格式框以记录原始样本项及方案类型框。方案信息框取决于约束方案可被需要。
Figure BDA0002101069540000271
如上述说明性实例中所展示,在媒体格式文件的样本项容器中产生具有多个限制方案信息框的媒体格式文件允许文件指示适用于与样本项相关联的媒体内容的多个限制方案。
图4说明可包含于ISO基本媒体文件中的媒体框424的实例,ISO基本媒体文件指定适用于与样本项相关联的媒体内容的多个限制方案(使用多个方案类型框462a、462b 及多个方案信息框464a、464b)。如上文所论述,媒体框可包含于播放轨框中,且可含有描述播放轨中的媒体数据的对象及信息。在所说明的实例中,媒体框424包含媒体信息框442。媒体框424也可包含其它框,其在此处不予以说明。
媒体信息框442可含有描述关于播放轨中的媒体的特性信息的对象。举例来说,媒体信息框442可包含描述播放轨中的媒体信息的位置的数据信息框。作为另一实例,当播放轨包含视频数据时,媒体信息框442可包含视频媒体标头。视频媒体标头可含有独立于视频媒体的译码的大体上呈现信息。当播放轨包含音频数据时,媒体信息框442也可包含声音媒体标头。
媒体信息框442也可包含样本表框444。由框类型“stbl”识别的样本表框444可提供播放轨中的媒体样本的位置(例如具有文件的位置文件以及所述样本的时间信息。使用通过样本表框444提供的信息,播放器装置可以正确时间次序定位样本,确定样本的类型,及/或确定大小、容器及容器内的样本的偏移等等。
样本表框444可包含由框类型“stsd”识别的样本描述框446。样本描述框446可提供关于例如用于样本的译码类型的详细信息,及针对彼译码类型需要的任何初始化信息。存储于样本描述框中的信息可特定针对于包含样本的播放轨的类型。举例来说,一个格式在播放轨为视频播放轨时可用于样本描述,且在播放轨为提示播放轨时可使用不同格式。作为另一实例,针对样本描述的格式也可取决于提示播放轨的格式而发生变化。
样本描述框446可包含一或多个样本项448a到448n。样本项类型为摘要类别,且因此通常样本描述框包含特定样本项框,例如视频数据的视觉样本项或音频样本的音频样本项等等实例。样本项框可存储针对特定样本的参数。举例来说,对于视频样本而言,样本项框可包含视频样本的宽度、高度、水平剖析度、垂直剖析度、帧计数及/或深度等等。作为另一实例,对于音频样本,样本项可包含信道计数、信道布局及/或采样速率等等。
在所说明实例中,第一样本项448a包含限制方案信息框460。在此类实例中,第一样本项448a可具有指示受限制流的程序代码(例如“resv”)。如本文中所描述,由框类型“rinf”识别的限制方案信息框可含有理解应用于样本的限制方案及方案的参数两者所需的信息(例如在一或多个其它框中)。如上文所提及,文件的原创者可需要来自播放器装置的某些动作以处理某些媒体内容。在此类状况下,文件可包含限制方案信息框,播放器装置可定位且使用限制方案信息框以确定显现与样本项相关联的媒体内容的要求。可能不能够显现内容的播放器也可使用限制方案信息框来确定其不可显现内容,且因此不应试图处理内容。限制方案信息框通常包含原始样本项类型,即,在通过限制方案信息框描述的任何变换之前的样本项的类型。
在各种实施方案中,如上文所提及,可针对不同种类的内容定义不同类型的限制方案。限制方案的类型可指定于由框类型“schm”识别的方案类型框中。限制方案类型的说明性实例包含:立体视频布置(表示为“stvi”)的限制方案类型、虚拟实境视频(表示为“vrvd”)的限制方案类型、投影全向视频(表示为“podv”)的限制方案类型、等矩形投影视频(表示为“erpv”)的限制方案类型、封装等矩形或立方图投影视频(表示为“ercm”) 的限制方案类型、超广角全向视频(表示为“fodv”)的限制方案类型等等。
在图4中所展示的说明性实例中,第一样本项448a包含帧封装立体虚拟实境视频内容。适用于帧封装立体虚拟实境视频内容的两种类型的限制方案包含立体视频布置(“stvi”)的限制方案类型及虚拟实境视频(“vrvd”)的限制方案类型。限制方案信息框 460添加到包含帧封装立体虚拟实境视频内容的第一样本项448a。方案类型框462a指示表示为“vrvd”的虚拟实境内容的限制方案类型,且方案类型框462b指示表示为“stvi”的立体视频内容的限制方案类型。
所说明实例中的限制方案信息框460也包含两个方案信息框464a及464b,所述两个方案信息框都由框类型“schi”识别。方案信息框464a、464b可存储与其相关的具体方案的信息。举例来说,方案信息框464a适用于虚拟实境内容的限制方案类型框462a (“vrvd”方案类型),且包含虚拟实境内容的参数。举例来说,此些参数可包含虚拟实境视频为2-D抑或3-D,虚拟实境视频经预缝合或后缝合,及/或针对虚拟实境视频的映射。在各种实施方案中,方案信息框可经定义用于虚拟实境内容,具体来说用于含有针对虚拟实境内容的参数。
方案信息框464b适用于帧封装立体内容(“stvi”方案类型)的限制方案类型框462b,且包含对于帧封装立体内容的限制方案类型所需的参数。举例来说,当经立体译码视频帧经解码时,经解码帧可含有形成立体对的两个空间封装的构成帧的表示,或可仅包含立体对(不同播放轨中的左视图及右视图)的一个视图。由于当经立体译码视频的限制可含于方案信息框464b中。举例来说,方案信息框464b为容器框,且含于方案信息框464b 中的框可包含表示为“StereoVideoBox”的框。在一个说明性实例中,对于立体视频帧,方案信息框464b中的(例如含于方案信息框464b中的StereoVideoBox中的)参数可包含信息,信息指示经解码帧含有形成立体对的两个空间封装的构成帧的表示抑或含有立体对的两个视图中的一个。举例来说,两个空间封装的构成帧图片可包含同一时间例项处的相同场景的两个超广角图片,但所述图片来自不同视图。两个图片可封装于视频帧中 (例如并排封装布置中)。在另一实例中,对于全向图片,方案信息框464b中的参数可包含信息,信息指示含有两个空间封装的构成图片的表示的经重建图像。
现描述立体视频框的的说明性实例。如上文所提及,立体视频框可含于方案信息框 464b中,且包含对于“stvi”限制方案类型所需的数据。立体视频框可如下定义:
框类型: “stvi”
容器: SchemeInformationBox
必选: 是(当SchemeType为“stvi”时)
数量: 一个
立体视频框的语法及语义的实例如下:
Figure BDA0002101069540000301
single_view_allowed为整数。零值指示内容可仅显示于立体显示器上。当(single_view_allowed&1)等于1时,其被允许以在单像单一视图显示器上显示右视图。当(single_view_allowed&2)等于2时,其被允许以在单像单一视图显示器上显示左视图。
stereo_scheme为整数,其指示所使用的立体布置方案及根据所使用的方案的立体指示类型。stereo_scheme的以下值经指定如下:
1:如由ISO/IEC 14496-10[ISO/IEC 14496-10]的帧填充布置补充增强信息消息指定的框架填充方案
2:如ISO/IEC 13818-2[ISO/IEC 13818-2:2000/修订4]的附录L中所指定的布置类型方案
3:如针对兼容的帧/服务及2D/3D混合服务两者的ISO/IEC 23000-11中所指定的立体方案。
预留stereo_scheme的其它值。
长度指示stereo_indication_type字段的位组的数目。
stereo_indication_type指示根据所使用的立体指示方案的立体布置类型。stereo_indication_type的语法及语义取决于stereo_scheme的值。针对stereo_scheme的以下值的stereo_indication_type的语法及语义指定如下:
stereo_scheme等于1:长度的值应为4,且stereo_indication_type应为无正负号的 int(32),其含有来自ISO/IEC 14496-10[ISO/IEC 14496-10]的表D-8的 frame_packing_arrangement_type值](“frame_packing_arrangement_type的定义”)。
stereo_scheme等于2:长度的值应为4,且stereo_indication_type应为无正负号的 int(32),其含有ISO/IEC 13818-2[ISO/IEC 13818-2:2000/修正4]的表L-1的类型的](“arrangement_type的定义”)。
stereo_scheme等于3:长度的值应为2,且stereo_indication_type应含有无正负号 Int(8)的两个语法元素。第一语法元素应含有来自ISO/IEC 23000-11:2009的表4的立体组合物类型。第二语法元素的最低有效位应含有如ISO/IEC 23000-11:2009的8.4.3中指定的is_left_first的值,而其它位经预留且应设定为0。
当使用StereoVideoBox时,以下情形适用:
-在TrackHeaderBox中
-宽度及高度指定单一视图在解封装之后的视觉呈现大小。
-在SampleDescriptionBox中
-frame_count应为1,这是因为解码器物理上输出单一帧。换句话说,包含于帧封装图片内的构成帧由frame_count记录。
-宽度及高度记录帧封装图片的像素计数(且不记录帧封装图片内单一视图的像素计数)。
-当视图显示于单像单一视图显示器上时,PixelAspectRatioBox记录每一视图的像素宽高比。举例来说,在许多空间帧填充布置中,像素宽高比框因此指示2:1或 1:2像素宽高比,此是由于帧封装视频的一个视图的空间剖析度相较于同一格式的单一视图视频的彼空间剖析度通常沿着一个坐标轴线被减半。
通过运用限制方案信息框460产生媒体信息框442以包含方案类型框462a及方案类型框462b两者以及方案信息框464a及方案信息框464b两者,两种类型的限制方案(“vrvd”及“stvi”方案类型)可同时应用于与第一样本项448a相关联的帧封装立体虚拟实境视频内容。
存在多个限制方案可应用于与一个样本项相关联的相同媒体内容的许多其它实例。举例来说,虚拟实境视频(或360度视频)内容可包含投影到等矩形表示的球形视频内容。作为另一实例,虚拟实境视频(或360度视频)内容可包含投影成立方图几何形状、截断正方形金字塔几何形状或其它投影的球形视频内容。多个限制方案可应用于此类内容。在下文描述可包含于媒体文件中且适用于与媒体文件中的样本项相关联的媒体内容的限制方案的实例。
限制方案类型的另一实例为用于投影全向视频(其中方案类型表示为“podv”)。举例来说,将投影全向视频方案用于受限制视频样本项类型“resv”指示经解码图片是含有单像抑或立体内容的封装图片。对投影全向视频方案的使用由scheme_type指示, scheme_type等于限制方案信息框(RestrictedSchemeInfoBox)中的方案类型框 (SchemeTypeBox)内的“podv”(投影全向视频)。投影单像图片的格式以含于限制方案信息框中的方案信息框(SchemeInformationBox)内的ProjectedOmniVideoBox指示。在一些状况下,当方案类型为“podv”时,一个且仅一个ProjectedOmniVideoBox应在 SchemeInformationBox中存在。在一些状况下,“podv”方案类型定义为用于投影全向视频的开放式方案类型。
提供用于等矩形投影视频(其中方案类型表示为“erpv”)的另一限制方案类型。在一些状况下,“erpv”方案类型定义为用于投影全向视频的密闭式方案类型。当在限制方案信息框(RestrictedSchemeInfoBox)中的方案类型框(也被称作兼容方案类型框)中scheme_type等于“erpv”时,对应播放轨符合等于“podv”的scheme_type的约束(如 ISO/IEC 14496-15标准文档中定义),以及各种额外约束。举例来说,投影全向视频框(ProjectedOmniVideoBox)内的投影格式框(ProjectionFormatBox)应指示等矩形投影。另外,当区域式封装框(RegionWisePackingBox)存在时,以下约束全部适用:
NumRegions的值应等于HorDiv1×VerDiv1。
对于介于0到NumRegions-1(包含0及NumRegions-1)范围内的i的各值,以下情形适用:
PackingType[i]的值应等于0。
TransformType[i]的值应等于0。
PackedRegWidth[i]的值应等于ProjRegWidth[i]。
PackedRegHeight[i]的值应等于ProjRegHeight[i]。
与等矩形投影视频限制方案类型“erpv”相关联的其它约束包含:ProjectionFormatBox、StereoVideoBox(如果存在)、RegionWisePackingBox(如果存在)、RotationBox(如果存在)及CoverageInformationBox(如果存在)的版本应等于0。另外,方案信息框(SchemeInformationBox)不应直接地或间接地含有除ProjectedOmniVideoBox、ProjectionFormatBox、StereoVideoBox、RegionWisePackingBox、RotationBox及CoverageInformationBox以外的任何框。
图5为说明用于使用本文中所描述的技术来处理视频数据的过程500的实例的流程图。在块502处,过程500包含获得视频数据。在一个说明性实例中,视频数据可包含应与媒体格式文件的样本项相关联的经编码视频位流的部分(例如一或多个样本)。在一些实例中,可对经编码视频位流进行加密。在另一说明性实例中,视频数据可包含应与媒体格式文件的样本项相关联的视频(例如由一或多个摄影机捕捉)的一部分。在此类实例中,在产生媒体格式文件之前,可通过过程500对视频数据进行编码,且在一些状况下,进行加密。
在块504处,过程500包含产生媒体格式文件,媒体格式文件包含视频数据及与视频数据相关联的限制方案信息框。在一个说明性实例中,使用ISO基本媒体文件格式(ISOBMFF)或使用从ISO基本媒体文件格式导出的媒体文件格式产生媒体格式文件。所述限制方案信息框包含多个方案类型框。所述多个方案类型框识别用于处理所述视频数据所需的多个限制方案类型。举例来说,所述多个方案类型框中的各方案类型框可识别用于处理视频数据所需的不同限制方案类型。在一些状况下,视频数据与媒体格式文件的一个样本项相关联。在此类状况下,媒体格式文件可指定适用于与媒体格式文件的一个样本项相关联的视频数据的多个限制方案(使用多个方案类型框,且在一些状况下,使用多个方案信息框)。在一些实例中,所述多个方案类型框中的方案类型框识别由方案类型框识别的限制方案类型的版本。举例来说,上文使用的scheme_version的值可具有指示特定限制方案类型的版本的特定值(例如0、1、2等等)。特定限制方案类型的不同版本可包含由方案类型指示的限制方案的变体。在一些实例中,所述多个方案类型框中的方案类型框包含识别符,所述识别符识别实施由方案类型框识别的限制方案类型所需的数据源。举例来说,识别符可包含统一资源定位符(URL)或可提供对源的存取以获得数据的其它适合源识别符。
由多个方案类型框识别的限制方案类型可包含任何适合的限制方案类型。限制方案类型的说明性实例包含:立体视频布置(表示为“stvi”)的限制方案类型、虚拟实境视频(表示为“vrvd”)的限制方案类型、投影全向视频(表示为“podv”)的限制方案类型、等矩形投影视频(表示为“erpv”)的限制方案类型、封装等矩形或立方图投影视频(表示为“ercm”)的限制方案类型、超广角全向视频(表示为“fodv”)的限制方案类型等等。
在一些实例中,限制方案信息框进一步包含多个方案信息框。所述多个方案信息框中的方案信息框包含由多个方案类型框中的方案类型框识别的限制方案类型所需的数据。使用来自上文的实例,方案信息框可包含立体视频框,所述立体视频框包含对于“stvi”限制方案类型所需的数据。
一旦产生,那么媒体格式文件可以任何适合的方式使用。举例来说,过程500可包含发射媒体格式文件。举例来说,媒体格式文件可发射到文件处理装置(例如媒体播放器、文件剖析器、解码装置、存储装置、例如服务器的中间装置,及/或其它适合的装置)。在另一实例中,过程500可包含存储媒体格式文件。
在一些实例中,过程500可由计算装置或设备执行,例如媒体格式文件产生装置、编码装置104(其可以经配置以产生媒体格式文件)或任何其它计算装置。在一些状况下,计算装置或设备可包含处理器、微处理器、微计算机或经配置以实施过程500的步骤的装置的其它组件。在一些实例中,计算装置或设备可包含经配置以捕捉包含视频帧的视频数据(例如视频序列)的摄影机。举例来说,计算装置可包含摄影机装置,摄影机装置可或可不包含视频编解码器。作为另一实例,计算装置可包含具有摄影机的移动装置(例如数字摄影机、IP摄影机等等的摄影机装置、包含摄影机的移动电话或平板计算机或具有摄影机的其它类型的装置)。在一些状况下,计算装置可包含用于显示图像的显示器。在一些实例中,摄影机或捕捉视频数据的其它捕捉装置与计算装置分离,在此状况下,计算装置接收或获得所捕捉视频数据。计算装置可进一步包含经配置以传达视频数据的网络接口。网络接口可经配置以传达基于因特网协议(IP)的数据或其它网络数据。
图6为说明用于使用本文中所描述的技术来处理一或多个媒体格式文件的过程600 的实例的流程图。在块602处,过程600包含获得媒体格式文件,媒体格式文件包含视频数据及与视频数据相关联的限制方案信息框。在一个说明性实例中,使用ISO基本媒体文件格式(ISOBMFF)或使用从ISO基本媒体文件格式导出的媒体文件格式产生媒体格式文件。所述限制方案信息框包含多个方案类型框。所述多个方案类型框识别用于处理视频数据所需的多个限制方案类型。举例来说,所述多个方案类型框中的各方案类型框可识别用于处理视频数据所需的不同限制方案类型。在一些状况下,视频数据与媒体格式文件的一个样本项相关联。在此类状况下,媒体格式文件可指定适用于与媒体格式文件的一个样本项相关联的视频数据的多个限制方案(使用多个方案类型框,且在一些状况下,使用多个方案信息框)。在一些实例中,所述多个方案类型框中的方案类型框识别由方案类型框识别的限制方案类型的版本。在一些实例中,所述多个方案类型框中的方案类型框包含识别符,所述识别符识别实施由方案类型框识别的限制方案类型所需的数据源。举例来说,识别符可包含统一资源定位符(URL)或可提供对源的存取以获得数据的其它适合源识别符。
由多个方案类型框识别的限制方案类型可包含任何适合的限制方案类型。限制方案类型的说明性实例包含:立体视频布置(表示为“stvi”)的限制方案类型、虚拟实境视频(表示为“vrvd”)的限制方案类型、投影全向视频(表示为“podv”)的限制方案类型、等矩形投影视频(表示为“erpv”)的限制方案类型、封装等矩形或立方图投影视频(表示为“ercm”)的限制方案类型、超广角全向视频(表示为“fodv”)的限制方案类型等等。
在一些实例中,限制方案信息框进一步包含多个方案信息框。所述多个方案信息框中的方案信息框包含由多个方案类型框中的方案类型框识别的限制方案类型所需的数据。使用来自上文的实例,方案信息框可包含立体视频框,所述立体视频框包含对于“stvi”限制方案类型所需的数据。
在块604处,过程600包含剖析媒体格式文件。举例来说,可通过展开框且获得帧内的内容来剖析包含于媒体格式文件中的框中的每一个。在块606处,过程600包含根据由多个方案类型框识别的多个限制方案类型而处理视频数据。
可视需要处理视频数据及从媒体格式文件剖析的内容。举例来说,过程600可对视频数据进行解码(例如使用解码器)。过程600可进一步包含使用与包含于媒体格式文件中的限制方案相关的信息来显现且显示经解码视频数据。
在一些实例中,过程600可由计算装置或设备执行,例如媒体格式文件处理装置、解码装置112(其可以经配置以例如通过执行媒体格式文件的反变换来剖析媒体格式文件)或任何其它计算装置。在一些状况下,计算装置或设备可包含处理器、微处理器、微计算机或经配置以实施过程600的步骤的装置的其它组件。在一些实例中,计算装置或设备可包含经配置以捕捉包含视频帧的视频数据(例如视频序列)的摄影机。举例来说,计算装置可包含摄影机装置,摄影机装置可或可不包含视频编解码器。作为另一实例,计算装置可包含具有摄影机的移动装置(例如数字摄影机、IP摄影机等等的摄影机装置、包含摄影机的移动电话或平板计算机或具有摄影机的其它类型的装置)。在一些状况下,计算装置可包含用于显示图像的显示器。在一些实例中,摄影机或捕捉视频数据的其它捕捉装置与计算装置分离,在此状况下,计算装置接收或获得所捕捉视频数据。计算装置可进一步包含经配置以传达视频数据的网络接口。网络接口可经配置以传达基于因特网协议(IP)的数据或其它网络数据。
过程500及600经说明为逻辑流程图,所述过程的操作表示可以硬件、计算机指令或其组合实施的一连串操作。在计算机指令的上下文中,操作表示存储于一或多个计算机可读存储媒体上当通过一或多个处理器执行时执行所叙述操作的计算机可执行指令。通常,计算机可执行指令包含执行特定功能或实施特定数据类型的例程、程序、对象、组件、逻辑、数据结构等等。描述操作的次序并不打算被理解为限制,且任何数目个经描述操作可按任何次序及/或与实施过程并行地组合。
另外,过程500及600可在经配置有可执行指令的一或多个计算机系统的控制下执行,且可被实施为在一或多个处理器上、通过硬件或其组合共同地执行的程序代码(例如可执行指令、一或多个计算机程序或一或多个应用程序)。如上文所提及,程序代码可存储于计算机可读或机器可读存储媒体上,例如呈包括可由一或多个处理器执行的多个指令的计算机程序的形式。计算机可读或机器可读存储媒体可为非暂时性的。
本文中所论述的技术及系统可实施于实例视频编码及解码系统(例如系统100)中。在一些实例中,系统包含提供稍后由目的地装置解码的经编码视频数据的源装置。详细来说,源装置经由计算机可读媒体将视频数据提供到目的地装置。源装置及目的地装置可包括广泛范围的装置中的任一个,包含台式计算机、笔记型计算机(即,笔记本计算机)、平板计算机、机顶盒、电话手机(例如,所谓的“智能型”电话)、所谓的“智能型”板、电视、摄影机、显示装置、数字媒体播放器、视频游戏控制台、视频流式传输装置等等。在一些状况下,源装置及目的地装置可经装备以用于无线通信。
目的地装置可经由计算机可读媒体接收待解码的经编码视频数据。计算机可读媒体可包括能够将经编码视频数据从源装置移动到目的地装置的任何类型的媒体或装置。在一个实例中,计算机可读媒体可包括通信媒体以使得源装置能够实时地将经编码视频数据直接发射到目的地装置的通信媒体。可根据通信标准(例如无线通信协议)调制经编码视频数据,且将经编码视频数据发射到目的地装置。通信媒体可包括任何无线或有线通信媒体,例如射频(RF)频谱或一或多个物理发射线。通信媒体可形成基于包的网络(例如局域网、广域网或例如因特网的全域网络)的部分。通信媒体可包含路由器、交换器、基站或可用于促进从源装置到目的地装置的通信的任何其它装备。
在一些实例中,经编码数据可从输出接口输出到存储装置。类似地,经编码数据可由输入接口从存储装置存取。存储装置可包含多种分散式或本地存取的数据存储媒体中的任一个,例如硬盘机、Blu-ray盘片、DVD、CD-ROM、快闪存储器、易失性或非易失性存储器或用于存储经编码视频数据的任何其它合适的数字存储媒体。在另一实例中,存储装置可对应于文件服务器或可存储由源装置产生的经编码视频的另一中间存储装置。目的地装置可经由流式传输或下载从存储装置存取所存储的视频数据。文件服务器可为能够存储经编码视频数据且将彼经编码视频数据发射到目的地装置的任何类型的服务器。实例文件服务器包含网页服务器(例如用于网站)、FTP服务器、网络附加存储(network attached storage,NAS)装置或本地磁盘机。目的地装置可经由任何标准数据连接(包含因特网连接)来存取经编码视频数据。此连接可包含适合于存取存储于文件服务器上的经编码视频数据的无线信道(例如Wi-Fi连接)、有线连接(例如DSL、缆线调制解调器等)或两者的组合。从存储装置的经编码视频数据的发射可为流式传输发射、下载发射或其组合。
本发明的技术不必限于无线应用或设定。所述技术可应用于支持多种多媒体应用中的任一个的视频译码,例如空中电视广播、有线电视发射、卫星电视发射、因特网流式传输视频发射(例如经由HTTP的动态自适应流式传输(DASH))、经编码到数据存储媒体上的数字视频、存储于数据存储媒体上的数字视频的解码或其它应用。在一些实例中,系统可经配置以支持单向或双向视频发射从而支持例如视频流式传输、视频播放、视频广播及/或视频电话的应用。
在一个实例中,源装置包含视频源、视频编码器及输出接口。目的地装置可包含输入接口、视频解码器及显示装置。源装置的视频编码器可经配置以应用本文中所公开的技术。在其它实例中,源装置及目的地装置可包含其它组件或布置。举例来说,源装置可从外部视频源(例如外部摄影机)接收视频数据。同样,目的地装置可与外部显示装置介接,而非包含集成式显示装置。
所述实例系统仅仅为一个实例。用于并行地处理视频数据的技术可由任何数字视频编码及/或解码装置来执行。尽管本发明的技术一般由视频编码装置执行,但所述技术也可由视频编码器/解码器(通常被称作“编解码器”)执行。此外,本发明的技术也可由视频预处理器执行。源装置及目的地装置仅为源装置产生经译码视频数据以供发射到目的地装置的此类译码装置的实例。在一些实例中,源装置及目的地装置可以大体上对称的方式操作,使得所述装置中的每一个包含视频编码及解码组件。因此,实例系统可支持视频装置之间的单向或双向视频发射,例如用于视频流式传输、视频播放、视频广播或视频电话。
视频源可包含视频捕捉装置,例如摄像机、含有先前捕捉的视频的视频存档及/或用以从视频内容提供者接收视频的视频馈入接口。作为另一替代方案,视频源可产生基于计算机图形的数据作为源视频,或实况视频、存档视频及计算机产生的视频的组合。在一些状况下,如果视频源为摄像机,那么源装置及目的地装置可形成所谓的摄影机电话或视频电话。然而,如上文所提及,本发明所描述的技术一般可适用于视频译码,且可适用于无线及/或有线应用。在每一情况下,可由视频编码器编码所捕捉、经预捕捉或计算机产生的视频。经编码视频信息接着可由输出接口输出到计算机可读媒体上。
如所提及,计算机可读媒体可包含暂态媒体,例如无线广播或有线网络发射;或存储媒体(即,非暂时性存储媒体),例如硬盘、随身盘、紧密光盘、数字视频光盘、蓝光光盘或其它计算机可读媒体。在一些实例中,网络服务器(未展示)可从源装置接收经编码视频数据,且例如经由网络发射将经编码视频数据提供给目的地装置。类似地,媒体生产设施(例如光盘冲压设施)的计算装置可从源装置接收经编码视频数据且生产含有经编码视频数据的光盘。因此,在各种实例中,计算机可读媒体可理解为包含各种形式的一或多个计算机可读媒体。
目的地装置的输入接口从计算机可读媒体接收信息。计算机可读媒体的信息可包含由视频编码器定义的语法信息(其也由视频解码器使用),所述语法信息包含描述块及其它经译码单元(例如图片群组(group of pictures,GOP))的特性及/或处理的语法元素。显示装置将经解码视频数据显示给用户,且可包括多种显示装置中的任一个,例如阴极射线管(cathode ray tube,CRT)、液晶显示器(liquid crystal display,LCD)、等离子体显示器、有机发光二极管(organic light emitting diode,OLED)显示器或另一类型的显示装置。已描述本发明的各种实施例。
编码装置104及解码装置112的特定细节分别展示于图7及图8中。图7为说明可实施本发明中所描述的技术中的一或多者的实例编码装置104的框图。编码装置104可例如产生本文中所描述的语法结构(例如VPS、SPS、PPS或其它语法元素的语法结构)。编码装置104可执行视频切片内的视频块的帧内预测及帧间预测译码。如先前所描述,帧内译码至少部分地依赖于空间预测以减少或去除给定视频帧或图片内的空间冗余。帧间译码至少部分地依赖于时间预测以减少或去除视频序列的邻近或周围帧内的时间冗余。帧内模式(I模式)可指若干基于空间的压缩模式中的任一个。帧间模式(例如单向预测(P模式)或双向预测(B模式))可指若干基于时间的压缩模式中的任一个。
编码装置104包含分割单元35、预测处理单元41、滤波器单元63、图片存储器64、求和器50、变换处理单元52、量化单元54及熵编码单元56。预测处理单元41包含运动估计单元42、运动补偿单元44及帧内预测处理单元46。对于视频块重构,编码装置 104还包含反量化单元58、反变换处理单元60及求和器62。滤波器单元63打算表示一或多个回路滤波器,例如解块滤波器、自适应性回路滤波器(adaptive loop filter,ALF) 及样本自适应性偏移(sample adaptive offset,SAO)滤波器。尽管滤波器单元63在图7中展示为回路内滤波器,但在其它配置中,滤波器单元63可实施为回路后滤波器。后处理装置57可对由编码装置104产生的经编码视频数据执行额外处理。本发明的技术可在一些情况下由编码装置104实施。然而,在其它情况下,本发明的技术中的一或多个可由后处理装置57实施。
如图7中所展示,编码装置104接收视频数据,且分割单元35将数据分割成视频块。分割也可包含分割成切片、切片片段、图像块或其它较大单元,以及视频块分割,例如根据LCU及CU的四分树结构。编码装置104一般说明编码待编码的视频切片内的视频块的组件。片段可划分成多个视频块(且可能划分成被称作图像块的视频块集合)。预测处理单元41可基于错误结果(例如译码速率及失真等级等等)选择多个可能译码模式中的一个,例如多个帧内预测译码模式中的一个或多个帧间预测译码模式中的一个以用于当前视频块。预测处理单元41可将所得经帧内或帧间译码块提供到求和器50以产生残余块数据且提供到求和器62以重构经编码块以用作参考图片。
预测处理单元41内的帧内预测处理单元46可执行当前视频块相对于与待译码的当前块相同的帧或切片中的一或多个相邻块的帧内预测译码以提供空间压缩。预测处理单元41内的运动估计单元42及运动补偿单元44执行当前视频块相对于一或多个参考图片中的一或多个预测性块的帧间预测性译码,以提供时间压缩。
运动估计单元42可经配置以根据视频序列的预定图案来确定用于视频切片的帧间预测模式。预定图案可将序列中的视频切片指定为P切片、B切片或GPB切片。运动估计单元42及运动补偿单元44可高度集成,但出于概念目的而单独说明。由运动估计单元42执行的运动估计为产生运动向量的处理,所述运动向量估计视频块的运动。运动向量例如可指示当前视频帧或图片内的视频块的预测单元(PU)相对于参考图片内的预测性块的移位。
预测性块为就像素差而言被发现紧密地匹配待译码的视频块的PU的块,所述像素差可由绝对差和(sum of absolute difference,SAD)、平方差和(sum of squaredifference, SSD)或其它差度量确定。在一些实例中,编码装置104可计算存储于图片存储器64中的参考图片的次整数像素位置的值。举例来说,编码装置104可内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元42可执行关于全像素位置及分数像素位置的运动搜索且输出具有分数像素精确度的运动向量。
运动估计单元42通过比较PU的位置与参考图片的预测性块的位置而计算经帧间译码切片中的视频块的PU的运动向量。参考图片可选自第一参考图片列表(列表0)或第二参考图片列表(列表1),所述列表中的每一个识别存储于参考图片存储器64中的一或多个参考图片。运动估计单元42将所计算的运动向量发送到熵编码单元56及运动补偿单元44。
由运动补偿单元44执行的运动补偿可涉及基于由运动估计(可能执行内插到子像素精确密度)确定的运动向量而提取或产生预测性块。在接收到当前视频块的PU的运动向量之后,运动补偿单元44可在参考图片列表中定位运动向量所指向的预测性块。编码装置104通过从正经译码的当前视频块的像素值减去预测性块的像素值从而形成像素差值来形成残余视频块。像素差形成用于块的残余数据,且可包含亮度及色度差分量两者。求和器50表示执行此减法运算的一或多个组件。运动补偿单元44也可产生与视频块及视频切片相关联的语法元素,以供解码装置112用于解码视频切片的视频块。
如上文所描述,作为由运动估计单元42及运动补偿单元44所执行的帧间预测的替代例,帧内预测处理单元46可对当前块进行帧内预测。特定来说,帧内预测处理单元 46可确定帧内预测模式以用以编码当前块。在一些实例中,帧内预测处理单元46可例如在单独编码遍次期间使用各种帧内预测模式编码当前块,且帧内预测处理单元46可从经测试模式中选择适当帧内预测模式来使用。举例来说,帧内预测处理单元46可使用对各种所测试帧内预测模式的速率-失真分析来计算速率-失真值,且可在所测试模式间选择具有最佳速率-失真特性的帧内预测模式。率失真分析大体上确定经编码块与原始、未经编码块(其经编码以产生经编码块)之间的失真(或误差)量,以及用以产生经编码块的位率(即,位的数目)。帧内预测处理单元46可根据各种经编码块的失真及速率计算比率以确定哪一帧内预测模式展现所述块的最佳速率-失真值。
在任何情况下,在选择用于块的帧内预测模式后,帧内预测处理单元46可将指示用于块的所选帧内预测模式的信息提供到熵编码单元56。熵编码单元56可编码指示所选帧内预测模式的信息。编码装置104可将各种块的编码上下文的定义以及待用于上下文中的每一个的最可能的帧内预测模式、帧内预测模式索引表及经修改帧内预测模式索引表的指示包含于经发射位流配置数据中。位流配置数据可包含多个帧内预测模式索引表及多个经修改帧内预测模式索引表(也被称作码字映射表)。
在预测处理单元41经由帧间预测或帧内预测产生用于当前视频块的预测性块之后,编码装置104通过从当前视频块减去预测性块而形成残余视频块。残余块中的残余视频数据可包含于一或多个TU中且被应用于变换处理单元52。变换处理单元52使用例如离散余弦变换(discrete cosine transform,DCT)或概念上类似变换的变换将残余视频数据变换成残余变换系数。变换处理单元52可将残余视频数据从像素域转换到变换域(例如频域)。
变换处理单元52可将所得变换系数发送到量化单元54。量化单元54量化变换系数以进一步减小位率。量化过程可减小与系数中的一些或所有相关联的位深度。可通过调整量化参数来修改量化程度。在一些实例中,量化单元54可接着执行对包含经量化变换系数的矩阵的扫描。替代地,熵编码单元56可执行扫描。
在量化之后,熵编码单元56对经量化变换系数进行熵编码。举例来说,熵编码单元56可执行上下文自适应性可变长度译码(context adaptive variable length coding,CAVLC)、上下文自适应性二进制算术译码(context adaptive binary arithmeticcoding, CABAC)、基于语法的上下文自适应性二进制算术译码(syntax-based context-adaptive binary arithmetic coding,SBAC)、概率区间分割熵(probability intervalpartitioning entropy, PIPE)译码或另一熵编码技术。在由熵编码单元56进行熵编码之后,经编码位流可发射到解码装置112,或经存档以供稍后由解码装置112发射或由解码装置112检索。熵编码单元56也可熵编码正经译码的当前视频切片的运动向量及其它语法元素。
反量化单元58及反变换处理单元60分别应用反量化及反变换以重构像素域中的残余块以供稍后用作参考图片的参考块。运动补偿单元44可通过将残余块添加到参考图片列表内的参考图片中的一个的预测性块来计算参考块。运动补偿单元44也可将一或多个内插滤波器应用于经重构残余块以计算用于次整数像素值以用于运动估计。求和器 62将经重构残余块添加到由运动补偿单元44产生的运动补偿预测块以产生用于存储于图片存储器64中的参考块。参考块可由运动估计单元42及运动补偿单元44用作参考块以帧间预测后续视频帧或图片中的块。
以此方式,图7的编码装置104表示经配置以导出LIC参数、适应性地确定模板的大小及/或适应性地选择权重的视频编码器的实例。如上文所描述,编码装置104可例如导出LIC参数、适应性地确定模板的大小,及/或适应性地选择权重集合。举例来说,编码装置104可执行本文中所描述技术中的任一个,包含上文关于图5所描述的过程。在此类状况下,编码装置104经配置以产生媒体格式文件。在一些状况下,本发明的技术中的一些也可通过后处理装置57实施。
图8为说明实例解码装置112的框图。解码装置112包含熵解码单元80、预测处理单元81、反量化单元86、反变换处理单元88、求和器90、滤波器单元91及图片存储器92。预测处理单元81包含运动补偿单元82及帧内预测处理单元84。解码装置112 可在一些实例中执行与关于来自图7的编码装置104描述的编码遍次大体上互逆的解码遍次。
在解码过程期间,解码装置112接收表示由编码装置104发送的经编码视频切片的视频块及由编码装置104发送的相关联语法元素的经编码视频位流。在一些实施例中,解码装置112可从编码装置104接收经编码视频位流。在一些实施例中,解码装置112 可从网络实体79(例如服务器、媒体感知网络元件(media-aware network element, MANE)、视频编辑器/编接器(splicer)或经配置以实施上文所描述的技术中的一或多者的其它此类装置)接收经编码视频位流。网络实体79可或可不包编码装置104。在网络实体79将经编码视频位流发射到解码装置112之前,本发明中所描述的技术中的一些可由网络实体79实施。在一些视频解码系统中,网络实体79及解码装置112可为独立装置的部分,而在其它情况下,关于网络实体79描述的功能性可由包括解码装置112的同一装置执行。
解码装置112的熵解码单元80对位流进行熵解码以产生经量化系数、运动向量及其它语法元素。熵解码单元80将运动向量及其它语法元素转递到预测处理单元81。解码装置112可接收以视频切片层级及/或视频块层级接收的语法元素。熵解码单元80可处理且剖析例如VPS、SPS及PPS的一或多个参数集中的固定长度语法元素及可变长度语法元素两者。
当视频切片被译码为经帧内译码(I)切片时,预测处理单元81的帧内预测处理单元 84可基于经发信帧内预测模式及来自当前帧或图片的先前经解码块的数据而产生当前视频切片的视频块的预测数据。当视频帧经译码为经帧间译码(即B、P或GPB)切片时,预测处理单位81的运动补偿单元82基于运动向量及从熵解码单元80接收到的其它语法元素而产生当前视频切片的视频块的预测性块。预测性块可从参考图片列表内的参考图片中的一个产生。解码装置112可基于存储于图片存储器92中的参考图片使用默认构建技术来构建参考帧列表--列表0及列表1。
运动补偿单元82通过剖析运动向量及其它语法元素来确定用于当前视频切片的视频块的预测信息,且使用所述预测信息以产生经解码当前视频块的预测性块。举例来说,运动补偿单元82可使用参数集中的一或多个语法元素以确定用于译码视频切片的视频块的预测模式(例如帧内预测或帧间预测)、帧间预测切片类型(例如B切片、P切片或 GPB切片)、切片的一或多个参考图片列表的构建信息、切片的每一帧间编码视频块的运动向量、切片的每一帧间译码视频块的帧间预测状态,及用以解码当前视频切片中的视频块的其它信息。
运动补偿单元82也可执行基于内插滤波器的内插。运动补偿单元82可使用如在视频块的编码期间由编码装置104使用的内插滤波器来计算参考块的子整数像素的内插值。在此状况下,运动补偿单元82可从所接收语法元素确定由编码装置104使用的内插滤波器,且可使用内插滤波器来产生预测性块。
反量化单元86反量化或解量化位流中所提供且由熵解码单元80解码的经量化变换系数。反量化过程可包含使用由编码装置104针对视频切片中的每一视频块计算的量化参数来确定量化程度及同样应应用的反量化程度。反变换处理单元88将反变换(例如反DCT或其它合适的反变换)、反整数变换或概念上类似的反变换过程应用于变换系数以便在像素域中产生残余块。
在运动补偿单元82基于运动向量及其它语法元素而产生当前视频块的预测性块之后,解码装置112通过将来自反变换处理单元88的残余块与由运动补偿单元82产生的对应预测性块求和而形成经解码视频块。求和器90表示执行此求和运算的一或多个组件。如果需要,也可使用回路滤波器(在译码回路中或在译码回路后)以使像素转变平滑,或以其它方式改进视频质量。滤波器单元91打算表示一或多个回路滤波器(例如解块滤波器、自适应性回路滤波器(ALF)及样本自适应性偏移(SAO)滤波器)。尽管滤波器单元91在图8中展示为回路滤波器,但在其它配置中,滤波器单元91可实施为回路后滤波器。给定帧或图片中的经解码视频块随后存储于图片存储器92中,图片存储器92存储用于后续运动补偿的参考图片。图片存储器92也存储经解码视频以供稍后呈现于显示装置(例如图1中所展示的视频目的地装置122)上。
以此方式,图8的解码装置112表示经配置以导出LIC参数、适应性地确定模板的大小及/或适应性地选择权重的视频解码器的实例。如上文所描述,解码装置112可例如导出LIC参数、适应性地确定模板的大小,及/或适应性地选择权重集合。举例来说,解码装置112可执行本文中所描述的技术中的任一个,包含上文关于图6所描述的过程。在此类状况下,解码装置112经配置以剖析媒体格式文件。
在前述描述中,参考其特定实施例描述申请案的方面,但所属领域的技术人员将认识到本发明不限于此。因此,尽管本文中已详细描述申请案的说明性实施例,但应理解,本发明概念可以其它方式不同地体现且使用,且所附权利要求书打算解释为包含除现有技术所限制外的此些变化。上文所描述的发明的各种特征及方面可单独地或联合地使用。另外,实施例可用于超出本文所描述的那些环境及应用的任何数目个环境及应用,而不脱离本说明书的更广精神及范围。因此,本说明书及图式被视为说明性而非限定性。出于说明的目的,以特定次序描述方法。应了解,在替代实施例中,可以与所描述的次序不同的次序来执行所述方法。
在组件被描述为“经配置以”执行某些操作的情况下,可例如通过设计电子电路或其它硬件以执行操作、通过可编程电子电路(例如微处理器或其它适合的电子电路)以执行操作或其任何组合来实现此配置。
结合本文所公开的实施例而描述的各种说明性逻辑块、模块、电路及算法步骤可被实施为电子硬件、计算机软件、固件或其组合。为了清楚地说明硬件与软件的此可互换性,各种说明性组件、块、模块、电路及步骤已在上文大体按其功能性加以了描述。将此功能性实施为硬件还是软件取决于特定应用及强加于整个系统的设计约束。所属领域的技术人员可针对每一特定应用以不同方式实施所描述的功能性,但不应将此些实施决策解释为导致脱离本发明的范围。
本文中所描述的技术也可实施于电子硬件、计算机软件、固件或其任何组合中。此些技术可实施于多种装置中的任何者中,例如通用计算机、无线通信装置手机或具有多种用途的集成电路装置,用途包含无线通信装置手机及其它装置中的应用。可将描述为模块或组件的任何特征共同实施于集成式逻辑装置中或分开实施为离散但可互操作的逻辑装置。如果以软件实施,那么所述技术可至少部分地由包括程序代码的计算机可读数据存储媒体实现,所述程序代码包含在被执行时执行上文所描述的方法中的一或多者的指令。计算机可读数据存储媒体可形成计算机程序产品的部分,计算机程序产品可包含封装材料。计算机可读媒体可包括存储器或数据存储媒体,例如随机存取存储器 (random accessmemory,RAM),例如同步动态随机存取存储器(synchronous dynamic random accessmemory,SDRAM)、只读存储器(read-only memory,ROM)、非易失性随机存取存储器(non-volatile random access memory,NVRAM)、电可擦除可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、快闪存储器、磁性或光学数据存储媒体等等。另外或替代地,所述技术可至少部分地由计算机可读通信媒体实现,所述计算机可读通信媒体载送或传达呈指令或数据结构的形式且可由计算机存取、读取及/或执行的程序代码,例如传播的信号或波。
程序代码可由可包含一或多个处理器的处理器执行,例如一或多个数字信号处理器 (DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路。此处理器可经配置以执行本发明中所描述的技术中的任一个。通用处理器可为微处理器;但在替代例中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器也可实施为计算装置的组合,例如DSP与微处理器的组合、多个微处理器、一或多个微处理器结合DSP核心,或任何其它此配置。因此,如本文中所使用的术语“处理器”可指前述结构中的任一个、前述结构的任何组合或适合于实施本文中所描述的技术的任何其它结构或设备。此外,在一些方面中,本文中描述的功能性可设置于经配置用于编码及解码的专用软件模块或硬件模块内,或并入于组合的视频编码器 -解码器(编解码器)中。

Claims (52)

1.一种处理视频数据的方法,所述方法包括:
获得所述视频数据;
产生媒体格式文件,所述媒体格式文件包含所述视频数据;
针对所述媒体格式文件的样本项,产生限制方案信息框,所述样本项与所述视频数据的一个或多个样本相关联;以及
针对所述限制方案信息框产生多个方案类型框,所述限制方案信息框是针对所述媒体格式文件的所述样本项产生的,所述多个方案类型框识别用于处理与所述样本项相关联的所述视频数据的所述一个或多个样本所需的多个限制方案类型。
2.根据权利要求1所述的方法,其中所述多个方案类型框中的各方案类型框识别用于处理所述视频数据所需的不同限制方案类型。
3.根据权利要求1所述的方法,其中所述视频数据与所述媒体格式文件的一个样本项相关联。
4.根据权利要求1所述的方法,其中所述多个方案类型框中的方案类型框识别由所述方案类型框识别的限制方案类型的版本。
5.根据权利要求1所述的方法,其中所述多个方案类型框中的方案类型框包含识别符,所述识别符识别实施由所述方案类型框识别的限制方案类型所需的数据源。
6.根据权利要求1所述的方法,其中所述限制方案信息框进一步包含多个方案信息框,且其中所述多个方案信息框中的方案信息框包含由所述多个方案类型框中的方案类型框识别的限制方案类型所需的数据。
7.根据权利要求1所述的方法,其中使用ISO基本媒体文件格式ISOBMFF或使用从所述ISO基本媒体文件格式导出的媒体文件格式产生所述媒体格式文件。
8.根据权利要求1所述的方法,其进一步包括发射所述媒体格式文件。
9.根据权利要求1所述的方法,其进一步包括存储所述媒体格式文件。
10.一种用于处理视频数据的设备,其包括:
存储器,其经配置以存储所述视频数据;及
处理器,其经配置以:
获得所述视频数据;
产生媒体格式文件,所述媒体格式文件包含所述视频数据;
针对所述媒体格式文件的样本项,产生限制方案信息框,所述样本项与所述视频数据的一个或多个样本相关联;以及
针对所述限制方案信息框产生多个方案类型框,所述限制方案信息框是针对所述媒体格式文件的所述样本项产生的,所述多个方案类型框识别用于处理与所述样本项相关联的所述视频数据的所述一个或多个样本所需的多个限制方案类型。
11.根据权利要求10所述的设备,其中所述多个方案类型框中的各方案类型框识别用于处理所述视频数据所需的不同限制方案类型。
12.根据权利要求10所述的设备,其中所述视频数据与所述媒体格式文件的一个样本项相关联。
13.根据权利要求10所述的设备,其中所述多个方案类型框中的方案类型框识别由所述方案类型框识别的限制方案的版本。
14.根据权利要求10所述的设备,其中所述多个方案类型框中的方案类型框包含识别符,所述识别符识别实施由所述方案类型框识别的限制方案类型所需的数据源。
15.根据权利要求10所述的设备,其中所述限制方案信息框进一步包含多个方案信息框,且其中所述多个方案信息框中的方案信息框包含由所述多个方案类型框中的方案类型框识别的限制方案类型所需的数据。
16.根据权利要求10所述的设备,其中使用ISO基本媒体文件格式ISOBMFF或使用从所述ISO基本媒体文件格式导出的媒体文件格式产生所述媒体格式文件。
17.根据权利要求10所述的设备,其中所述处理器经配置以发射所述媒体格式文件。
18.根据权利要求10所述的设备,其中所述处理器经配置以存储所述媒体格式文件。
19.根据权利要求10所述的设备,其中所述设备包括具有用于捕捉图片的摄影机的移动装置。
20.一种上面存储有指令的非暂时性计算机可读媒体,所述指令在由一或多个处理器执行时使得所述一或多个处理器执行以下操作:
获得视频数据;
产生媒体格式文件,所述媒体格式文件包含所述视频数据;
针对所述媒体格式文件的样本项,产生限制方案信息框,所述样本项与所述视频数据的一个或多个样本相关联;以及
针对所述限制方案信息框产生多个方案类型框,所述限制方案信息框是针对所述媒体格式文件的所述样本项产生的,所述多个方案类型框识别用于处理与所述样本项相关联的所述视频数据的所述一个或多个样本所需的多个限制方案类型。
21.根据权利要求20所述的非暂时性计算机可读媒体,其中所述多个方案类型框中的各方案类型框识别用于处理所述视频数据所需的不同限制方案类型。
22.根据权利要求20所述的非暂时性计算机可读媒体,其中所述视频数据与所述媒体格式文件的一个样本项相关联。
23.根据权利要求20所述的非暂时性计算机可读媒体,其中所述多个方案类型框中的方案类型框识别由所述方案类型框识别的限制方案类型的版本。
24.根据权利要求20所述的非暂时性计算机可读媒体,其中所述多个方案类型框中的方案类型框包含识别符,所述识别符识别实施由所述方案类型框识别的限制方案类型所需的数据源。
25.根据权利要求20所述的非暂时性计算机可读媒体,其中所述限制方案信息框进一步包含多个方案信息框,且其中所述多个方案信息框中的方案信息框包含由所述多个方案类型框中的方案类型框识别的限制方案类型所需的数据。
26.根据权利要求20所述的非暂时性计算机可读媒体,其中使用ISO基本媒体文件格式ISOBMFF或使用从所述ISO基本媒体文件格式导出的媒体文件格式产生所述媒体格式文件。
27.一种处理一或多个媒体格式文件的方法,其包括:
获得媒体格式文件,所述媒体格式文件包含视频数据;
针对所述媒体格式文件的样本项,获得限制方案信息框,所述样本项与所述视频数据的一个或多个样本相关联;
从针对所述媒体格式文件的所述样本项获得的所述限制方案信息框获得多个方案类型框,所述多个方案类型框识别用于处理与所述样本项相关联的所述视频数据的所述一个或多个样本所需的多个限制方案类型;以及
根据由所述多个方案类型框识别的所述多个限制方案类型而处理所述视频数据的所述一个或多个样本。
28.根据权利要求27所述的方法,其中所述多个方案类型框中的各方案类型框识别用于处理所述视频数据所需的不同限制方案类型。
29.根据权利要求27所述的方法,其中所述视频数据与所述媒体格式文件的一个样本项相关联。
30.根据权利要求27所述的方法,其中所述多个方案类型框中的方案类型框识别由所述方案类型框识别的限制方案类型的版本。
31.根据权利要求27所述的方法,其中所述多个方案类型框中的方案类型框包含识别符,所述识别符识别实施由所述方案类型框识别的限制方案类型所需的数据源。
32.根据权利要求27所述的方法,其中所述限制方案信息框进一步包含多个方案信息框,且其中所述多个方案信息框中的方案信息框包含由所述多个方案类型框中的方案类型框识别的限制方案类型所需的数据。
33.根据权利要求27所述的方法,其中使用ISO基本媒体文件格式ISOBMFF或使用从所述ISO基本媒体文件格式导出的媒体文件格式产生所述媒体格式文件。
34.根据权利要求27所述的方法,其进一步包括对所述视频数据进行解码。
35.根据权利要求34所述的方法,其进一步包括显示经解码视频数据。
36.一种用于处理一或多个媒体格式文件的设备,其包括:
存储器,其经配置以存储视频数据及所述一或多个媒体格式文件;及
处理器,其经配置以:
获得媒体格式文件,所述媒体格式文件包含所述视频数据;
针对所述媒体格式文件的样本项,获得限制方案信息框,所述样本项与所述视频数据的一个或多个样本相关联;
从针对所述媒体格式文件的所述样本项获得的所述限制方案信息框获得多个方案类型框,所述多个方案类型框识别用于处理与所述样本项相关联的所述视频数据的所述一个或多个样本所需的多个限制方案类型;以及
根据由所述多个方案类型框识别的所述多个限制方案类型而处理所述视频数据的所述一个或多个样本。
37.根据权利要求36所述的设备,其中所述多个方案类型框中的各方案类型框识别用于处理所述视频数据所需的不同限制方案类型。
38.根据权利要求36所述的设备,其中所述视频数据与所述媒体格式文件的一个样本项相关联。
39.根据权利要求36所述的设备,其中所述多个方案类型框中的方案类型框识别由所述方案类型框识别的限制方案类型的版本。
40.根据权利要求36所述的设备,其中所述多个方案类型框中的方案类型框包含识别符,所述识别符识别实施由所述方案类型框识别的限制方案类型所需的数据源。
41.根据权利要求36所述的设备,其中所述限制方案信息框进一步包含多个方案信息框,且其中所述多个方案信息框中的方案信息框包含由所述多个方案类型框中的方案类型框识别的限制方案类型所需的数据。
42.根据权利要求36所述的设备,其中使用ISO基本媒体文件格式ISOBMFF或使用从所述ISO基本媒体文件格式导出的媒体文件格式产生所述媒体格式文件。
43.根据权利要求36所述的设备,其进一步包括:
解码器,其用于对所述视频数据进行解码。
44.根据权利要求43所述的设备,其进一步包括:
显示器,其用于显示经解码视频数据。
45.根据权利要求36所述的设备,其中所述设备包括具有用于捕捉图片的摄影机的移动装置。
46.一种上面存储有指令的非暂时性计算机可读媒体,所述指令在由一或多个处理器执行时使得所述一或多个处理器执行以下操作:
获得媒体格式文件,所述媒体格式文件包含视频数据;以及
针对所述媒体格式文件的样本项,获得限制方案信息框,所述样本项与所述视频数据的一个或多个样本相关联;
从针对所述媒体格式文件的所述样本项获得的所述限制方案信息框获得多个方案类型框,所述多个方案类型框识别用于处理与所述样本项相关联的所述视频数据的所述一个或多个样本所需的多个限制方案类型;以及
根据由所述多个方案类型框识别的所述多个限制方案类型而处理所述视频数据的所述一个或多个样本。
47.根据权利要求46所述的非暂时性计算机可读媒体,其中所述多个方案类型框中的各方案类型框识别用于处理所述视频数据所需的不同限制方案类型。
48.根据权利要求46所述的非暂时性计算机可读媒体,其中所述视频数据与所述媒体格式文件的一个样本项相关联。
49.根据权利要求46所述的非暂时性计算机可读媒体,其中所述多个方案类型框中的方案类型框识别由所述方案类型框识别的限制方案类型的版本。
50.根据权利要求46所述的非暂时性计算机可读媒体,其中所述多个方案类型框中的方案类型框包含识别符,所述识别符识别实施由所述方案类型框识别的限制方案类型所需的数据源。
51.根据权利要求46所述的非暂时性计算机可读媒体,其中所述限制方案信息框进一步包含多个方案信息框,且其中所述多个方案信息框中的方案信息框包含由所述多个方案类型框中的方案类型框识别的限制方案类型所需的数据。
52.根据权利要求46所述的非暂时性计算机可读媒体,其中使用ISO基本媒体文件格式ISOBMFF或使用从所述ISO基本媒体文件格式导出的媒体文件格式产生所述媒体格式文件。
CN201880005215.9A 2017-01-09 2018-01-05 处理视频数据的方法、设备及计算机可读媒体 Active CN110089126B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762444285P 2017-01-09 2017-01-09
US62/444,285 2017-01-09
US15/862,046 2018-01-04
US15/862,046 US10536721B2 (en) 2017-01-09 2018-01-04 Restricted scheme design for video
PCT/US2018/012476 WO2018129245A1 (en) 2017-01-09 2018-01-05 Improved restricted scheme design for video

Publications (2)

Publication Number Publication Date
CN110089126A CN110089126A (zh) 2019-08-02
CN110089126B true CN110089126B (zh) 2021-05-14

Family

ID=62781988

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880005215.9A Active CN110089126B (zh) 2017-01-09 2018-01-05 处理视频数据的方法、设备及计算机可读媒体

Country Status (9)

Country Link
US (1) US10536721B2 (zh)
EP (1) EP3566458B1 (zh)
KR (1) KR102105804B1 (zh)
CN (1) CN110089126B (zh)
AU (1) AU2018205481B2 (zh)
BR (1) BR112019013871A2 (zh)
ES (1) ES2843782T3 (zh)
TW (1) TWI699115B (zh)
WO (1) WO2018129245A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10148969B2 (en) * 2015-02-11 2018-12-04 Qualcomm Incorporated Of sample entry and operation point signalling in a layered video file format
US10999602B2 (en) 2016-12-23 2021-05-04 Apple Inc. Sphere projected motion estimation/compensation and mode decision
US11259046B2 (en) 2017-02-15 2022-02-22 Apple Inc. Processing of equirectangular object data to compensate for distortion by spherical projections
US10924747B2 (en) 2017-02-27 2021-02-16 Apple Inc. Video coding techniques for multi-view video
US11093752B2 (en) 2017-06-02 2021-08-17 Apple Inc. Object tracking in multi-view video
US10754242B2 (en) 2017-06-30 2020-08-25 Apple Inc. Adaptive resolution and projection format in multi-direction video
US20190005709A1 (en) * 2017-06-30 2019-01-03 Apple Inc. Techniques for Correction of Visual Artifacts in Multi-View Images
CN112789656A (zh) * 2018-10-02 2021-05-11 索尼公司 信息处理装置、信息处理方法和程序
CN116347183A (zh) * 2020-06-04 2023-06-27 腾讯科技(深圳)有限公司 一种沉浸媒体的数据处理方法及相关装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7996672B1 (en) * 2007-12-05 2011-08-09 Adobe Systems Incorporated Support for multiple digital rights management systems for same content
CN102216924A (zh) * 2007-08-17 2011-10-12 韩国电子通信研究院 内容保护提供方法、已保护内容消费方法以及其设备
CN102427545A (zh) * 2007-06-08 2012-04-25 三星电子株式会社 将三维图像存储到记录介质中的方法
CN102648629A (zh) * 2009-10-20 2012-08-22 瑞典爱立信有限公司 补充处理信息的提供
CN102754444A (zh) * 2010-01-08 2012-10-24 索尼公司 图像处理装置、信息记录介质、图像处理方法和程序

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5131865B2 (ja) * 2006-07-06 2013-01-30 トムソン ライセンシング トリック・モード抑制制御方法およびシステム
US8837908B2 (en) * 2009-01-06 2014-09-16 Cyberlink Corp. Systems and methods for performing secure playback of media content
US20120114118A1 (en) * 2010-11-05 2012-05-10 Samsung Electronics Co., Ltd. Key rotation in live adaptive streaming

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102427545A (zh) * 2007-06-08 2012-04-25 三星电子株式会社 将三维图像存储到记录介质中的方法
CN102216924A (zh) * 2007-08-17 2011-10-12 韩国电子通信研究院 内容保护提供方法、已保护内容消费方法以及其设备
US7996672B1 (en) * 2007-12-05 2011-08-09 Adobe Systems Incorporated Support for multiple digital rights management systems for same content
CN102648629A (zh) * 2009-10-20 2012-08-22 瑞典爱立信有限公司 补充处理信息的提供
CN102754444A (zh) * 2010-01-08 2012-10-24 索尼公司 图像处理装置、信息记录介质、图像处理方法和程序

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
OMAF: Omnidirectional Media Application Format;Ye-Kui Wang;《OMAF INCITS L3 Tutorial》;20160907;全文 *

Also Published As

Publication number Publication date
EP3566458A1 (en) 2019-11-13
US10536721B2 (en) 2020-01-14
AU2018205481A1 (en) 2019-06-06
KR102105804B1 (ko) 2020-04-29
WO2018129245A1 (en) 2018-07-12
ES2843782T3 (es) 2021-07-20
TWI699115B (zh) 2020-07-11
AU2018205481B2 (en) 2021-01-28
CN110089126A (zh) 2019-08-02
KR20190104026A (ko) 2019-09-05
EP3566458B1 (en) 2020-10-14
US20180199070A1 (en) 2018-07-12
TW201841511A (zh) 2018-11-16
BR112019013871A2 (pt) 2020-03-03

Similar Documents

Publication Publication Date Title
KR102614206B1 (ko) 비디오 코딩을 위한 서브-픽처 비트스트림들을 포함한 비디오 컨텐츠의 시그널링
US10389999B2 (en) Storage of virtual reality video in media files
CN110089126B (zh) 处理视频数据的方法、设备及计算机可读媒体
KR102613593B1 (ko) 필수 및 비필수 비디오 보충 정보의 시그널링
KR102185811B1 (ko) 컨테이너 파일들 및 비디오 비트스트림들의 관심 영역들의 강화된 시그널링
CN109792567B (zh) 用于发送遗失或损坏视频数据信号的系统及方法
US11532128B2 (en) Advanced signaling of regions of interest in omnidirectional visual media
US20160373771A1 (en) Design of tracks and operation point signaling in layered hevc file format
US10349067B2 (en) Handling of end of bitstream NAL units in L-HEVC file format and improvements to HEVC and L-HEVC tile tracks

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: 40005238

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant