CN109155877A - 分开的文件轨中的序列结束及位流结束网络抽象层(nal)单元 - Google Patents

分开的文件轨中的序列结束及位流结束网络抽象层(nal)单元 Download PDF

Info

Publication number
CN109155877A
CN109155877A CN201780030887.0A CN201780030887A CN109155877A CN 109155877 A CN109155877 A CN 109155877A CN 201780030887 A CN201780030887 A CN 201780030887A CN 109155877 A CN109155877 A CN 109155877A
Authority
CN
China
Prior art keywords
unit
access unit
rail
nal unit
bit stream
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.)
Granted
Application number
CN201780030887.0A
Other languages
English (en)
Other versions
CN109155877B (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 CN109155877A publication Critical patent/CN109155877A/zh
Application granted granted Critical
Publication of CN109155877B publication Critical patent/CN109155877B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明涉及一种装置,其使位流的经译码视频序列的第一序列结束EOS网络抽象层层NAL单元包含在文件的第一轨中。所述第一EOS NAL单元在所述经译码视频序列的第一存取单元中。所述装置也使所述经译码视频序列的第二EOS NAL单元包含在所述文件的第二轨中。所述第二EOS NAL单元在所述经译码视频序列的第二存取单元中,所述第二EOS NAL单元不同于所述第一EOS NAL单元。所述装置可针对位流结束EOB NAL单元执行类似动作。

Description

分开的文件轨中的序列结束及位流结束网络抽象层(NAL) 单元
本申请案要求2016年5月23日申请的第62/340,437号美国临时申请案的权益,所述申请案的全部内容以引用的方式并入本文中。
技术领域
本发明涉及执行视频译码且使用用于经译码视频数据的文件格式的计算装置。
背景技术
数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或台式计算机、平板计算机、电子书阅读器、数字摄像机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、所谓的“智能型电话”、视频电话会议装置、视频流装置及其类似者。数字视频装置实施视频压缩技术,例如由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分高级视频译码(AVC)、ITU-T H.264定义的标准、高效视频译码(HEVC)标准及此些标准的扩展中所描述的技术。视频装置可通过实施此些视频压缩技术而更有效地发射、接收、编码、解码及/或存储数字视频信息。
视频压缩技术执行空间(图片内)预测及/或时间(图片间)预测来减少或移除视频序列中固有的冗余。对于基于块的视频译码,可将视频切片(即,视频帧或视频帧的一部分)分割为视频块(其也可被称作树型块)、译码单元(CU)及/或译码节点。图片的经帧内译码(I)切片中的视频块使用相对于同一图片中的相邻块中的参考样本的空间预测来编码图片的帧间译码(P或B)切片中的视频块可使用相对于同一图片中的相邻块中的参考样本的空间预测或相对于其它参考图片中的参考样本的时间预测。图片可被称作帧,且参考图片可被称作参考帧。
空间或时间预测产生待译码块的预测性块。残余数据表示待译码的原始块与预测性块之间的像素差。根据指向形成预测性块的参考样本的块的运动向量及指示经译码块与预测性块之间的差异的残余数据来编码经帧间译码的块。经帧内译码的块是根据帧内译码模式及残余数据编码。为进行进一步压缩,可将残余数据从像素域变换到变换域,从而产生可接着量化的残余变换系数。可依序扫描最初布置成二维阵列的经量化变换系数以便产生变换系数的一维向量,且可应用熵译码以达成甚至更多压缩。
发明内容
本发明的一或多个方面涉及视频内容于文件格式中的存储。举例来说,本发明的技术可改进对用于多轨中所携载的高效率视频译码(HEVC)及分层式HEVC位流的序列结束(EOS)网络抽象层(NAL)单元及位流结束(EOB)NAL单元的操纵,其中至少一些时间子层携载于不同轨中。
在一个实例中,本发明描述一种产生用于存储视频内容的文件的方法,所述方法包括:使位流的经译码视频序列的第一EOS NAL单元包含在所述文件的第一轨中,所述第一EOS NAL单元在所述经译码视频序列的第一存取单元中;及使所述经译码视频序列的第二EOS NAL单元包含在所述文件的第二轨中,所述第二EOS NAL单元在所述经译码视频序列的第二存取单元中,所述第二EOS NAL单元不同于所述第一EOS NAL单元,所述第一存取单元及所述第二存取单元属于不同时间子层。
在另一实例中,本发明描述一种处理用于存储视频内容的文件的方法,所述方法包括:接收包括第一轨及第二轨的文件,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含所述经译码视频序列的第二存取单元,所述第一存取单元包含第一EOS NAL单元,所述第二存取单元包含第二EOS NAL单元,且所述第二EOS NAL单元不同于所述第一EOS NAL单元,所述第一存取单元及所述第二存取单元属于不同时间子层;及基于与所述第一EOS NAL单元相关联的时间及与所述第二EOS NAL单元相关联的时间的比较来输出所述第一EOS NAL单元,并丢弃所述第二EOS NAL单元。
在另一实例中,本发明描述一种产生用于存储视频内容的文件的方法,所述方法包括:使位流的经译码视频序列的第一EOB NAL单元包含在所述文件的第一轨中,所述第一EOB NAL单元在所述经译码视频序列的第一存取单元中;及使所述经译码视频序列的第二EOB NAL单元包含在所述文件的第二轨中,所述第二EOB NAL单元在所述经译码视频序列的第二存取单元中,所述第二EOB NAL单元不同于所述第一EOB NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层。
在另一实例中,本发明描述一种处理用于存储视频内容的文件的方法,所述方法包括:接收所述文件,所述文件包括第一轨及第二轨,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含所述经译码视频序列的第二存取单元,所述第一存取单元包含第一位流结束(EOB)网路抽象层(NAL)单元,所述第二存取单元包含第二EOB NAL单元,所述第一存取单元及所述第二存取单元属于不同时间子层;及输出所述第一EOB NAL单元,并丢弃所述第二EOB NAL单元。
在另一实例中,本发明描述一种产生用于存储视频内容的文件的装置,所述装置包括:存储器,其经配置以存储用于存储视频内容的文件;及一或多个处理器,其经配置以:使位流的经译码视频序列的第一EOS NAL单元包含在所述文件的第一轨中,所述第一EOSNAL单元在所述经译码视频序列的第一存取单元中;及使所述经译码视频序列的第二EOSNAL单元包含在所述文件的第二轨中,所述第二EOS NAL单元在所述经译码视频序列的第二存取单元中,所述第二EOS NAL单元不同于所述第一EOS NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层。
在另一实例中,本发明描述一种处理用于存储视频内容的文件的装置,所述装置包括:存储器,其经配置以存储用于存储视频内容的文件;及一或多个处理器,其经配置以:接收包括第一轨及第二轨的文件,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含经译码视频序列的第二存取单元,所述第一存取单元包含第一EOS NAL单元,所述第二存取单元包含第二EOS NAL单元,所述第二EOS NAL单元不同于所述第一EOSNAL单元,所述第一存取单元及所述第二存取单元属于不同时间子层;及基于与所述第一EOS NAL单元相关联的时间及与所述第二EOS NAL单元相关联的时间的比较来输出所述第一EOS NAL单元,并丢弃所述第二EOS NAL单元。
在另一实例中,本发明描述一种产生用于存储视频内容的文件的装置,所述装置包括:存储器,其经配置以存储用于存储视频内容的文件;及一或多个处理器,其经配置以:使位流的经译码视频序列的第一EOB NAL单元包含在所述文件的第一轨中,所述第一EOBNAL单元在所述CVS的第一存取单元中;及使所述经译码视频序列的第二EOB NAL单元包含在所述文件的第二轨中,所述第二EOB NAL单元在所述经译码视频序列的第二存取单元中,所述第二EOB NAL单元不同于所述第一EOB NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层。
在另一实例中,本发明包含一种用于处理用于存储视频内容的文件的装置,所述装置包括:存储器,其经配置以存储用于存储视频内容的文件;及一或多个处理器,其经配置以:接收包括第一轨及第二轨的文件,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含经译码视频序列的第二存取单元,所述第一存取单元包含第一位流结束(EOB)网络抽象层(NAL)单元,所述第二存取单元包含第二EOB NAL单元,所述第一存取单元及所述第二存取单元属于不同时间子层;及输出所述第一EOB NAL单元并丢弃所述第二EOB NAL单元。
在另一实例中,本发明描述一种用于产生用于存储视频内容的文件的装置,所述装置包括:用于使位流的经译码视频序列的第一EOS NAL单元包含在所述文件的第一轨中的装置,所述第一EOS NAL单元在所述经译码视频序列的第一存取单元中;及用于使经译码视频序列的第二EOS NAL单元包含在所述文件的第二轨中的装置,所述第二EOS NAL单元在所述经译码视频序列的第二存取单元中,所述第二EOS NAL单元不同于所述第一EOS NAL单元,所述第一存取单元及所述第二存取单元属于不同时间子层。
在另一实例中,本发明描述一种用于处理用于存储视频内容的文件的装置,所述装置包括:用于接收包括第一轨及第二轨的所述文件的装置,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含所述经译码视频序列的第二存取单元,所述第一存取单元包含第一EOS NAL单元,所述第二存取单元包含第二EOS NAL单元,所述第二EOS NAL单元不同于所述第一EOS NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层;及用于基于与所述第一EOS NAL单元相关联的时间及与所述第二EOS NAL单元相关联的时间的比较来输出所述第一EOS NAL单元并丢弃所述第二EOS NAL单元的装置。
在另一实例中,本发明描述一种用于产生用于存储视频内容的文件的装置,所述装置包括:用于使位流的经译码视频序列的第一EOB NAL单元包含在所述文件的第一轨中的装置,所述第一EOB NAL单元在所述经译码视频序列的第一存取单元中;及用于使经译码视频序列的第二EOB NAL单元包含在所述文件的第二轨中的装置,所述第二EOB NAL单元在所述经译码视频序列的第二存取单元中,所述第二EOB NAL单元不同于所述第一EOB NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层。
在另一实例中,本发明描述一种用于处理用于视频内容的存储的文件的装置,所述装置包括:用于接收包括第一轨及第二轨的文件的装置,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含经译码视频序列的第二存取单元,所述第一存取单元包含第一EOB NAL单元,所述第二存取单元包含第二EOB NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层;及用于输出所述第一EOB NAL单元并丢弃所述第二EOB NAL单元的装置。
在另一实例中,本发明描述一种上面存储有指令的计算机可读存储媒体,所述指令在经执行时使计算装置:使位流的经译码视频序列的第一EOS NAL单元包含在所述文件的第一轨中,所述第一EOS NAL单元在所述经译码视频序列的第一存取单元中;及使所述经译码视频序列的第二EOS NAL单元包含在所述文件的第二轨中,所述第二EOS NAL单元在所述经译码视频序列的第二存取单元中,所述第二EOS NAL单元不同于所述第一EOS NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层。
在另一实例中,本发明描述一种上面存储有指令的计算机可读存储媒体,所述指令在经执行时使用于处理用于存储视频内容的文件的计算装置:接收所述文件,所述文件包括第一轨及第二轨,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含经译码视频序列的第二存取单元,所述第一存取单元包含第一EOS NAL单元,所述第二存取单元包含第二EOS NAL单元,所述第二EOS NAL单元不同于所述第一EOS NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层;及基于与所述第一EOS NAL单元相关联的时间及与所述第二EOS NAL单元相关联的时间的比较来输出所述第一EOS NAL单元,并丢弃所述第二EOS NAL单元。
在另一实例中,本发明描述一种上面存储有指令的计算机可读存储媒体,所述指令在经执行时使用于产生用于存储视频内容的文件的计算装置:使位流的经译码视频序列的第一EOB NAL单元包含在所述文件的第一轨中,所述第一EOB NAL单元在所述经译码视频序列的第一存取单元中;及使所述经译码视频序列的第二EOB NAL单元包含在所述文件的第二轨中,所述第二EOB NAL单元在所述经译码视频序列的第二存取单元中,所述第二EOBNAL单元不同于所述第一EOB NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层。
在另一实例中,本发明描述一种上面存储有指令的计算机可读存储媒体,所述指令在经执行时使用于处理用于存储视频内容的文件的计算装置:接收所述文件,所述文件包括第一轨及第二轨,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含经译码视频序列的第二存取单元,所述第一存取单元包含第一EOB NAL单元,所述第二存取单元包含第二EOB NAL单元,所述第二EOS NAL单元不同于所述第一EOS NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层;及输出所述第一EOB NAL单元并丢弃所述第二EOB NAL单元。
在附图及以下描述中阐明本发明的一或多个实例的细节。其它特征、目标及优势从描述、图式及权利要求书将为显而易见的。
附图说明
图1为说明可使用本发明中描述的技术的实例视频编码及解码系统的框图。
图2为说明图片的实例译码相依性的框图。
图3为说明可实施本发明中所描述的技术的实例视频编码器的框图。
图4为说明可实施本发明中所描述的技术的实例视频解码器的框图。
图5为说明根据本发明的一或多种技术的文件的实例结构的概念图。
图6为说明根据本发明的一或多种技术的文件的实例结构的概念图。
图7为说明根据本发明的一或多种技术的文件的多轨中的序列结束(EOS)网络抽象层(NAL)单元的实例的概念图。
图8为说明根据本发明的一或多种技术的文件的多轨中的位流结束(EOB)NAL单元的实例的概念图。
图9A为说明根据本发明的一或多种技术的用于产生在多轨中包含EOS NAL单元的文件的实例操作的流程图。
图9B为说明根据本发明的一或多种技术的用于处理在多轨中包含EOS NAL单元的文件的实例操作的流程图。
图10A为说明根据本发明的一或多种技术的用于产生在多轨中包含EOB NAL单元的文件的实例操作的流程图。
图10B为说明根据本发明的一或多种技术的用于处理在多轨中包含EOB NAL单元的文件的实例操作的流程图。
具体实施方式
国际标准组织(ISO)基本媒体文件格式(ISOBMFF)及来源于ISO基本媒体文件格式的文件格式经设计用于视频内容的存储。ISOBMFF是在存储经编码视频数据及相关联元数据的术语——一组嵌套式“逻辑框”中予以定义。举例来说,媒体数据逻辑框可包含一或多个样本。所述样本中的每一者可包含存取单元中的一或多个图片的经编码视频数据。
ISOBMFF文件的逻辑框包含轨逻辑框。每一轨逻辑框可指定属于相应轨的样本。举例来说,第一轨逻辑框可指定属于第一轨的样本,第二轨逻辑框可指定属于第二轨的样本,等等。因此,文件轨可被视为样本的文件层次分组。对于一些轨,处理ISOBMFF文件的装置可执行关于ISOBMFF文件轨的不同动作,而无需解译或解码文件中其它轨的样本中所存储的经编码视频数据。举例来说,装置可丢弃一个轨的样本,同时将另一轨的样本转递到视频解码器。
高效率视频译码(HEVC)及分层式HEVC(L-HEVC)视频译码标准定义层及子层的概念。在多视图译码中,不同层中的图片可对应于不同视图中的图片。在可缩放视频译码中,不同非基础层中的图片可对应于含有各种类型的增强(例如信噪比(SNR)增强数据、空间增强数据及/或时间增强数据)的图片。时间子层为层内的图片的子集。时间子层可用于提供时间可调性。
经编码视频数据可包含序列结束(EOS)网络抽象层(NAL)单元及位流结束(EOB)NAL单元。EOS NAL单元标记经译码视频序列(CVS)的末尾。因此,视频解码器可基于EOS NAL单元确定CVS已结束。大体来说,CVS为存取单元的序列。在HEVC中,CVS为存取单元的序列,其按解码次序由具有NoRaslOutputFlag等于1的IRAP存取单元接着为并非具有NoRaslOutputFlag等于1的IRAP存取单元的零个或多于零个存取单元组成,包含直到但不包含是具有NoRaslOutputFlag等于1的IRAP存取单元的任何后续存取单元的所有后续存取单元。
EOB NAL单元标记位流的末尾。因此,视频解码器可基于EOB NAL单元确定位流已结束。位流为呈NAL单元流或位组流的形式的位序列,所述位序列形成经译码图片及相关联数据的表示,从而形成一或多个CVS。NAL单元流为NAL单元的序列。位组流为含有起始码前缀及NAL单元的NAL单元流(例如,如HEVC的附录B中所指定)的囊封。
在与不同时间子层相关联的NAL单元在不同文件轨中时,可出现关于EOS NAL单元及EOB NAL单元的若干问题。举例来说,如果丢弃含有EOS NAL单元或EOB NAL单元的轨(例如,因为与轨相关联的时间子层将不会被转递或解码),那么在CVS或位流结束时,其对视频解码器而言可能不明显。此外,由丢弃轨而产生的位流可能不符合视频译码标准的要求。经配置以解码符合视频译码标准的要求的视频解码器可能无法解码不符合视频译码标准的要求的位流。
本发明的技术可解决此些问题。举例来说,根据本发明的技术,一种装置可在文件的第一轨中产生用于位流的CVS的第一EOS NAL单元。换句话说,所述装置可使CVS的第一EOS NAL单元包含在文件的第一轨中。第一EOS NAL单元在CVS的第一存取单元中。在此实例中,所述装置可在文件的第二轨中产生CVS的第二EOS NAL单元。换句话说,所述装置可使CVS的第二EOS NAL单元包含在文件的第一轨中。第二EOS NAL单元在CVS的第二存取单元中。在此实例中,第一存取单元及第二存取单元可属于不同时间子层。以此方式,通过使多个EOS NAL单元在不同轨中,在无一或多个轨的情况下产生的位流可仍为一致的位流。
在另一实例中,根据本发明的技术,一种装置可在文件的第一轨中产生用于位流的CVS的第一EOB NAL单元。换句话说,所述装置可使CVS的第一EOB NAL单元包含在文件的第一轨中。第一EOB NAL单元在CVS的第一存取单元中。在此实例中,装置可在文件的第二轨中产生用于位流的CVS的第二EOB NAL单元。换句话说,所述装置可使CVS的第二EOB NAL单元包含在图案块的第二轨中。第二EOB NAL单元在CVS的第二存取单元中。以此方式,通过使多个EOB NAL单元在不同轨中,在无一或多个轨的情况下由文件产生的位流可仍为一致位流。因此,本发明的技术可改进视频解码器解码存储于文件的多轨中的位流的能力。此外,本发明的技术可促进装置从文件层次提取轨的操作,是因为此类装置无需检查即可确保轨中的位流具有恰当的EOS及EOB NAL单元并立即产生EOS及EOB NAL单元。
在本发明中,例如“第一”、“第二”、“第三”等的序数术语不一定指示次序位置,而是可仅仅用于区分同一事物的不同个例。
图1为说明可使用本发明中描述的技术的实例视频编码及解码系统10的框图。如图1中所展示,系统10包含源装置12,其产生稍后时间将由目的地装置14解码的经编码视频数据。源装置12及目的地装置14可包括广泛范围的装置中的任一者,包含台式计算机、笔记型(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(例如所谓的“智能型”电话、所谓的“智能型”平板电脑)、电视机、摄像机、显示装置、数字媒体播放器、视频游戏控制台、视频流装置或类似者。在一些情况下,源装置12及目的地装置14可能经装备以用于无线通信。因此,源装置12及目的地装置14可被视为无线通信装置。源装置12及目的地装置14可被视为视频装置。
在图1的实例中,源装置12包含视频源18、视频编码器20及输出接口22。在一些情况下,输出接口22可包含调制器/解调器(调制解调器)及/或发射器。输出接口22可将经编码视频信息输出到计算机可读媒体16。输出接口22可包括各种类型的组件或装置。举例来说,输出接口22可包括无线发射器、调制解调器、有线网络连接组件(例如,以太网络卡)或另一实体组件。在输出接口22包括无线发射器的实例中,输出接口22可经配置以发射根据蜂窝式通信标准(例如,4G、4G-LTE、高级LTE、5G及其类似者)调制的数据,例如,经编码视频数据。在输出接口22包括无线发射器的一些实例中,输出接口22可经配置以发射根据其它无线标准(例如,IEEE 802.11规范、IEEE 802.15规范(例如,ZigBeeTM)、Bluetooth0标准及其类似者)调制的数据,例如,经编码视频数据。在一些实例中,输出接口22的电路集成到源装置12的视频编码器20及/或其它组件的电路中。举例来说,视频编码器20及输出接口22可为系统单芯片(SoC)的部分。SoC也可包含其它组件,例如,通用微处理器、图形处理单元等。
在源装置12中,视频源18可包含例如视频捕捉装置(例如,视频摄像机)、含有先前所捕捉视频的视频封存档、用以从视频内容提供者接收视频的视频馈入接口,及/或用于产生计算机图形数据作为源视频的计算机图形系统的源,或此些源的组合。然而,本发明中所描述的技术可大体上适用于视频译码,且可应用于无线及/或有线应用。
视频编码器20可编码经捕捉、经预捕捉或计算机产生的视频。在一些实例中,源装置12经由源装置12的输出接口22直接将经编码视频数据发射到目的地装置14。也可将经编码视频数据(或替代地)存储到存储装置33上,以供稍后通过目的地装置14或其它装置存取以用于解码及/或播放。
目的地装置14包含输入接口28、视频解码器30及显示装置32。此外,在图1的实例中,目的地装置14包含存储媒体29及文件剖析单元31。在一些情况下,输入接口28可包含接收器及/或调制解调器。目的地装置14的输入接口28经由链路16接收经编码视频数据。经由链路16传达或在存储装置33上提供的经编码视频数据可包含由视频编码器20产生的多种语法元素,以供例如视频解码器30的视频解码器在解码所述视频数据时使用。发射于通信媒体上、存储于存储媒体上,或存储于文件服务器上的经编码视频数据内可包含此些语法元素。
目的地装置14的输入接口28从计算机可读媒体16接收数据。输入接口28可包括各种类型的组件或装置。举例来说,输入接口28可包括无线接收器、调制解调器、有线网络连接组件(例如,乙太网络卡)或另一实体组件。在输入接口28包括无线接收器的实例中,输入接口28可经配置以接收根据蜂窝式通信标准(例如,4G、4G-LTE、高级LTE、5G及其类似者)调制的数据,例如,位流。在输入接口28包括无线接收器的一些实例中,输入接口28可经配置以接收根据其它无线标准(例如,IEEE 802.11规范、IEEE802.15规范(例如,ZigBeeTM)、BluetoothTM标准及其类似者)调制的数据,例如,位流。在一些实例中,输入接口28的电路可集成到目的地装置14的视频解码器30及/或其它组件的电路中。举例来说,视频解码器30及输入接口28可为SoC的部分。SoC也可包含其它组件,例如,通用微处理器、图形处理单元等。
显示装置32可与目的地装置14集成或在目的地装置14的外部。在一些实例中,目的地装置14可包含集成式显示装置且也可经配置以与外部显示装置介接。在其它实例中,目的地装置14可为显示装置。大体来说,显示装置32向用户显示经解码视频数据,且可包括多种显示装置中的任一者,例如,液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
视频编码器20及视频解码器30在适用的情况下各自可实施为多种合适的编码器或解码器电路中的任一者,包含固定功能及/或可编程电路,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。当所述技术部分以软件实施时,装置可将用于软件的指令存储于合适的非暂时性计算机可读媒体中,且在硬件中使用一或多个处理器执行指令以执行本发明的技术。视频编码器20及视频解码器30中的每一者可包含于一或多个编码器或解码器中,编码器或解码器中的任一者可集成为相应装置中的组合式编码器/解码器(编码解码器)的部分。
目的地装置14可经由链路16接收待解码的经编码视频数据。链路16可包括能够将经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体或装置。在一个实例中,链路16可包括用以使源装置12能够将经编码视频数据直接实时发射到目的地装置14的通信媒体。可根据通信标准(例如,无线通信协议)调制经编码视频数据,且将所述经编码视频数据发射到目的地装置14。通信媒体可包括任何无线或有线通信媒体,例如,射频(RF)频谱或一或多个物理发射线。通信媒体可形成基于分组的网络(例如局域网、广域网或例如因特网的全球网络)的一部分。通信媒体可包含路由器、交换器、基站或任何其它可适用于有助于从源装置12到目的地装置14的通信的装备。
在一些实例中,输出接口22将经编码数据输出到存储装置33。类似地,输入接口28可从存储装置33存取经编码数据。存储装置33可包含多种分布式或本地存取式数据存储媒体中的任一者,例如硬盘机、蓝光光盘、DVD、CD-ROM、快闪存储器、易失性或非易失性存储器,或用于存储经编码视频数据的任何其它合适的数字存储媒体。在再一实例中,存储装置33可对应于文件服务器或可固持由源装置12产生的经编码视频的另一中间存储装置。目的地装置14可经由流发射或下载存取来自存储装置33的经存储的视频数据。文件服务器可为能够存储经编码视频数据且将那个经编码视频数据发射到目的地装置14的任何类型的服务器。实例文件服务器包含网页服务器(例如,用于网站)、文件传送协议(FTP)服务器、网络附接存储(NAS)装置及本地磁盘机。目的地装置14可经由任何标准数据连接(包含因特网连接)存取经编码视频数据。此连接可包含适合于存取存储于文件服务器上的经编码视频数据的无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、缆线调制解调器等)或两者的组合。经编码视频数据从存储装置33的发射可为流发射、下载发射或两者的组合。
本发明的技术不必限于无线应用或设定。所述技术可应用于支持多种多媒体应用中的任一者的视频译码,所述应用例如空中电视广播、有线电视发射、卫星电视发射、(例如)经由因特网的流视频发射、用于存储于数据存储媒体上的数字视频的编码、存储于数据存储媒体上的数字视频的解码或其它应用。在一些实例中,系统10可经配置以支持单向或双向视频发射以支持例如视频流、视频播放、视频广播及/或视频电话的应用。
此外,在图1的实例中,系统10包含文件产生装置34。文件产生装置34可接收由源装置12产生的经编码视频数据。文件产生装置34可产生包含经编码视频数据的文件。目的地装置14可接收由文件产生装置34产生的文件。在各种实例中,文件产生装置34可包含各种类型的计算装置。举例来说,文件产生装置34可包括视频编码装置、媒体感知网络元件(MANE)、服务器计算装置、个人计算装置、专用计算装置、商业计算装置,或另一类型的计算装置。在一些实例中,文件产生装置34为内容递送网络的部分。文件产生装置34可经由例如链路16的信道从源装置12接收经编码视频数据。此外,目的地装置14可经由例如链路16的信道从文件产生装置34接收文件。文件产生装置34可被视为视频装置。如图1的实例中所示,文件产生装置34可包括存储器36,其经配置以存储含有经编码视频内容的文件。
在其它实例中,源装置12或另一计算装置可产生包含经编码视频数据的文件。然而,为了易于解释,本发明将文件产生装置34描述为产生文件。然而,应理解,此些描述大体上适用于计算装置。
在一些实例中,MANE、服务器或其它类型的装置可包括存储器,其经配置以存储根据本发明的技术产生的文件。此装置可(例如)通过从文件获得语法元素来处理文件,并将所获得的语法元素用于多种目的,例如将文件内的特定内容转递到另一装置(例如目的地装置14)。
视频编码器20及视频解码器30可根据视频压缩标准操作(例如ITU-T H.265)、高效视频译码(HEVC)标准或其扩展操作。HEVC标准也可被称作ISO/IEC 23008-2。已由ITU-T视频译码专家组(VCEG)及ISO/IEC动画专家组(MPEG)的视频译码联合协作小组(JCT-VC)定案HEVC的设计。视频编码器20及视频解码器30可根据此些标准中的一或多者或其它标准操作。此类其它视频译码标准包含ITU-T H.261、ISO/IEC MPEG-1 Visual、ITU-T H.262或ISO/IEC MPEG-2Visual、ITU-T H.263、ISO/IEC MPEG-4Visual、ITU-T H.264或ISO/IECMPEG-4AVC,包含其可缩放视频译码(SVC)及多视图视频译码(MVC)扩展。在一些实例中,视频编码器20及视频解码器30根据其它专属或行业标准(例如替代地被称作MPEG-4第10部分高级视频译码(AVC)的ITU-T H.264标准)或此些标准的扩展来操作。然而,本发明的技术不限于任何特定译码标准。
大体来说,在HEVC中,视频帧或图片可划分成包含明度及色度样本两者的树型块或最大译码单元(LCU)的序列。树型块也可被称作译码树单元(CTU)。树型块具有与H.264/AVC标准的宏块类似的用途。切片包含按译码次序的数个连续树型块。视频帧或图片可分割成一或多个切片。每一树型块可根据四分树而分裂成若干译码单元(CU)。举例来说,作为四分树的根节点的树型块可分裂成四个子节点,且每一子节点又可为父节点并分裂成另四个子节点。作为四分树的叶节点的最后未分裂子节点包括译码节点(即,经译码视频块)。与经译码位流相关联的语法数据可定义树型块可分裂的最大次数,且也可定义译码节点的最小大小。
CU包含译码节点以及与所述译码节点相关联的预测单元(PU)及变换单元(TU)。CU的大小对应于译码节点的大小,且形状必须为正方形。CU的大小可在8×8像素达到具有最大64×64像素或更大像素的树型块的大小的范围内。每一CU可含有一或多个PU及一或多个TU。与CU相关联的语法数据可描述例如将CU分割成一或多个PU。分割模式可在CU经跳过或直接模式编码、帧内预测模式编码或帧间预测模式编码之间不同。PU可分割成非正方形形状。与CU相关联的语法数据也可描述(例如)根据四分树将CU分割成一或多个TU。TU的形状可为正方形或非正方形。
HEVC标准允许根据TU进行变换,所述变换对于不同CU可不同。通常基于针对经分割LCU所定义的给定CU内的PU的大小来对TU设定大小,但可并非总是此情况。TU的大小通常与PU相同或比PU小。在一些实例中,可使用被称为“残余四分树”(RQT)的四分树结构来将对应于CU的残余样本细分为较小单元。RQT的叶节点可被称作TU。与TU相关联的像素差值可经变换以产生可加以量化的变换系数。
大体来说,PU包含与预测过程相关的数据。举例来说,当PU经帧内模式编码时,PU可包含描述用于PU的帧内预测模式的数据。作为另一实例,当PU经帧间模式编码时,PU可包含定义PU的运动向量的数据。定义PU的运动向量的数据可描述(例如)运动向量的水平分量、运动向量的竖直分量、运动向量的分辨率(例如,四分之一像素精确度或八分之一像素精确度)、运动向量所指向的参考图片及/或运动向量的参考图片列表(例如,列表0、列表1)。
大体来说,TU用于变换及量化过程。具有一或多个PU的给定CU也可包含一或多个TU。在预测之后,视频编码器20可计算对应于PU的残余值。残余值包括像素差值,所述像素差值可变换成变换系数,经量化,且使用TU进行扫描以产生串列化变换系数以用于熵译码。本发明通常使用术语“视频块”来指CU的译码节点(即,译码块)。在一些特定情况下,本发明也可使用术语“视频块”来指包含译码节点及PU与TU的树型块(即,LCU或CU)。
视频序列通常包含一连串视频帧或图片。图片的每一切片可包含描述相应切片的编码模式的切片语法数据。视频编码器20通常对个别视频切片内的视频块进行操作,以便编码视频数据。视频块可对应于CU内的译码节点。视频块可具有固定或变化的大小,且可根据指定译码标准而大小不同。
在使用CU的PU的帧内预测性或帧间预测性译码之后,视频编码器20可计算CU的TU的残余数据。PU可包括空间域(也被称作像素域)中的像素数据,且TU可包括在将变换(例如,离散余弦变换(DCT)、整数变换、小波变换或概念上类似的变换)应用于残余视频数据之后的变换域中的系数。所述残余数据可对应于未经编码的图片的像素与对应于PU的预测值之间的像素差。视频编码器20可形成包含CU的残余数据的TU,且接着变换所述TU以产生CU的变换系数。
在进行用以产生变换系数的任何变换之后,视频编码器20可执行变换系数的量化。量化通常是指变换系数经量化以可能减少用以表示变换系数的数据的量从而提供进一步压缩的过程。所述量化过程可减小与所述系数中的一些或所有相关联的位深度。
在扫描经量化变换系数以形成一维向量之后,视频编码器20可(例如)根据上下文自适应性可变长度译码(CAVLC)、上下文自适应性二进位算术译码(CABAC)、基于语法的上下文自适应性二进位算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵编码方法来对一维向量进行熵编码。视频编码器20也可熵编码与经编码视频数据相关联的语法元素,以供视频解码器30在解码视频数据时使用。
视频编码器20可输出包含形成经译码图片及相关联数据的表示的位序列的位流。术语“位流”可为用以指网络抽象层(NAL)单元流(例如,一系列NAL单元)或位组流(例如,含有起始码前缀及如由HEVC标准的附录B指定的NAL单元的NAL单元流的囊封)的集合性术语。NAL单元为一种语法结构,其含有NAL单元中的数据类型的指示及含有所述数据的位组,所述位组呈原始位组序列有效负载(RBSP)形式,视需要与模拟防止位穿插。NAL单元中的每一者可包含NAL单元标头且可囊封RBSP。NAL单元标头可包括指示NAL单元类型码的语法元素。通过NAL单元的NAL单元标头指定的NAL单元类型码指示NAL单元的类型。RBSP可为含有囊封在NAL单元内的整数数目个位的语法结构。在一些个例中,RBSP包含零个位。
不同类型的NAL单元可囊封不同类型的RBSP。举例来说,第一类型的NAL单元可囊封图片参数集(PPS)的RBSP,第二类型的NAL单元可囊封切片区段的RBSP,第三类型的NAL单元可囊封补充增强信息(SEI)的RBSP,等等。囊封视频译码数据的RBSP(与参数集及SEI消息的RBSP相反)的NAL单元可被称作视频译码层(VCL)NAL单元。含有参数集(例如,视频参数集(VPS)、序列参数集(SPS)、PPS或其它类型的参数集)的NAL单元可被称作参数集NAL单元。
本发明可将囊封区段切片的RBSP的NAL单元称为经译码切片NAL单元。如HEVC中所定义,切片区段为在图案块扫描中经连续排序且包括于单一NAL单元中的整数数目个CTU。相比来说,在HEVC中,切片可为包括于同一存取单元内的一个独立切片区段及先于下一独立切片区段(如果存在)的所有后续相关切片区段(如果存在)中的整数数目个CTU。独立切片区段为切片区段标头的语法元素的值并非从先前切片区段的值中推断的切片区段。相关切片区段为切片区段标头的一些语法元素的值是从按解码次序的先前独立切片区段的值中推断的切片区段。经译码切片NAL单元的RBSP可包含切片区段标头及切片数据。切片区段标头为经译码切片区段中含有与表示于切片区段中的第一CTU或所有CTU有关的数据元件的一部分。切片标头独立切片区段的切片区段标头,所述独立切片区段为当前切片区段或为按解码次序先于当前相关切片区段的最近独立切片区段。
视频解码器30可接收由视频编码器20产生的位流。此外,视频解码器30可剖析位流以从所述位流获得语法元素。视频解码器30可至少部分基于从位流获得的语法元素而重构视频数据的图片。重构视频数据的过程可与由视频编码器20执行的过程大体互逆。举例来说,视频解码器30可使用PU的运动向量确定当前CU的PU的预测性块。此外,视频解码器30可逆量化当前CU的TU的系数块。视频解码器30可对系数块执行逆变换,以重构当前CU的TU的变换块。通过将当前CU的PU的预测性块的样本添加到当前CU的TU的变换块的对应样本,视频解码器30可重构当前CU的译码块。通过重构图片的每一CU的译码块,视频解码器30可重构图片。
如上文所论述,视频编码器20可产生包括一系列NAL单元的位流。在多层视频译码中,位流的不同NAL单元可与位流的不同层相关联。可将层定义为具有相同层识别符的VCLNAL单元及相关联非VCL NAL单元的集合。举例来说,NAL单元可包含标头(即,NAL单元标头)及有效负载(例如,RBSP)。NAL单元标头可包含层识别符语法元素(例如,HEVC中的nuh_layer_id语法元素)。具有指定不同值的层识别符语法元素的NAL单元属于位流的不同“层”。因此,在多层译码(例如,MV-HEVC、SVC或SHVC)中,NAL单元的层识别符语法元素指定NAL单元的层识别符(即,层ID)。
层可等效于多视图视频译码中的视图。在多视图视频译码中,层可含有相同层的所有视图分量,具有不同时间执行个体(time instance)。在多层视频译码中,术语“存取单元”可指对应于相同时间执行个体的图片集合。举例来说,存取单元中的所有图片可具有相同输出时间。因此,“视图分量”可为单一存取单元中的视图的经译码表示。
在一些实例中,视图分量可包括纹理视图分量(即,纹理图片)或深度视图分量(即,深度图片)。在多视图视频译码的一些实例中,层含有特定视图的经译码深层图片或特定视图的经译码纹理图片,而非含有深层图片及纹理图片两者。在多视图视频译码的其它实例中,层可含有特定视图的纹理视图分量及深度视图分量两者。
在可缩放视频译码的情境中,层通常对应于具有不同于其它层中的经译码图片的视频特性的经译码图片。此些视频特性通常包含空间分辨率及质量等级(例如,信噪比)。
对于位流的每一相应层,可在不参考任何较高层中的数据的情况下解码较低层中的数据。在可缩放视频译码中,例如,可在不参考增强层中的数据的情况下解码基础层中的数据。大体来说,NAL单元可仅囊封单一层的数据。因此,可从位流移除囊封位流的最高剩余层(例如,与最高层识别符相关联的层)的数据的NAL单元,而不影响位流的剩余层中的数据的可解码性。在多视图译码中,较高层可包含额外视图分量。在可缩放视频译码中,较高层可包含信噪比(SNR)增强数据、空间增强数据及/或时间增强数据。在多层视频译码中,如果视频解码器可在不参考任何其它层的数据的情况下解码层中的图片,那么所述层可被称为“基础层”。在HEVC及其它视频译码规范中,如果NAL单元在基础层中,那么所述NAL单元的层识别符等于0。如果NAL单元在多层译码中并不与基础层相关,那么所述NAL单元的层识别符可具有非零值。
在可缩放视频译码中,不同于基础层的层可被称作“增强层”,且可提供增强从位流解码的视频数据的视觉质量的信息。可缩放视频译码可增强空间分辨率、信噪比(即,质量)或时间速率。
多层视频译码可支持层间预测。层间预测类似于HEVC中或其它视频译码规范中所使用的帧间预测,且可使用相同语法元素。然而,当视频译码器对当前视频单元(例如PU)执行层间预测时,视频译码器可将处于与当前视频单元相同的存取单元中但处于不同层中的图片用作参考图片。相反地,惯例帧间预测仅将不同存取单元中的图片用作参考图片。在译码非基础层中的一者中的图片时,如果图片在不同层但处于同一时间执行个体(即,存取单元),那么视频译码器可将所述图片添加到参考图片列表,作为视频译码器当前正译码的图片。
此外,可在不参考相同层内的其它图片的情况下解码层内的一些图片。因此,可从位流移除囊封层的某些图片的数据的NAL单元,而不影响所述层中的其它图片的可解码性。移除囊封此些图片的数据的NAL单元可能会降低位流的帧速率。可在不参考层内的其它图片的情况下解码的层内的图片的子集可在本文中被称作“子层”、“时间层”或“时间子层”。因此,通过将具有特定时间位准的图片群组定义为子层(即,时间层),可在一个层内达成时间可调性。
NAL单元可包含时间识别符(例如,HEVC中的temporal_id)语法元素。NAL单元的时间识别符语法元素指定NAL单元的时间识别符。NAL单元的时间识别符识别与NAL单元相关联的时间子层。因此,位流的层的每一时间子层可与不同时间识别符相关联。如果第一NAL单元的时间识别符小于第二NAL单元的时间识别符,那么可在不参考由第二NAL单元囊封的数据的情况下解码由第一NAL单元囊封的数据。
图2为说明图片的实例译码相依性的框图。在图2的实例中,CVS包含图片50、52、54、56及58。图片50、52、54、56及58中的每一者在相应存取单元(AU)中。图2的实例假定图片50、52、54、56及58在同一层中。图片50及58不依赖于CVS中的任何其它图片。图片54依赖于图片50及58。换句话说,在不首先解码图片50及58的情况下,无法解码图片54。举例来说,图片54中的块的运动参数可识别图片50及58中的块。图片52及56依赖于图片50、54及58。
对于时间调整,可从位流移除图片52、54及56,而不影响视频解码器30解码图片50及58的能力。因此,图片50及58形成第一时间子层(即,时间子层0)。可移除图片52及56,而不影响视频解码器30解码图片54的能力,但从位流移除图片50及58会影响视频解码器30解码图片54的能力。因此,图片54形成第二时间子层(即,时间子层1)。图片52及56依赖于图片50、54及58,且因此形成第三时间子层(即,时间子层2)。
如HEVC中所定义,CVS为存取单元(AU)的序列,其按解码次序由具有NoRaslOutputFlag等于1的帧内随机存取点(IRAP)存取单元接着是并非具有NoRaslOutputFlag等于1的IRAP存取单元的零个或多于零个存取单元组成,包含直到但不包含是具有NoRaslOutputFlag等于1的IRAP存取单元的任何后续存取单元的所有后续存取单元。IRAP存取单元可为瞬时解码刷新(IDR)存取单元、断链存取(BLA)存取单元或清洁随机存取(CRA)存取单元。对于每一IDR存取单元,NoRaslOutputFlag的值等于1,按解码次序为位流中的第一存取单元的每一BLA存取单元及每一CRA存取单元为按解码次序在序列结束NAL单元之后或具有HandleCraAsBlaFlag等于1的第一存取单元。
此外,在HEVC中,CRA图片为每一VCL NAL单元的nal_unit_type等于CRA_NUT的IRAP图片。在HEVC中,CRA图片仅含有I切片,且按解码次序可为位流中的第一图片,或可稍后出现于位流中。CRA图片可具有相关联的RADL图片或RASL图片。当CRA图片的NoRaslOutputFlag等于1时,相关联RASL图片不由解码器输出,是因为所述图片可能含有位流中不存在的参考图片而可能无法解码。清洁随机存取(CRA)存取单元为其中nuh_layer_id等于0的经译码图片为CRA图片的存取单元。
在HEVC中,IRAP图片为每一VCL NAL单元的nal_unit_type在BLA_W_LP到RSV_IRAP_VCL23的包含性范围内的经译码图片。IRAP图片仅含有I切片且可为BLA图片、CRA图片或IDR图片。按解码次序在位流中的第一图片一定为IRAP图片。假设必要参数集在其需要激活时可用,可在不执行按解码次序先于IRAP图片的任何图片的解码过程的情况下正确地解码IRAP图片及按解码次序的所有后续非RASL图片。在位流中可存在仅含有I切片的图片,其并非IRAP图片。IRAP存取单元为其中nuh_layer_id等于0的经译码图片为IRAP图片的存取单元。
如HEVC中所定义,断链存取(BLA)存取单元为其中nuh_layer_id等于0的经译码图片为BLA图片的存取单元。BLA图片为每一VCL NAL单元的nal_unit_type等于BLA_W_LP、BLA_W_RADL或BLA_N_LP的IRAP图片。
现简要地论述文件格式及文件格式标准。文件格式标准包含ISO基本媒体文件格式(ISOBMFF,ISO/IEC 14496-12,以下称作“ISO/IEC 14996-12”)及衍生自ISOBMFF的其它文件格式标准,包含MPEG-4文件格式(ISO/IEC 14496-15)、3GPP文件格式(3GPP TS26.244)及含有用于AVC(ISO/IEC 14496-15,以下称作“ISO/IEC 14996-15”)及其扩展的文件格式以及用于HEVC及其扩展的文件格式的ISO/IEC 14496-15。ISO/IEC 14496-12指定ISO基本媒体文件格式。其它文件针对特定应用而扩展ISO基本媒体文件格式。举例来说,ISO/IEC 14496-15描述呈ISO基本媒体文件格式的NAL单元结构化视频的载运。H.264/AVC及HEVC以及其扩展为NAL单元结构化视频的实例。ISO/IEC 14496-15包含描述H.264/AVCNAL单元的载运的章节。此外,ISO/IEC 14496-15的第8章节描述HEVC NAL单元的载运。因此,据称ISO/IEC 14496-15的第8章节描述HEVC文件格式。在第114次MPEG会议之后,基于从若干国家团体接收的意见,起草含有对将应用于ISO/IEC 14496-15草案规范的新版本的ISO/IEC 14496-15的一些改变的布置文件。此布置文件被称为“MPEG输出文件N15297”。
将ISOBMFF用作用于许多编码解码器囊封格式(例如,AVC文件格式)以及用于许多多媒体容器格式(例如,MPEG-4文件格式、3GPP文件格式(3GP)及DVB文件格式)的基础。除例如音频及视频的连续媒体以外,例如图像的静态媒体以及元数据可存储于符合ISOBMFF的文件中。根据ISOBMFF结构化的文件可用于许多用途,包含局部媒体文件播放、远程文件的逐渐下载、用于经由HTTP的动态自适应串流(DASH)的区段、用于待流发射的内容及其分组化指令的容器及接收的实时媒体流的记录。因此,尽管最初针对存储而设计,但ISOBMFF已证明用于流(例如,用于逐渐下载或DASH)的价值。为了流发射目的,可使用在ISOBMFF中定义的电影片段。除例如音频及视频的连续媒体以外,符合ISOBMFF的文件也可存储例如图像的静态媒体以及元数据。
符合HEVC文件格式的文件可包括一系列称作逻辑框的对象。逻辑框可为由唯一类型识别符及长度定义的对象导向式构建块。逻辑框可为ISOBMFF中的基本语法结构,包含四字元译码逻辑框类型、逻辑框的位组计数及有效负载。换句话说,逻辑框可为包括经译码逻辑框类型、逻辑框的位组计数及有效负载的语法结构。在一些个例中,在符合HEVC文件格式的文件中的所有数据可包括于逻辑帧内,且在并不在逻辑框的文件中可能不存在数据。因此,ISOBMFF文件可由一连串逻辑框组成,且逻辑框可含有其它逻辑框。举例来说,逻辑框的有效负载可包含一或多个额外逻辑框。在本发明中其它处详细描述的图5及图6展示根据本发明的一或多种技术的在文件内的实例逻辑框。
符合ISOBMFF的文件可包含各种类型的逻辑框。举例来说,符合ISOBMFF的文件可包含文件类型逻辑框、媒体数据逻辑框、电影逻辑框、电影片段逻辑框等等。在此实例中,文件类型逻辑框包含文件类型及兼容性信息。媒体数据逻辑框可含有样本(例如,经译码图片)。电影逻辑框(“moov”)含有用于存在于文件中的连续媒体流的元数据。可将连续媒体流中的每一者在文件中表示为轨。举例来说,电影逻辑框可含有关于电影的元数据(例如,样本之间的逻辑及时序关系,以及指向样本的位置的指针)。电影逻辑框可包含若干类型的子逻辑框。电影逻辑框中的子逻辑框可包含一或多个轨逻辑框。轨逻辑框可包含关于电影的个别轨的信息。轨逻辑框可包含指定单一轨的总体信息的轨标头逻辑框。此外,轨逻辑框可包含含有媒体信息逻辑框的媒体逻辑框。媒体信息逻辑框可包含含有媒体样本在轨中的数据索引的样本表逻辑框。样本表逻辑框中的信息可用以按时间且对于轨的样本中的每一者,按类型、大小、容器及到样本的那个容器的偏移定位样本。因此,将用于轨的元数据围封于轨逻辑框(“trak”)中,而将轨的媒体内容围封于媒体数据逻辑框(“mdat”)中或直接围封于分开的文件中。用于轨的媒体内容包括一连串样本或由一连串样本组成,所述样本例如音频或视频存取单元。
ISOBMFF指定以下类型的轨:媒体轨,其含有基本媒体流;提示轨,其包含媒体发射指令或表示接收的分组流;及计时元数据轨,其包括时间同步的元数据。用于每一轨的元数据包含样本描述项的列表,每一项提供在轨中使用的译码或囊封格式及用于处理那个格式的初始化数据。每一样本与轨的样本描述项中的一者相关联。
ISOBMFF使得能够用各种机制来指定样本特定元数据。样本表逻辑框(“stbl”)内的特定逻辑框已经标准化以响应常见需求。举例来说,同步样本逻辑框(“stss”)用以列出轨的随机存取样本。样本分组机制使得能够根据四字元分组类型将样本映射到共享经指定为文件中的样本群组描述项的相同性质的样本的群组。已在ISOBMFF中指定若干分组类型。样本表逻辑框含有样本表,所述样本表含有媒体样本于轨中的所有时间及数据索引。使用样本表逻辑框中的表,有可能按时间定位样本、确定其类型(例如,I帧或非I帧)以及确定其大小、容器及到那个容器的偏移。
举例来说,同步样本逻辑框(“stss”)为样本表逻辑帧内的逻辑框。同步样本逻辑框用以列出轨的随机存取样本。本发明可将由同步样本逻辑框列出的样本称作同步样本。在另一实例中,样本分组机制使得能够根据四字元分组类型将样本映射到共享指定为文件中的样本群组描述项的相同性质的样本的群组。已在ISOBMFF中指定若干分组类型。
ISOBMFF规范指定适用于DASH的六种类型的流存取点(SAP)。前两个SAP类型(类型1及类型2)对应于H.264/AVC及HEVC中的IDR图片。第三SAP类型(类型3)对应于开放GOP随机存取点,因此对应于HEVC中的BLA或CRA图片。第四SAP类型(类型4)对应于GDR随机存取点。
电影片段逻辑框为顶级逻辑框。每一电影片段逻辑框提供将预先位于电影逻辑框中的信息。电影片段逻辑框可含有一或多个轨片段(“traf”)逻辑框。电影片段内存在一组轨片段(每轨为零个或多于零个)。轨片段又含有零个或多于零个轨行程,其中的每一者记录那个轨的样本的连续行程。举例来说,每一轨行程可含有按某一次序(例如解码次序)连续的图片的样本。轨片段逻辑框于14996-12规范中予以定义,且包括用于一或多个轨片段的元数据。举例来说,轨片段逻辑框可包含轨片段标头逻辑框,其指示轨ID、基本数据偏移、样本描述索引、默认样本历时、默认样本大小及默认样本旗标。轨片段逻辑框可包含一或多个轨片段行程逻辑框,每一者记录轨的连续样本集。举例来说,轨片段逻辑框可包含指示样本计数、数据偏移、样本旗标、样本历时、样本大小、样本组成时间偏移等等的语法元素。在此些结构内,许多字段为可选的,且可经默认。
样本表逻辑框可包含一或多个SampleToGroup逻辑框及一或多个样本群组描述逻辑框(即,SampleGroupDescription逻辑框)。SampleToGroup逻辑框可用以确定样本所属的样本群组,连同所述样本群组的相关联描述。换句话说,SampleToGroup逻辑框可指示样本所属的群组。SampleToGroup逻辑框可具有“sbgp”的逻辑框类型。SampleToGroup逻辑框可包含分组类型元素(例如,grouping_type)。在一些个例中,在本发明中,逻辑框的元素也可被称作语法元素。分组类型元素可为识别样本分组的类型(即,用以形成样本群组的规则)的整数。此外,SampleToGroup逻辑框可包含一或多个输入项(即,样本群组项)。SampleToGroup逻辑框中的每一样本群组项可与轨中的一系列不同的非重叠连续样本相关联。每一样本群组项可指示样本计数元素(例如,sample_count)及群组描述索引元素(例如,group_description_index)。样本群组项的样本计数元素可指示与样本群组项相关联的样本的数目。换句话说,样本群组项的样本计数元素可为给出具有相同样本群组描述符的连续样本的数目的整数。群组描述索引元素可识别SampleGroupDescription逻辑帧内的群组描述项,其含有与样本群组项相关联的样本的描述。多个样本群组项的群组描述索引元素可识别相同SampleGroupDescription逻辑框。
在ISO/IEC 23008-2(即,HEVC及其多层扩展的规范)中,受限的是:当存取单元(AU)中存在EOB NAL单元时,所述EOB NAL单元应为AU中的最后一个NAL单元;且当AU中存在EOS NAL单元时,所述EOS NAL单元应先于AU中的除EOS NAL单元(如果存在)以外的所有NAL单元。
在如ISO/IEC 14496-15的条款8及条款9所指定的HEVC及其扩展的文件格式中,条款9中的所谓分层式HEVC(L-HEVC)文件格式指定HEVC的多层扩展的视频位流的存储。根据L-HEVC文件格式,HEVC或L-HEVC位流的时间子层(也简称为子层)可存储于超过一个轨中。
然而,存储HEVC或L-HEVC位流的子层的当前设计具有一或多个问题。举例来说,对于位于HEVC或L-HEVC位流的CVS内且属于存储于多轨中的不同子层的AU来说,如果仅允许EOB NAL单元包含在含有具最高TemporalId的图片的一或多个AU中,那么当不使用所述轨时,EOB NAL单元可能丢失。如果经重构位流中的下一AU含有清洁随机存取(CRA)图片,那么此可成为问题,是因为与不存在EOB NAL单元的情况相比,在位流中紧接在CRA图片之前的此类EOB NAL单元的存在将需要用于彼CRA图片的不同解码过程,且因此可能引发可破坏用户体验的错误解码结果。
另一方面,对于位于HEVC或L-HEVC位流的同一CVS内且属于存储于多轨中的不同子层的AU来说,如果仅允许EOB NAL单元包含在含有具最低TemporalId及/或小于最高TemporalId的其它TemporalId中的一或多者的图片的一或多个AU中,那么始终需要重定序过程,从而确保在位流重构过程中将EOB NAL单元放置在经重构位流中的CVS的最后一个AU的结束处;否则,经重构位流不一致。此外,在此情况下,如果基础层由不同于HEVC的编码解码器(例如,AVC)译码,那么需丢弃EOB NAL单元,且可能需要产生新的EOB NAL单元(即,HEVC EOB NAL单元)。上述类似问题可适用于EOS NAL单元。
为解决以上提及的问题,提出下述技术。方面中的一些可独立地应用,且技术中的一些可以组合方式应用。尽管在HEVC及分层式HEVC的上下文中描述技术,但所述技术可适用于具有时间可调性支持的其它编码解码器,例如AVC及其分层式扩展。
根据本发明的第一实例技术,对于在HEVC或L-HEVC位流的同一CVS内且属于存储于多轨中的不同子层的AU来说,允许在超过一个轨(例如,轨中的每一者)中存在EOS NAL单元,作为在此轨中的同一CVS内的最后一个AU的部分。根据本发明的第二实例技术,对于在HEVC或L-HEVC位流的同一CVS内且属于存储于多轨中的不同子层的AU来说,当超过一个轨在相应样本中含有EOS NAL单元时,应将EOS NAL单元中的仅一者保持在最终经重构位流中的此些存取单元中的最后一者(具有最大解码时间的存取单元)中,放置在此些存取单元的最后一者的除EOB NAL单元(如果存在)以外的所有NAL单元之后,并丢弃其它EOS NAL单元。
举例来说,文件可包含第一轨及第二轨。在此实例中,第一轨可包含位流的层的第一时间子层,且第二轨可包含位流的同一层的第二时间子层。此外,在此实例中,第一轨可包含第一EOS NAL单元且第二轨可包含第二EOS NAL单元。在此实例中,根据本发明的第二实例技术,当装置(例如,文件剖析单元31)从文件提取包含第一及第二时间子层的位流时,装置可使第一EOS NAL单元或第二EOS NAL单元中处于较晚的存取单元中的任一者包含在位流中,并可丢弃另一EOS NAL单元。然而,在装置从文件提取仅包含第一或第二时间子层中的一者的位流的个例中,装置可包含所包含时间子层的每一NAL单元(包含所包含的时间子层的任何EOS NAL单元)且不包含另一时间子层的任何NAL单元(包含另一时间子层的任何EOS NAL单元)。
因此,在一些实例中,装置(例如文件产生装置34或源装置12)可使位流(例如,HEVC位流)的CVS的第一EOS NAL单元包含在用于存储视频内容的文件的第一轨中。在此实例中,第一EOS NAL单元在CVS的第一存取单元中。此外,在此实例中,装置可使CVS的第二EOS NAL单元包含在文件的第二轨中。在此实例中,第二EOS NAL单元在CVS的第二存取单元中。在此实例中,第二EOS NAL单元不同于第一EOS NAL单元。第一存取单元及第二存取单元可属于不同时间子层。在此实例的一些个例中,第一轨可包含CVS的位流的第一组存取单元,且第一存取单元为按第一组存取单元的次序的最后一个存取单元。此外,在此实例的一些个例中,第二轨包含CVS的位流的第二组存取单元,且第二存取单元为按第二组存取单元的次序的最后一个存取单元。
在另一实例中,例如目的地装置14的装置(例如,目的地装置14的文件剖析单元31)可接收包括第一轨及第二轨的文件。在此实例中,第一轨包含位流(例如,HEVC位流)的CVS的第一存取单元。第二轨包含CVS的第二存取单元。在此实例中,第一存取单元包含第一EOS NAL单元且第二存取单元包含第二EOS NAL单元。第一存取单元及第二存取单元属于不同时间子层。文件可包含除第一轨及第二轨以外的轨,且位流可包含其它层及时间子层。在此实例中,装置可基于与第一EOS NAL单元相关联的时间及与第二EOS NAL单元相关联的时间的比较来输出第一EOS NAL单元且可丢弃第二EOS NAL单元。因此,从文件重构的位流可包含第一EOS NAL单元,但不包含第二EOS NAL单元。在一些实例中,装置将与第一存取单元相关联的解码时间及与第二存取单元相关联的解码时间进行比较。装置可保持第一EOSNAL单元及第二EOS NAL单元中处于与较晚解码时间相关联的存取单元中的任一者,并丢弃另一EOS NAL单元。举例来说,基于第一存取单元是与比第二存取单元较晚的解码时间相关联,装置可保持第一EOS NAL单元并丢弃第二EOS NAL单元。因此,在此实例中,最终经重构位流可在按CVS的次序的最后一个存取单元的除EOB NAL单元(如果存在)以外的所有NAL单元之后的位置处包含第一EOS NAL单元。
在此实例的一些个例中,第一轨包含CVS的位流的第一组存取单元,且第一存取单元为按第一组存取单元的次序的最后一个存取单元。此外,在此类个例中,第二轨包含CVS的位流的第二组存取单元,且第二存取单元为按第二组存取单元的次序的最后一个存取单元。在此实例的一些个例中,装置(例如,文件剖析单元31)可将第一轨中的CVS的NAL单元输出到视频解码器30。此外,装置(例如,文件剖析单元31)可将第二轨中的CVS的NAL单元输出到视频解码器30。视频解码器30可基于第一轨或第二轨中的至少一者中的CVS的NAL单元来解码CVS的图片。
在一些实例中,装置可基于包含第一EOS NAL单元的第一存取单元来确定不存在存储于第一轨中的CVS的后续NAL单元。在此实例中,装置可基于包含第二EOS NAL单元的第二存取单元来确定不存在存储于第二轨中的CVS的后续NAL单元。
根据本发明的第三实例技术,对于在HEVC或L-HEVC位流的同一CVS内且属于存储于多轨中的不同子层的AU来说,允许在超过一个轨(例如,轨中的每一者)中存在EOB NAL单元,作为在此轨中的同一CVS内的最后一个AU的部分。举例来说,文件可包含第一轨及第二轨。在此实例中,第一轨可包含位流的层的第一时间子层,且第二轨可包含位流的同一层的第二时间子层。此外,在此实例中,根据本发明的第三实例技术,第一轨可包含第一EOB NAL单元且第二轨可包含第二EOB NAL单元。
根据本发明的第四实例技术,对于在HEVC或L-HEVC位流的同一CVS内且属于存储于多轨中的不同子层的AU来说,当超过一个轨在相应样本中含有EOB NAL单元时,应将EOBNAL单元中的仅一者保持在最终经重构位流中,放置在此些存取单元的最后一者的结束处,并丢弃其它EOB NAL单元。举例来说,文件可包含第一轨及第二轨。在此实例中,第一轨可包含位流的层的第一时间子层,且第二轨可包含位流的同一层的第二时间子层。文件可包含除第一轨及第二轨以外的轨,且位流可包含其它层及时间子层。此外,在此实例中,第一轨可包含第一EOB NAL单元且第二轨可包含第二EOB NAL单元。在此实例中,根据本发明的第四实例技术,当装置(例如,文件剖析单元31)从文件提取包含第一及第二时间子层的位流时,装置可使第一EOB NAL单元或第二EOB NAL单元中处于较晚的存取单元中的任一者包含在位流中,并可丢弃另一EOB NAL单元。然而,在装置从文件提取仅包含第一时间子层或第二时间子层中的一者的位流的个例中,装置可包含所包含时间子层的每一NAL单元(包含所包含的时间子层的任何EOB NAL单元)且不包含另一时间子层的任何NAL单元(包含另一时间子层的任何EOB NAL单元)。
在一个实例中,装置(例如文件产生装置34或源装置12)可使位流(例如,HEVC位流)的CVS的第一EOB NAL单元包含在用于存储视频内容的文件的第一轨中。在此实例中,第一EOB NAL单元在CVS的第一存取单元中。此外,在此实例中,装置可使CVS的第二EOB NAL单元包含在文件的第二轨中。在此实例中,第二EOB NAL单元在CVS的第二存取单元中。在此实例中,第二EOB NAL单元不同于第一EOB NAL单元。在此实例中,第一存取单元及第二存取单元属于不同时间子层。在此实例的一些个例中,第一轨包含位流的第一组存取单元,第一存取单元为按第一组存取单元的次序的最后一个存取单元,第二轨包含位流的第二组存取单元,且第二存取单元为按第二组存取单元的次序的最后一个存取单元。
在另一实例中,例如目的地装置14的装置(例如,目的地装置14的文件剖析单元31)接收包括第一轨及第二轨的文件。在此实例中,第一轨包含位流(例如,HEVC位流)的CVS的第一存取单元。第二轨包含CVS的第二存取单元。在此实例中,第一存取单元包含第一EOBNAL单元且第二存取单元包含第二EOB NAL单元,第一存取单元及第二存取单元属于不同时间子层,且装置输出第一EOB NAL单元并丢弃第二EOB NAL单元。装置在CVS的最后一个存取单元的所有NAL单元之后的位置处包含第一EOB NAL单元。在一些实例中,装置可将与第一存取单元相关联的解码时间及与第二存取单元相关联的解码时间进行比较。在此些实例中,装置可保持第一EOB NAL单元及第二EOB NAL单元中处于与较晚解码时间相关联的存取单元中的任一者,并丢弃另一EOB NAL单元。举例来说,基于第一存取单元是与比第二存取单元较晚的解码时间相关联,装置可保持第一EOB NAL单元并丢弃第二EOB NAL单元。
在此实例的一些个例中,装置(例如,文件剖析单元31)可将第一轨中的CVS的NAL单元输出到视频解码器30。此外,装置(例如,文件剖析单元31)可将第二轨中的CVS的NAL单元输出到视频解码器30。视频解码器30可基于第一轨或第二轨中的至少一者中的CVS的NAL单元来解码CVS的图片。
图3为说明可实施本发明中所描述的技术的实例视频编码器20的框图。视频编码器20表示经配置以产生可使用本发明中所描述的文件格式技术存储的视频数据的视频译码器的实例。视频编码器20可经配置以输出单一视图、多视图、可缩放、3D及其它类型的视频数据。视频编码器20可经配置以将视频输出到后处理实体127。后处理实体127意欲表示可处理来自视频编码器20的经编码视频数据的视频实体(例如MANE或编接/编辑装置)的实例。在一些个例中,后处理实体127可为网络实体的实例。在一些视频编码系统中,后处理实体127及视频编码器20可为分开的装置的部分,而在其它个例中,关于后处理实体127描述的功能性可由包括视频编码器20的同一装置执行。后处理实体127可为视频装置。在一些实例中,后处理实体127可与图1的文件产生装置34相同。
处理电路包含视频编码器20,且视频编码器20经配置以执行本发明中所描述的实例技术中的一或多者。举例来说,视频编码器20包含集成电路,且图3中所说明的各种单元可形成为与电路总线互连的硬件电路块。此些硬件电路块可为分开的电路块或所述单元中的两者或多于两者可组合为共同硬件电路块。硬件电路块可形成为电组件的组合,所述电组件形成例如算术逻辑单元(ALU)、初等函数单元(EFU)的运算块,以及例如AND、OR、NAND、NOR、XOR、XNOR及其它类似逻辑块的逻辑块。
在一些实例中,图3中所说明的单元中的一或多者可为在处理电路上执行的软件单元。在此类实例中,用于此些软件单元的目标码存储于存储器中。操作系统可使得视频编码器20检索目标码并执行目标码,其使得视频编码器20执行实施实例技术的操作。在一些实例中,软件单元可为视频编码器20在启动时执行的固件。因此,视频编码器20为具有执行实例技术的硬件或具有在硬件上执行以特化执行所述实例技术的硬件的软件/固件的结构性组件。
视频编码器20可执行视频切片内的视频块的帧内译码及帧间译码。帧内译码依赖于空间预测以减少或移除给定视频帧或图片内的视频中的空间冗余。帧间译码依赖于时间预测以减少或移除视频序列的相邻帧或图片内的视频的时间冗余。帧内模式(I模式)可指若干基于空间的压缩模式中的任一者。帧间模式(例如,单向预测(P模式)或双向预测(B模式))可指若干基于时间的压缩模式中的任一者。
在图3的实例中,视频编码器20包含分割单元135、预测处理单元141、滤波器单元163、参考图片存储器164、求和器150、变换处理单元152、量化单元154及熵编码单元156。预测处理单元141包含运动估计单元142、运动补偿单元144及帧内预测处理单元146。为了视频块重构,视频编码器20也包含逆量化单元158、逆变换处理单元160及求和器162。滤波器单元163意欲表示一或多个环路滤波器,例如解块滤波器、自适应环路滤波器(ALF)及样本自适应偏移(SAO)滤波器。尽管滤波器单元163在图3中展示为环路内滤波器,但在其它配置中,滤波器单元163可实施为环路后滤波器。
视频编码器20的视频数据存储器165可存储待通过视频编码器20的组件编码的视频数据。可(例如)从视频源18获得存储于视频数据存储器165中的视频数据。参考图片存储器164可为存储参考视频数据以供视频编码器20在(例如,以帧内或帧间译码模式)编码视频数据时使用的参考图片存储器。视频数据存储器165及参考图片存储器164可由多种存储器装置中的任一者形成,例如动态随机存取存储器(DRAM)(包含同步DRAM(SDRAM))、磁阻式RAM(MRAM)、电阻式RAM(RRAM)或其它类型的存储器装置。视频数据存储器165及参考图片存储器164可由同一存储器装置或分开的存储器装置提供。在各种实例中,视频数据存储器165可与视频编码器20的其它组件一起在芯片上,或相对于那些组件在芯片外。
如图3中所展示,视频编码器20接收视频数据,且分割单元135将所述数据分割成视频块。此分割也可包含分割成切片或其它较大单元,以及(例如)根据LCU及CU的四分树结构的视频块分割。视频编码器20大体上说明对待编码的视频切片内的视频块进行编码的组件。切片可划分成多个视频块。预测处理单元141可针对当前视频块基于误差结果(例如,译码速率及失真位准)选择多个可能译码模式中的一者,例如多个帧内译码模式中的一者或多个帧间译码模式中的一者。预测处理单元141可将所得经帧内或帧间译码的块提供到求和器150以产生残余块数据,且提供到求和器162以重构经编码块以用作参考图片。
预测处理单元141内的帧内预测处理单元146可执行当前视频块相对于与待译码的当前块相同的帧或切片中的一或多个相邻块的帧内预测性译码,以提供空间压缩。预测处理单元141内的运动估计单元142及运动补偿单元144执行当前视频块相对于一或多个参考图片中的一或多个预测块的帧间预测性译码,以提供时间压缩。
运动估计单元142可经配置以根据视频序列的预定图案来确定用于视频切片的帧间预测模式。预定图案可将序列中的视频切片指定为P切片、B切片或GPB切片。运动估计单元142及运动补偿单元144可高度集成,但出于概念目的而分开说明。由运动估计单元142执行的运动估计为产生估计视频块的运动的运动向量的过程。运动向量可(例如)指示当前视频帧或图片内的视频块的PU相对于参考图片内的预测性块的移位。
预测性块为就像素差而言被发现紧密地匹配待译码视频块的PU的块,所述像素差可由绝对差和(SAD)、平方差和(SSD)或其它差量度确定。在一些实例中,视频编码器20可计算存储于参考图片存储器164中的参考图片的次整数像素位置的值。举例来说,视频编码器20可内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元142可执行关于全像素位置及分数像素位置的运动搜索且输出具有分数像素精确度的运动向量。
运动估计单元142通过比较PU的位置与参考图片的预测性块的位置而计算经帧间译码切片中的视频块的PU的运动向量。参考图片可选自第一参考图片列表(列表0)或第二参考图片列表(列表1),所述列表中的每一者识别存储于参考图片存储器164中的一或多个参考图片。运动估计单元142将经计算运动向量可从其确定的语法元素发送到熵编码单元156及运动补偿单元144。
由运动补偿单元144执行的运动补偿可涉及基于由运动估计确定的运动向量提取或产生预测性块,可能执行内插达子像素精确度。在接收到当前视频块的PU的运动向量时,运动补偿单元144可在参考图片列表中的一者中定位运动向量所指向的预测性块。视频编码器20可通过从正被译码的当前视频块的像素值减去预测性块的像素值来形成残余视频块,从而形成像素差值。像素差值形成块的残余数据,且可包含明度及色度差分量两者。求和器150表示执行此减法运算的一或多个组件。运动补偿单元144也可产生与视频块及视频切片相关联的语法元素,以供视频解码器30在解码视频切片的视频块时使用。
作为由运动估计单元142及运动补偿单元144所执行的帧间预测的替代,帧内预测处理单元146可对当前块进行帧内预测,如上文所描述。详细来说,帧内预测处理单元146可确定使用帧内预测模式来编码当前块。在一些实例中,帧内预测处理单元146可(例如)在分开的编码遍次期间使用各种帧内预测模式来编码当前块,且帧内预测处理单元146可从经测试模式中选择适当帧内预测模式来使用。举例来说,帧内预测处理单元146可使用对于各种所测试帧内预测模式的速率-失真分析来计算速率-失真值,并在所测试模式中选择具有最佳速率-失真特性的帧内预测模式。速率-失真分析大体上确定经编码块与原始未经编码块(其经编码以产生经编码块)之间的失真(或误差)量,以及用以产生经编码块的位速率(即,位的数目)。帧内预测处理单元146可从各种经编码块的失真及速率计算比率以确定哪一帧内预测模式展现所述块的最佳速率-失真值。
在任何情况下,在选择块的帧内预测模式之后,帧内预测处理单元146可将指示所选择的用于块的帧内预测模式的信息提供到熵编码单元156。熵编码单元156可根据本发明的技术来编码指示所选择帧内预测模式的信息。视频编码器20可在经发射位流中包含以下各者:配置数据,其可包含多个帧内预测模式索引表及多个经修改帧内预测模式索引表(也被称作码字映射表);各种块的编码上下文的定义;及待用于所述上下文中的每一者的最可能帧内预测模式、帧内预测模式索引表及经修改帧内预测模式索引表的指示。
在预测处理单元141经由帧间预测或帧内预测产生当前视频块的预测性块之后,视频编码器20可通过从当前视频块减去预测性块而形成残余视频块。残余块中的残余视频数据可包含于一或多个TU中且被应用于变换处理单元152。变换处理单元152使用例如离散余弦变换(DCT)或概念上类似的变换将残余视频数据变换成残余变换系数。变换处理单元152可将残余视频数据从像素域转换到变换域,例如频域。
变换处理单元152可将所得变换系数发送到量化单元154。量化单元154量化变换系数以进一步减小位速率。所述量化过程可减小与所述系数中的一些或所有相关联的位深度。可通过调整量化参数来修改量化程度。在一些实例中,量化单元154可接着执行对包含经量化变换系数的矩阵的扫描。替代地,熵编码单元156可执行扫描。
在量化后,熵编码单元156可熵编码表示经量化变换系数的语法元素。举例来说,熵编码单元156可执行上下文自适应性可变长度译码(CAVLC)、上下文自适应性二进位算术译码(CABAC)、基于语法的上下文自适应性二进位算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵编码方法或技术。在通过熵编码单元156进行熵编码之后,经编码位流可经发射到视频解码器30,或经存档以供视频解码器30稍后发射或检索。熵编码单元156也可熵编码正被译码的当前视频切片的运动向量及其它语法元素。
逆量化单元158及逆变换处理单元160分别应用逆量化及逆变换,以重构像素域中的残余块以供稍后用作参考图片的参考块。运动补偿单元144可通过将残余块添加到参考图片列表中的一者内的参考图片中的一者的预测性块来计算参考块。运动补偿单元144也可将一或多个内插滤波器应用于所述经重构的残余块,以计算在运动估计中使用的次整数像素值。求和器162可将经重构的残余块添加到由运动补偿单元144产生的经运动补偿的预测块,以产生用于存储于参考图片存储器164中的参考块。参考块可由运动估计单元142及运动补偿单元144用作参考块以对后续视频帧或图片中的块进行帧间预测。
根据本发明的技术,后处理实体127可产生用于由视频编码器20产生的经编码视频内容的存储的文件。后处理实体127可根据本发明的任何技术产生文件。举例来说,后处理实体127可使位流的CVS的第一EOS NAL单元包含在文件的第一轨中,且可使CVS的第二EOS NAL单元包含在文件的第二轨中。在一些实例中,后处理实体127可使位流的CVS的第一EOB NAL单元包含在文件的第一轨中,且可使位流的CVS的第二EOB NAL单元包含在文件的第二轨中。
图4为说明可实施本发明中所描述的技术的实例视频解码器30的框图。图4的视频解码器30表示经配置以解码可使用本发明中所描述的文件格式技术存储的视频数据的视频解码器的实例。
处理电路包含视频解码器30,且视频解码器30经配置以执行本发明中所描述的实例技术中的一或多者。举例来说,视频解码器30包含集成电路,且图4中所说明的各种单元可形成为与电路总线互连的硬件电路块。此些硬件电路块可为分开的电路块或所述单元中的两者或多于两者可组合为共同硬件电路块。硬件电路块可形成为电组件的组合,所述电组件形成例如算术逻辑单元(ALU)、初等函数单元(EFU)的运算块,以及例如AND、OR、NAND、NOR、XOR、XNOR及其它类似逻辑块的逻辑块。
在一些实例中,图4中所说明的单元中的一或多者可为在处理电路上执行的软件单元。在此类实例中,用于此些软件单元的目标码存储于存储器中。操作系统可使得视频解码器30检索目标码并执行目标码,其使得视频解码器30执行实施实例技术的操作。在一些实例中,软件单元可为视频解码器30在启动时执行的固件。因此,视频解码器30为具有执行实例技术的硬件或具有在硬件上执行以特化执行所述实例技术的硬件的软件/固件的结构性组件。
视频解码器30可经配置以解码单一视图、多视图、可缩放、3D及其它类型的视频数据。在图4的实例中,视频解码器30包含熵解码单元180、预测处理单元181、逆量化单元186、逆变换处理单元188、求和器190、滤波器单元191及参考图片存储器192。预测处理单元181包含运动补偿单元182及帧内预测处理单元184。在一些实例中,视频解码器30可执行与关于来自图3的视频编码器20所描述的编码遍次大体上互逆的解码遍次。
经译码图片缓冲器(CPB)179可接收并存储位流的经编码视频数据(例如,NAL单元)。存储于CPB 179中的视频数据可(例如)经由视频数据的有线或无线网络通信或通过存取实体数据存储媒体而从图1的链路16(例如,从例如相机的本地视频源)获得。CPB 179可形成存储来自经编码视频位流的经编码视频数据的视频数据存储器。参考图片存储器192可为存储参考视频数据以供视频解码器30在(例如,以帧内或帧间译码模式)解码视频数据时使用的参考图片存储器。CPB 179及参考图片存储器192可由多种存储器装置中的任一者形成,例如,动态随机存取存储器(DRAM)(包含同步DRAM(SDRAM))、磁阻式RAM(MRAM)、电阻式RAM(RRAM)或其它类型的存储器装置。CPB 179及参考图片存储器192可由同一存储器装置或分开的存储器装置提供。在各种实例中,CPB 179可与视频解码器30的其它组件一起在芯片上,或相对于那些组件在芯片外。
在解码过程期间,视频解码器30从视频编码器20接收表示经编码视频切片的视频块及相关联语法元素的经编码视频位流。在图4的实例中,视频解码器30可从剖析文件以提取经译码视频位流的文件剖析单元177接收经编码视频位流。在一些实例中,文件剖析单元177可从网络实体129接收文件。网络实体129可(例如)为服务器、MANE、视频编辑器/编接器,或经配置以实施上文所描述的技术中的一或多者的其它此类装置。网络实体129可包含或可不包含视频编码器(例如,视频编码器20)。在网络实体129将经编码视频位流发射到视频解码器30之前,可由网络实体129实施本发明中所描述的技术中的一些。在一些视频解码系统中,网络实体129及视频解码器30可为分开的装置的部分,而在其它个例中,关于网络实体129描述的功能性可由包括视频解码器30的同一装置执行。网络实体129可被视为视频装置。
此外,在一些实例中,网络实体129为图1的文件产生装置34。文件剖析单元177可实施为目的地装置14的部分或与目的地装置分开的装置。在一些实例中,网络实体129及文件剖析单元177由同一装置实施。文件剖析单元177可实施本发明的各种技术。举例来说,文件剖析单元177可接收包括第一轨及第二轨的文件。在此实例中,第一轨包含位流的CVS的第一存取单元,且第二轨包含CVS的第二存取单元。第一存取单元可包含第一EOS NAL单元,且第二存取单元可包含第二EOS NAL单元。在一些实例中,作为从文件提取最终位流的部分,文件剖析单元177可在最终位流中输出第一EOS NAL单元或第二EOS NAL单元中与较晚解码时间相关联的任一者。举例来说,基于与第一EOS NAL单元相关联的解码时间及与第二EOS NAL单元相关联的解码时间的比较,所述比较揭露与第一EOS NAL单元相关联的解码时间更晚,文件剖析单元177可输出第一EOS NAL单元(例如,包含在最终位流中)并可丢弃第二EOS NAL单元。文件剖析单元177可将第一轨中的CVS的NAL单元输出到视频解码器30,且可将第二轨中的CVS的NAL单元输出到视频解码器30。
在另一实例中,文件剖析单元177可接收包括第一轨及第二轨的文件。在此实例中,第一轨包含位流的CVS的第一存取单元,且第二轨包含CVS的第二存取单元。第一存取单元可包含第一EOB NAL单元,且第二存取单元可包含第二EOB NAL单元。在一些实例中,作为从文件提取最终位流的部分,文件剖析单元177可在最终位流中输出第一EOB NAL单元并可丢弃第二EOB NAL单元。在此实例中,文件剖析单元177可使第一轨及第二轨两者的NAL单元包含在最终位流中。举例来说,文件剖析单元177可将第一轨中的CVS的NAL单元输出到视频解码器30,且可将第二轨中的CVS的NAL单元输出到视频解码器30。在一些实例中,文件剖析单元177可输出第一EOB NAL单元或第二EOB NAL单元中与较晚时间相关联的任一者。举例来说,基于与第一EOB NAL单元相关联的时间及与第二EOB NAL单元相关联的时间的比较,所述比较揭露与第一EOB NAL单元相关联的时间更晚,文件剖析单元177可输出第一EOBNAL单元并可丢弃第二EOB NAL单元,或反之亦然。
视频解码器30的熵解码单元180熵解码位流的特定语法元素以产生经量化的系数、运动向量及其它语法元素。熵解码单元180将运动向量及其它语法元素转递到预测处理单元181。视频解码器30可接收视频切片层级及/或视频块层级处的语法元素。
当视频切片经译码为经帧内译码(I)切片时,预测处理单元181的帧内预测处理单元184可基于来自当前帧或图片的先前经解码块的所传信的帧内预测模式及数据来产生用于当前视频切片的视频块的预测数据。当视频帧经译码为经帧间译码(即,B或P)切片时,预测处理单元181的运动补偿单元182基于从熵解码单元180接收的运动向量及其它语法元素来产生用于当前视频切片的视频块的预测性块。可从参考图片列表中的一者内的参考图片中的一者产生预测性块。视频解码器30可基于存储于参考图片存储器192中的参考图片使用默认建构技术来建构参考帧列表:列表0及列表1。
运动补偿单元182通过确定运动向量及获得其它语法元素来确定用于当前视频切片的视频块的预测信息,且使用所述预测信息产生正解码的当前视频块的预测性块。举例来说,运动补偿单元182使用所接收语法元素中的一些来确定用以译码视频切片的视频块的预测模式(例如,帧内或帧间预测)、帧间预测切片类型(例如,B切片或P切片)、所述切片的参考图片列表中的一或多者的建构信息、所述切片的每一经帧间编码的视频块的运动向量、所述切片的每一经帧间译码的视频块的帧间预测状态,及用以解码当前视频切片中的视频块的其它信息。
运动补偿单元182也可基于内插滤波器来执行内插。运动补偿单元182可使用如由视频编码器20在视频块的编码期间使用的内插滤波器,以计算参考块的次整数像素的内插值。在此情况下,运动补偿单元182可从所接收的语法元素来确定由视频编码器20所使用的内插滤波器,并可使用所述内插滤波器来产生预测性块。
逆量化单元186逆量化(即,解量化)位流中所提供且由熵解码单元180解码的经量化变换系数。逆量化过程可包含使用由视频编码器20针对视频切片中的每一视频块计算的量化参数,以确定量化程度及(同样地)应被应用的逆量化程度。逆变换处理单元188对变换系数应用逆变换,例如逆DCT、逆整数变换或概念上类似的逆变换过程,以便产生像素域中的残余块。
在运动补偿单元182基于运动向量及其它语法元素而产生当前视频块的预测性块之后,视频解码器30通过将来自逆变换处理单元188的残余块与由运动补偿单元182产生的对应预测性块求和而形成经解码视频块。求和器190表示执行此求和运算的一或多个组件。如果需要,也可使用环路滤波器(在译码环路中或在译码环路后)以使像素转变平滑,或以其它方式改进视频质量。滤波器单元191意欲表示一或多个环路滤波器,例如,解块滤波器、自适应环路滤波器(ALF)及样本自适应偏移(SAO)滤波器。尽管滤波器单元191在图4中展示为环路内滤波器,但在其它配置中,滤波器单元191可实施为环路后滤波器。给定帧或图片中的经解码视频块接着存储于参考图片存储器192中,所述参考图片存储器192存储用于后续运动补偿的参考图片。参考图片存储器192也存储用于稍后在显示装置(例如,图1的显示装置32)上呈现的经解码视频数据。因此,参考图片存储器192可为经配置以存储视频数据的一或多个数据存储媒体的实例。
图5为说明根据本发明的一或多种技术的文件300的实例结构的概念图。在图5的实例中,文件300包含电影逻辑框302及多个媒体数据逻辑框304。尽管在图5的实例中说明为在同一文件中,但在其它实例中,电影逻辑框302及媒体数据逻辑框304可在分开的文件中。如上文所指示,逻辑框可为由唯一类型识别符及长度定义的对象导向式构建块。举例来说,逻辑框可为ISOBMFF中的基本语法结构,包含四字元译码的逻辑框类型、逻辑框的位组计数及有效负载。
电影逻辑框302可含有用于文件300的轨的元数据。文件300的每一轨可包括媒体数据的连续流。媒体数据逻辑框304中的每一者可包含一或多个样本305。样本305中的每一者可包括音频或视频存取单元。如在本发明中其它处所描述,在多视图译码(例如,MV-HEVC及3D-HEVC)及可缩放视频译码(例如,SHVC)中,每一存取单元可包括多个经译码图片。举例来说,存取单元可包含用于每一层的一或多个经译码图片。
此外,在图5的实例中,电影逻辑框302包含轨逻辑框306。轨逻辑框306可围封用于文件300的轨的元数据。在其它实例中,电影逻辑框302可包含用于文件300的不同轨的多个轨逻辑框。轨逻辑框306包含媒体逻辑框307。媒体逻辑框307可含有宣告关于轨内的媒体数据的信息的所有对象。媒体逻辑框307包含媒体信息逻辑框308。媒体信息逻辑框308可含有宣告轨的媒体的特性信息的所有对象。媒体信息逻辑框308包含样本表逻辑框309。样本表逻辑框309可指定样本特定元数据。
在图5的实例中,样本表逻辑框309包含至少一个SampleToGroup逻辑框310及至少一个SampleGroupDescription逻辑框312。因此,样本表逻辑框309为“容器逻辑框”的个例。在其它实例中,样本表逻辑框309可包含除SampleToGroup逻辑框310及SampleGroupDescription逻辑框312以外的其它逻辑框,及/或可包含多个SampleToGroup逻辑框及SampleGroupDescription逻辑框。SampleToGroup逻辑框310可将样本(例如,样本305中的特定者)映射到群样本。SampleGroupDescription逻辑框312可指定由所述群样本(即,样本群组)中的样本共享的性质。
此外,在图5的实例中,SampleToGroup逻辑框310包含grouping_type语法元素313(即,分组类型语法元素)、entry_count语法元素314(即,输入项计数语法元素)及一或多个样本群组项315。Entry_count语法元素314指示样本群组项315的数目。样本群组项315中的每一者包含sample_count语法元素316(即,样本计数语法元素)及group_description_index语法元素317(即,群组描述索引语法元素)。Sample_count语法元素316可指示与含有sample_count语法元素316的样本群组项相关联的样本的数目。Group_description_index语法元素317可在SampleGroupDescription逻辑框(例如,SampleGroupDescription逻辑框312)内识别出含有与含有group_description_index语法元素317的与样本群组项相关联的样本的描述的群组描述项。
此外,在图5的实例中,SampleGroupDescription逻辑框312包含grouping_type语法元素320、entry_count语法元素322及一或多个群组描述项324。Entry_count语法元素322指示SampleGroupDescription逻辑框中的群组描述项324的数目。
此外,在图5的实例中,样本表逻辑框308包含组块偏移逻辑框326、样本到组块逻辑框328及样本大小逻辑框330。样本以“组块”形式群集在文件中。组块中的每一者可为文件中的一系列连续位。组块偏移逻辑框326包含指定含有轨的样本的组块的起始位置及/或偏移的数据。以此方式,文件可将样本及样本中的NAL单元与轨相关联。不同轨逻辑框包含不同组块偏移逻辑框。因此,对于每一相应轨,装置可基于相应轨的组块偏移逻辑框来确定文件的哪些组块包含所述相应轨的样本。如ISOBMFF 14496-12的§8.7.4中所描述,装置可使用样本到组块逻辑框328中的数据来建构表,所述表指示可能包含可用于寻找含有轨的样本、样本的位置及相关联样本描述的组块的数据的逻辑框。如ISOBMFF 14496-12的§8.7.3中所描述,样本大小逻辑框330可指定轨中的样本的大小。
在图5的实例中,轨逻辑框306(即,第一轨逻辑框)可含有关于第一轨的元数据。此外,文件300可包含结构类似于轨逻辑框306的结构的第二轨逻辑框(为视觉简洁起见而未在图5的实例中示出)。第二轨逻辑框可含有关于第二轨的元数据。根据本发明的一或多种技术,第一轨的媒体数据逻辑框中的样本可包含CVS的EOS NAL单元,且第二轨的媒体数据逻辑框中的样本可包含同一CVS的EOS NAL单元。此外,根据本发明的一或多种技术,第一轨的媒体数据逻辑框中的样本可包含CVS的EOB NAL单元,且第二轨的媒体数据逻辑框中的样本可包含同一CVS的EOB NAL单元。
图6为说明根据本发明的一或多种技术的文件450的实例结构的概念图。在图6的实例中,文件450包含一或多个电影片段逻辑框452及多个媒体数据逻辑框454。尽管在图6的实例中说明为在同一文件中,但在其它实例中,电影片段逻辑框452及媒体数据逻辑框454可在分开的文件中。媒体数据逻辑框454中的每一者可包含一或多个样本456。样本456中的一些或全部可包括视频内容的相应图片。电影片段逻辑框中的每一者对应于一电影片段。每一电影片段可包括一组轨片段。可存在每轨零个或多于零个轨片段。
在图6的实例中,电影片段逻辑框452提供关于对应电影片段的信息。此信息先前应已在电影逻辑框(例如电影逻辑框302)中。电影片段逻辑框452可包含轨片段逻辑框458。轨片段逻辑框458对应于轨片段,且提供关于轨片段的信息。
举例来说,在图6的实例中,轨片段逻辑框458可包含含有关于对应于轨片段逻辑框458的轨片段的信息的一或多个SampleToGroup逻辑框462及一或多个SampleGroupDescription逻辑框464。因此,轨片段逻辑框458为“容器逻辑框”的个例。
此外,在图6的实例中,SampleToGroup逻辑框462包含grouping_type语法元素470(即,分组类型语法元素)、entry_count语法元素471(即,输入项计数语法元素)及一或多个样本群组项472。Entry_count语法元素471指示样本群组项472的数目。样本群组项472中的每一者包含sample_count语法元素473(即,样本计数语法元素)及group_description_index语法元素474(即,群组描述索引语法元素)。Sample_count语法元素473可指示与含有sample_count语法元素473的样本群组项相关联的样本的数目。Group_description_index语法元素474可在SampleGroupDescription逻辑框(例如,SampleGroupDescription逻辑框464)内识别出含有与含有group_description_index语法元素474的样本群组项相关联的样本的描述的群组描述项。
另外,在图6的实例中,SampleGroupDescription逻辑框464包含grouping_type语法元素480、entry_count语法元素482及一或多个群组描述项484。Entry_count语法元素482指示SampleGroupDescription逻辑框464中的群组描述项484的数目。
在图6的实例中,轨片段逻辑框458也包含组块偏移逻辑框486、样本到组块逻辑框490及样本大小逻辑框492。组块偏移逻辑框486、样本到组块逻辑框490及样本大小逻辑框492可具有与图5的组块偏移逻辑框326、样本到组块逻辑框328及样本大小逻辑框330相同的语法及语义。
在图6的实例中,轨片段逻辑框458(即,第一轨逻辑框)可含有关于第一轨的片段的元数据。此外,文件300可包含结构类似于轨片段逻辑框458的结构的第二轨片段逻辑框(即,第二轨逻辑框,其为视觉简洁起见而未在图6的实例中示出)。第二轨片段逻辑框可含有关于第二轨的片段的元数据。根据本发明的一或多种技术,第一轨的片段的媒体数据逻辑框中的样本可包含CVS的EOS NAL单元,且第二轨的片段的媒体数据逻辑框中的样本可包含同一CVS的EOS NAL单元。此外,根据本发明的一或多种技术,第一轨的媒体数据逻辑框中的样本可包含CVS的EOB NAL单元,且第二轨的媒体数据逻辑框中的样本可包含同一CVS的EOB NAL单元。
图7为说明根据本发明的一或多种技术的文件的多轨中的EOS NAL单元的实例的概念图。在图7的实例中,文件包含两个轨:轨1及轨2。此外,在图7的实例中,轨1含有第一子层(即,子层0)的NAL单元,且轨2含有第二子层(即,子层1)的NAL单元。图7的实例中所示的子层0及子层1的部分属于同一CVS。
根据本发明的一或多种技术,EOS NAL单元存在于文件的超过一个轨(即,轨1及轨2)中。此外,根据本发明的一或多种技术,对于每一相应轨,相应轨中的EOS NAL单元为在CVS内的最后一个AU的一部分。举例来说,EOS NAL单元500在CVS中的轨1的最后一个AU中,且EOS NAL单元502在CVS中的轨2的最后一个AU中。
图8为说明根据本发明的一或多种技术的文件的多轨中的EOB NAL单元的实例的概念图。在图8的实例中,文件包含两个轨:轨1及轨2。此外,在图8的实例中,轨1含有第一子层(即,子层0)的NAL单元,且轨2含有第二子层(即,子层1)的NAL单元。图8的实例中所示的子层0及子层1的部分属于同一位流。
根据本发明的一或多种技术,EOB NAL单元存在于文件的超过一个轨(即,轨1及轨2)中。此外,根据本发明的一或多种技术,对于每一相应轨,相应轨中的EOB NAL单元为在位流内的最后一个AU的一部分。举例来说,EOB NAL单元520在位流中的轨1的最后一个AU中,且EOB NAL单元522在位流中的轨2的最后一个AU中。
图9A为说明根据本发明的一或多种技术的用于产生在多轨中包含EOS NAL单元的文件的实例操作的流程图。本发明的流程图为实例。在根据本发明的技术的其它实例中,操作可包含更多、更少或不同动作,或包含不同次序的动作。
在图9A的实例中,计算装置(例如,源装置12(图1)、文件产生装置34(图1)、后处理实体127(图3)或另一装置)可使位流的CVS的第一EOS NAL单元包含在文件的第一轨中(600)。第一EOS NAL单元在CVS的第一存取单元中。为使NAL单元(例如,第一EOS NAL单元)包含在文件轨中,装置可使NAL单元包含在样本(例如样本305(图5)或样本456(图6)中的任一者)中。在一些情况下,装置将样本存储于媒体数据逻辑框中,例如媒体数据逻辑框304(图5)或媒体数据逻辑框454(图6)。在其它个例中,装置直接将样本存储于文件中,而不将样本囊封于媒体数据逻辑框中。样本以“组块”形式群集在所述文件中。此外,装置可在用于轨的轨逻辑框中产生样本表逻辑框。样本表逻辑框包含组块偏移逻辑框(例如,具有识别符‘stco’或‘co64’的逻辑框)。用于轨的组块偏移逻辑框(即,用于轨的轨逻辑框中的样本表逻辑框中的组块偏移逻辑框)包含指定含有轨的样本的组块的起始位置及/或偏移的数据。因此,通过产生指示含有NAL单元(例如第一EOS NAL单元)的组块的组块偏移逻辑框,文件产生装置34可使NAL单元包含在轨中。组块偏移逻辑框可指定组块相对于文件的开头的起始位置及/或偏移。轨的样本表逻辑框也可包含样本到组块逻辑框(例如,具有识别符‘stsc’的逻辑框)。装置可使用样本到组块逻辑框来建构指示哪些样本在哪些组块中的表。举例来说,表可指示样本20到样本30在组块2中。此外,轨的样本表逻辑框包含样本大小逻辑框(例如,具有识别符‘stsz’或‘stz2’)的逻辑框。如ISOBMFF 14996-12的§8.5.3.1中所描述,装置可使用样本大小逻辑框中的信息来产生指示轨中的样本的大小的表。此外,每一样本可包含指示样本中的每一NAL单元的大小的数据。
此外,在图9A的实例中,计算装置可使CVS的第二EOS NAL单元包含在文件的第二轨中(602)。在图9A的实例中,第二EOS NAL单元在CVS的第二存取单元中。第二EOS NAL单元不同于第一EOS NAL单元。换句话说,第一EOS NAL单元及第二EOS NAL单元为分开的EOSNAL单元。在此实例中,第一存取单元及第二存取单元可属于不同时间子层。如果存取单元中的经译码图片属于时间子层,那么存取单元可属于所述时间子层。第一存取单元及第二存取单元与不同解码时间相关联。
在一个实例中,计算装置可(例如,从视频编码器20)接收位流。在此实例中,位流包含第一EOS NAL单元,但不包含第二EOS NAL单元。因此,在此实例中,在接收到位流之后,计算装置可产生第二EOS NAL单元且可使第二EOS NAL单元包含在第二轨中。
为使第二EOS NAL单元包含在第二轨中,装置可在第二轨的轨逻辑框中产生样本表逻辑框,其指定含有第二EOS NAL单元的样本逻辑框。
在一些实例中,第一轨包含CVS的位流的第一组存取单元,且第一存取单元为按第一组存取单元的次序的最后一个存取单元。此外,第二轨包含CVS的位流的第二组存取单元,且第二存取单元为按第二组存取单元的次序的最后一个存取单元。因此,在此实例中,对于在位流(HEVC或L-HEVC位流)的同一CVS内且属于存储于多轨中的不同子层的AU来说,允许在超过一个轨(例如,轨中的每一者)中存在EOS NAL单元,作为在此轨中的同一CVS内的最后一个AU的部分。
图9B为说明根据本发明的一或多种技术的用于处理在多轨中包含EOS NAL单元的文件的实例操作的流程图。在图9B的实例中,计算装置(例如,目的地装置14(图1)、文件剖析单元177(图4)或另一计算装置)接收包括第一轨及第二轨的文件(620)。在一些实例中,计算装置的网络接口、磁盘机、处理器或另一组件接收文件。第一轨包含位流(例如,HEVC或L-HEVC位流)的CVS的第一存取单元。第二轨包含CVS的第二存取单元。在图9B的实例中,第一存取单元包含第一EOS NAL单元且第二存取单元包含第二EOS NAL单元。第二EOS NAL单元不同于第一EOS NAL单元。换句话说,第一EOS NAL单元及第二EOS NAL单元为分开的EOSNAL单元。在此实例中,第一存取单元及第二存取单元可属于不同时间子层。第一存取单元及第二存取单元与不同解码时间相关联。
如图9B的实例中所示,计算装置可基于与第一EOS NAL单元相关联的时间及与第二EOS NAL单元相关联的时间的比较来输出第一EOS NAL单元并可丢弃第二EOS NAL单元(622)。在一些实例中,计算装置的网络接口、磁盘机、处理器或另一组件输出第一EOS NAL单元。在一些实例中,基于确定第一EOS NAL单元是与大于(即,晚于)与第二EOS NAL单元相关联的解码时间的解码时间相关联,计算装置输出第一EOS NAL单元作为由文件中的NAL单元重构的位流的部分。此外,在一些实例中,基于确定第一EOS NAL单元是与大于(即,晚于)与第二EOS NAL单元相关联的解码时间的解码时间相关联,计算装置丢弃第二EOS NAL单元。因此,在此实例中,对于在同一位流内且属于存储于多轨中的不同子层的AU来说,当超过一个轨含有EOS NAL单元时,将EOS NAL单元中的仅一者保持在最终经重构位流中并丢弃其它EOS NAL单元。计算装置可将所保持的EOS NAL单元放置在最终经重构位流中除EOBNAL单元(如果存在)之外的所有NAL单元之后。在此实例中,与EOS NAL单元相关联的解码时间可为EOS NAL单元所属的存取单元的解码时间。
在各种实例中,计算装置可执行各种额外动作。举例来说,计算装置可将第一轨中的CVS的NAL单元输出到视频解码器(例如视频解码器30),并将第二轨中的CVS的NAL单元输出到所述视频解码器。视频解码器可基于第一轨或第二轨中的至少一者中的CVS的NAL单元来解码CVS的图片。在一些实例中,计算装置可基于包含第一EOS NAL单元的第一存取单元来确定第一轨中不存在CVS的后续NAL单元。举例来说,第一EOS NAL单元的存在可向计算装置指示不存在存储于第一轨中的CVS的后续存取单元。此外,计算装置可基于包含第二EOSNAL单元的第二存取单元来确定第二轨中不存在CVS的后续存取单元。举例来说,第二EOSNAL单元的存在可向计算装置指示不存在存储于第二轨中的CVS的后续存取单元。
图10A为说明根据本发明的一或多种技术的用于产生在多轨中包含EOB NAL单元的文件的实例操作的流程图。在图10A的实例中,计算装置(例如,源装置12(图1)、文件产生装置34(图1)、后处理实体127(图3)或另一计算装置)使位流的CVS的第一EOB NAL单元包含在文件的第一轨中(650)。在图10A的实例中,第一EOB NAL单元在CVS的第一存取单元中。为使第一EOB NAL单元包含在第一轨中,装置可在第一轨的轨逻辑框中产生样本表逻辑框,其指定含有第一EOB NAL单元的样本逻辑框。
此外,在图10A的实例中,计算装置使位流的CVS的第二EOB NAL单元包含在文件的第二轨中(652)。第二EOB NAL单元在CVS的第二存取单元中。第二EOB NAL单元不同于第一EOB NAL单元。换句话说,第一EOB NAL单元及第二EOB NAL单元为分开的EOB NAL单元。第一存取单元及第二存取单元与不同解码时间相关联。在此实例中,第一存取单元及第二存取单元属于不同时间子层。为使第一EOB NAL单元包含在第一轨中,装置可在第一轨的轨逻辑框中产生样本表逻辑框,其指定含有第一EOB NAL单元的样本逻辑框。
在一个实例中,计算装置可(例如,从视频编码器20)接收位流。在此实例中,位流包含第一EOB NAL单元,但不包含第二EOB NAL单元。因此,在此实例中,在接收到位流之后,计算装置可产生第二EOB NAL单元且可使第二EOB NAL单元包含在第二轨中。
图10B为说明根据本发明的一或多种技术的用于处理在多轨中包含EOB NAL单元的文件的实例操作的流程图。在图10B的实例中,计算装置(例如,目的地装置14(图1)、文件剖析单元177(图4)或另一计算装置)可接收包括第一轨及第二轨的文件(670)。在一些实例中,计算装置的网络接口、磁盘机、处理器或另一组件接收文件。第一轨包含位流的CVS的第一存取单元,且第二轨包含CVS的第二存取单元。在图10B的实例中,第一存取单元包含第一EOB NAL单元,且第二存取单元包含第二EOB NAL单元。第二EOB NAL单元不同于第一EOBNAL单元。换句话说,第一EOB NAL单元及第二EOB NAL单元为分开的EOB NAL单元。在此实例中,第一存取单元及第二存取单元可属于不同时间子层。第一存取单元及第二存取单元与不同解码时间相关联。
此外,在图10B的实例中,计算装置输出第一EOB NAL单元(例如,输出到例如视频解码器30的视频解码器),并丢弃第二EOB NAL单元(672)。在一些实例中,计算装置的网络接口、磁盘机、处理器或另一组件输出第一EOB NAL单元。在一些实例中,计算装置输出第一EOB NAL单元作为由文件中的NAL单元重构的位流的部分。在一些实例中,基于确定第一存取单元是与大于(即,晚于)与第二存取单元相关联的解码时间的解码时间相关联,计算装置丢弃第二EOB NAL单元。因此,在此实例中,对于在位流的同一CVS内且属于存储于多轨中的不同子层的存取单元来说,当超过一个轨含有EOB NAL单元时,将EOB NAL单元中的仅一者保持在最终经重构位流中并丢弃其它EOB NAL单元。计算装置可将所保持的EOB NAL单元放置在最终经重构位流中的最后一个存取单元的末尾处。在此实例中,与EOB NAL单元相关联的解码时间可为EOB NAL单元所属的存取单元的解码时间。
在各种实例中,计算装置可执行各种额外动作。举例来说,计算装置可将第一轨中的CVS的NAL单元输出到视频解码器(例如视频解码器30),并可将第二轨中的CVS的NAL单元输出到所述视频解码器。视频解码器可基于第一轨或第二轨中的至少一者中的CVS的NAL单元来解码CVS的图片。在一些实例中,计算装置可基于包含第一EOB NAL单元的第一存取单元来确定不存在存储于第一轨中的位流的后续NAL单元。此外,计算装置可基于包含第二EOB NAL单元的第二存取单元来确定不存在存储于第二轨中的位流的后续NAL单元。
在一或多个实例中,所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件实施,那么所述功能可作为一或多个指令或程序代码而存储在计算机可读媒体上或经由计算机可读媒体发射,且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于例如数据存储媒体的有形媒体,或包含促进(例如,根据通信协议)将计算机程序从一处传送到另一处的任何媒体的通信媒体。以此方式,计算机可读媒体大体上可对应于(1)非暂时性的有形计算机可读存储媒体,或(2)例如信号或载波的通信媒体。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中所描述的技术的指令、程序代码及/或数据结构的任何可用媒体。计算机程式产品可包含计算机可读媒体。
借助于实例而非限制,此计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可用于存储呈指令或数据结构形式的所要程序代码且可由计算机存取的任何其它媒体。又,任何连接被恰当地称为计算机可读媒体。举例来说,如果使用同轴缆线、光缆、双绞线、数字订户线(DSL)或无线技术(例如红外线、无线电及微波)从网站、服务器或其它远程源发射指令,那么同轴缆线、光缆、双绞线、DSL或无线技术(例如红外线、无线电及微波)包含于媒体的定义中。然而,应理解,计算机可读存储媒体及数据存储媒体不包含连接、载波、信号或其它暂时性媒体,而是实际上有关非暂时性有形存储媒体。如本文中所使用,磁盘及光盘包含紧密光盘(CD)、激光光盘、光学光盘、数字影音光盘(DVD)、软盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘使用激光以光学方式再现数据。以上各者的组合也应包含于计算机可读媒体的范围内。
可由例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路的一或多个处理器来执行指令。因此,如本文中所使用的术语“处理器”可指上述结构或适合于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可提供于经配置用于编码及解码的专用硬件及/或软件模块内,或并入组合式编码解码器中。此外,所述技术可完全实施于一或多个电路或逻辑元件中。
本发明的技术可在广泛多种装置或设备中实施,所述装置或设备包含无线手持机、集成电路(IC)或一组IC(例如,芯片组)。在本发明中描述各种组件、模块或单元以强调经配置以执行所揭示技术的装置的功能方面,但未必要求由不同硬件单元来实现。确切来说,如上文所描述,可将各种单元组合于编码解码器硬件单元中,或通过互操作性硬件单元(包含如上文所描述的一或多个处理器)的集合结合合适的软件及/或固件来提供所述单元。
已描述各种实例。此些及其它实例是在以下权利要求书的范围内。

Claims (40)

1.一种产生用于存储视频内容的文件的方法,所述方法包括:
使位流的经译码视频序列的第一序列结束EOS网络抽象层NAL单元包含在所述文件的第一轨中,所述第一EOS NAL单元在所述经译码视频序列的第一存取单元中;及
使所述经译码视频序列的第二EOS NAL单元包含在所述文件的第二轨中,所述第二EOSNAL单元在所述经译码视频序列的第二存取单元中,所述第二EOS NAL单元不同于所述第一EOS NAL单元,所述第一存取单元及所述第二存取单元属于不同时间子层。
2.根据权利要求1所述的方法,其中所述位流为高效率视频译码HEVC位流或分层式HEVC位流。
3.根据权利要求1所述的方法,其中:
所述第一轨包含用于所述经译码视频序列的所述位流的第一组存取单元,
所述第一存取单元为按所述第一组存取单元的次序的最后一个存取单元,
所述第二轨包含用于所述经译码视频序列的所述位流的第二组存取单元,且
所述第二存取单元为按所述第二组存取单元的次序的最后一个存取单元。
4.一种处理用于存储视频内容的文件的方法,所述方法包括:
接收包括第一轨及第二轨的文件,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含所述经译码视频序列的第二存取单元,所述第一存取单元包含第一序列结束EOS网络抽象层NAL单元,所述第二存取单元包含第二EOS NAL单元,所述第二EOSNAL单元不同于所述第一EOS NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层;及
基于与所述第一EOS NAL单元相关联的时间及与所述第二EOS NAL单元相关的时间的比较来输出所述第一EOS NAL单元,并丢弃所述第二EOS NAL单元。
5.根据权利要求4所述的方法,其中所述位流为高效率视频译码HEVC位流或分层式HEVC位流。
6.根据权利要求4所述的方法,其中:
所述第一轨包含用于所述经译码视频序列的所述位流的第一组存取单元,
所述第一存取单元为按所述第一组存取单元的次序的最后一个存取单元,
所述第二轨包含用于所述经译码视频序列的所述位流的第二组存取单元,且
所述第二存取单元为按所述第二组存取单元的次序的最后一个存取单元。
7.根据权利要求4所述的方法,其进一步包括:
将所述第一轨中的所述经译码视频序列的NAL单元输出到视频解码器;及
将所述第二轨中的所述经译码视频序列的NAL单元输出到所述视频解码器。
8.根据权利要求7所述的方法,其进一步包括基于所述第一轨或所述第二轨中的至少一者中的所述经译码视频序列的所述NAL单元来解码所述经译码视频序列的图片。
9.一种产生用于存储视频内容的文件的方法,所述方法包括:
使位流的经译码视频序列的第一位流结束EOB网络抽象层NAL单元包含在所述文件的第一轨中,所述第一EOB NAL单元在所述经译码视频序列的第一存取单元中;及
使所述经译码视频序列的第二EOB NAL单元包含在所述文件的第二轨中,所述第二EOBNAL单元在所述经译码视频序列的第二存取单元中,所述第二EOB NAL单元不同于所述第一EOB NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层。
10.根据权利要求9所述的方法,其中所述位流为高效率视频译码HEVC位流或分层式HEVC位流。
11.根据权利要求9所述的方法,其中:
所述第一轨包含用于所述经译码视频序列的所述位流的第一组存取单元,
所述第一存取单元为按所述第一组存取单元的次序的最后一个存取单元,
所述第二轨包含用于所述经译码视频序列的所述位流的第二组存取单元,且
所述第二存取单元为按所述第二组存取单元的次序的最后一个存取单元。
12.一种处理用于存储视频内容的文件的方法,所述方法包括:
接收所述文件,所述文件包括第一轨及第二轨,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含所述经译码视频序列的第二存取单元,所述第一存取单元包含第一位流结束EOB网络抽象层NAL单元,所述第二存取单元包含第二EOB NAL单元,所述第一存取单元及所述第二存取单元属于不同时间子层;及
输出所述第一EOB NAL单元,并丢弃所述第二EOB NAL单元。
13.根据权利要求12所述的方法,其中所述位流为高效率视频译码HEVC位流或分层式HEVC位流。
14.根据权利要求12所述的方法,其中:
所述第一轨包含所述位流的第一组存取单元,
所述第一存取单元为按所述第一组存取单元的次序的最后一个存取单元,
所述第二轨包含所述位流的第二组存取单元,且
所述第二存取单元为按所述第二组存取单元的次序的最后一个存取单元。
15.根据权利要求12所述的方法,其进一步包括:
将所述第一轨中的所述经译码视频序列的NAL单元输出到视频解码器;及
将所述第二轨中的所述经译码视频序列的NAL单元输出到所述视频解码器。
16.根据权利要求15所述的方法,其进一步包括基于所述第一轨或所述第二轨中的至少一者中的所述经译码视频序列的所述NAL单元来解码所述经译码视频序列的图片。
17.一种产生用于存储视频内容的文件的装置,所述装置包括:
存储器,其经配置以存储用于存储视频内容的所述文件;及
一或多个处理器,其经配置以:
使位流的经译码视频序列的第一序列结束EOS网络抽象层NAL单元包含在所述文件的第一轨中,所述第一EOS NAL单元在所述经译码视频序列的第一存取单元中;及
使所述经译码视频序列的第二EOS NAL单元包含在所述文件的第二轨中,所述第二EOSNAL单元在所述经译码视频序列的第二存取单元中,所述第二EOS NAL单元不同于所述第一EOS NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层。
18.根据权利要求17所述的装置,其中所述位流为高效率视频译码HEVC位流或分层式HEVC位流。
19.根据权利要求17所述的装置,其中:
所述第一轨包含用于所述经译码视频序列的所述位流的第一组存取单元,
所述第一存取单元为按所述第一组存取单元的次序的最后一个存取单元,
所述第二轨包含用于所述经译码视频序列的所述位流的第二组存取单元,且
所述第二存取单元为按所述第二组存取单元的次序的最后一个存取单元。
20.一种用于处理用于存储视频内容的文件的装置,所述装置包括:
存储器,其经配置以存储用于存储视频内容的所述文件;及
一或多个处理器,其经配置以:
接收包括第一轨及第二轨的文件,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含所述经译码视频序列的第二存取单元,所述第一存取单元包含第一序列结束EOS网络抽象层NAL单元,所述第二存取单元包含第二EOS NAL单元,所述第二EOSNAL单元不同于所述第一EOS NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层;及
基于与所述第一EOS NAL单元相关的时间及与所述第二EOS NAL单元相关的时间的比较来输出所述第一EOS NAL单元,并丢弃所述第二EOS NAL单元。
21.根据权利要求20所述的装置,其中所述位流为高效率视频译码HEVC位流或分层式HEVC位流。
22.根据权利要求20所述的装置,其中:
所述第一轨包含用于所述经译码视频序列的所述位流的第一组存取单元,
所述第一存取单元为按所述第一组存取单元的次序的最后一个存取单元,
所述第二轨包含用于所述经译码视频序列的所述位流的第二组存取单元,且
所述第二存取单元为按所述第二组存取单元的次序的最后一个存取单元。
23.根据权利要求20所述的装置,其中所述一或多个处理器经进一步配置以:
将所述第一轨中的所述经译码视频序列的NAL单元输出到视频解码器;及
将所述第二轨中的所述经译码视频序列的NAL单元输出到所述视频解码器。
24.根据权利要求23所述的装置,其中所述一或多个处理器经进一步配置以基于所述第一轨或所述第二轨中的至少一者中的所述经译码视频序列的所述NAL单元来解码所述经译码视频序列的图片。
25.一种产生用于存储视频内容的文件的装置,所述装置包括:
存储器,其经配置以存储用于存储视频内容的所述文件;及
一或多个处理器,其经配置以:
使位流的经译码视频序列的第一位流结束EOB网络抽象层NAL单元包含在所述文件的第一轨中,所述第一EOB NAL单元在所述CVS的第一存取单元中;及
使所述经译码视频序列的第二EOB NAL单元包含在所述文件的第二轨中,所述第二EOBNAL单元在所述经译码视频序列的第二存取单元中,所述第二EOB NAL单元不同于所述第一EOB NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层。
26.根据权利要求25所述的装置,其中所述位流为高效率视频译码HEVC位流或分层式HEVC位流。
27.根据权利要求25所述的装置,其中:
所述第一轨包含用于所述经译码视频序列的所述位流的第一组存取单元,
所述第一存取单元为按所述第一组存取单元的次序的最后一个存取单元,
所述第二轨包含用于所述经译码视频序列的所述位流的第二组存取单元,且
所述第二存取单元为按所述第二组存取单元的次序的最后一个存取单元。
28.一种用于处理用于存储视频内容的文件的装置,所述装置包括:
存储器,其经配置以存储用于存储视频内容的所述文件;及
一或多个处理器,其经配置以:
接收包括第一轨及第二轨的文件,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含所述经译码视频序列的第二存取单元,所述第一存取单元包含第一位流结束EOB网络抽象层NAL单元,所述第二存取单元包含第二EOB NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层;
输出所述第一EOB NAL单元并丢弃所述第二EOB NAL单元。
29.根据权利要求28所述的装置,其中所述位流为高效率视频译码HEVC位流或分层式HEVC位流。
30.根据权利要求28所述的装置,其中:
所述第一轨包含所述位流的第一组存取单元,
所述第一存取单元为按所述第一组存取单元的次序的最后一个存取单元,
所述第二轨包含所述位流的第二组存取单元,且
所述第二存取单元为按所述第二组存取单元的次序的最后一个存取单元。
31.根据权利要求28所述的装置,其中所述一或多个处理器经进一步配置以:
将所述第一轨中的所述经译码视频序列的NAL单元输出到视频解码器;及
将所述第二轨中的所述经译码视频序列的NAL单元输出到所述视频解码器。
32.根据权利要求31所述的装置,其中所述一或多个处理器经进一步配置以基于所述第一轨或所述第二轨中的至少一者中的所述经译码视频序列的所述NAL单元来解码所述经译码视频序列的图片。
33.一种产生用于存储视频内容的文件的装置,所述装置包括:
用于使位流的经译码视频序列的第一序列结束EOS网络抽象层NAL单元包含在所述文件的第一轨中的装置,所述第一EOS NAL单元在所述经译码视频序列的第一存取单元中;及
用于使所述经译码视频序列的第二EOS NAL单元包含在所述文件的第二轨中的装置,所述第二EOS NAL单元在所述经译码视频序列的第二存取单元中,所述第二EOS NAL单元不同于所述第一EOS NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层。
34.一种用于处理用于存储视频内容的文件的装置,所述装置包括:
用于接收包括第一轨及第二轨的文件的装置,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含所述经译码视频序列的第二存取单元,所述第一存取单元包含第一序列结束EOS网络抽象层NAL单元,所述第二存取单元包含第二EOS NAL单元,所述第二EOS NAL单元不同于所述第一EOS NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层;及
用于基于与所述第一EOS NAL单元相关联的时间及与所述第二EOS NAL单元相关的时间的比较来输出所述第一EOS NAL单元并丢弃所述第二EOS NAL单元的装置。
35.一种产生用于存储视频内容的文件的装置,所述装置包括:
用于使位流的经译码视频序列的第一位流结束EOB网络抽象层NAL单元包含在所述文件的第一轨中的装置,所述第一EOB NAL单元在所述经译码视频序列的第一存取单元中;及
用于使所述经译码视频序列的第二EOB NAL单元包含在所述文件的第二轨中的装置,所述第二EOB NAL单元在所述经译码视频序列的第二存取单元中,所述第二EOB NAL单元不同于所述第一EOB NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层。
36.一种用于处理存储视频内容的文件的装置,所述装置包括:
用于接收包括第一轨及第二轨的文件的装置,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含所述经译码视频序列的第二存取单元,所述第一存取单元包含第一位流结束EOB网络抽象层NAL单元,所述第二存取单元包含第二EOB NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层;及
用于输出所述第一EOB NAL单元并丢弃所述第二EOB NAL单元的装置。
37.一种上面存储有指令的计算机可读存储媒体,所述指令在经执行时使计算装置:
使位流的经译码视频序列的第一序列结束EOS网络抽象层NAL单元包含在所述文件的第一轨中,所述第一EOS NAL单元在所述经译码视频序列的第一存取单元中;及
使所述经译码视频序列的第二EOS NAL单元包含在所述文件的第二轨中,所述第二EOSNAL单元在所述经译码视频序列的第二存取单元中,所述第二EOS NAL单元不同于所述第一EOS NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层。
38.一种上面存储有指令的计算机可读存储媒体,所述指令在经执行时使用于处理用于存储视频内容的文件的计算装置:
接收所述文件,所述文件包括第一轨及第二轨,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含所述经译码视频序列的第二存取单元,所述第一存取单元包含第一序列结束EOS网络抽象层NAL单元,所述第二存取单元包含第二EOS NAL单元,所述第二EOS NAL单元不同于所述第一EOS NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层;及
基于与所述第一EOS NAL单元相关的时间及与所述第二EOS NAL单元相关的时间的比较来输出所述第一EOS NAL单元,并丢弃所述第二EOS NAL单元。
39.一种上面存储有指令的计算机可读存储媒体,所述指令在经执行时使用于产生用于存储视频内容的文件的计算装置:
使位流的经译码视频序列的第一位流结束EOB网络抽象层NAL单元包含在所述文件的第一轨中,所述第一EOB NAL单元在所述经译码视频序列的第一存取单元中;及
使所述经译码视频序列的第二EOB NAL单元包含在所述文件的第二轨中,所述第二EOBNAL单元在所述经译码视频序列的第二存取单元中,所述第二EOB NAL单元不同于所述第一EOB NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层。
40.一种上面存储有指令的计算机可读存储媒体,所述指令在经执行时使用于处理用于存储视频内容的文件的计算装置:
接收所述文件,所述文件包括第一轨及第二轨,所述第一轨包含位流的经译码视频序列的第一存取单元,所述第二轨包含所述经译码视频序列的第二存取单元,所述第一存取单元包含第一位流结束EOB网络抽象层NAL单元,所述第二存取单元包含第二EOB NAL单元,所述第二EOS NAL单元不同于所述第一EOS NAL单元,且所述第一存取单元及所述第二存取单元属于不同时间子层;及
输出所述第一EOB NAL单元并丢弃所述第二EOB NAL单元。
CN201780030887.0A 2016-05-23 2017-05-23 产生、处理用于存储视频内容的文件的方法、装置及存储介质 Active CN109155877B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662340437P 2016-05-23 2016-05-23
US62/340,437 2016-05-23
US15/601,233 2017-05-22
US15/601,233 US10623755B2 (en) 2016-05-23 2017-05-22 End of sequence and end of bitstream NAL units in separate file tracks
PCT/US2017/033925 WO2017205325A1 (en) 2016-05-23 2017-05-23 End of sequence and end of bitstream nal units in separate file tracks

Publications (2)

Publication Number Publication Date
CN109155877A true CN109155877A (zh) 2019-01-04
CN109155877B CN109155877B (zh) 2021-09-21

Family

ID=60330621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780030887.0A Active CN109155877B (zh) 2016-05-23 2017-05-23 产生、处理用于存储视频内容的文件的方法、装置及存储介质

Country Status (9)

Country Link
US (2) US10623755B2 (zh)
EP (1) EP3466094A1 (zh)
JP (1) JP6960945B2 (zh)
KR (1) KR102604891B1 (zh)
CN (1) CN109155877B (zh)
BR (1) BR112018073877A2 (zh)
CA (1) CA3020519A1 (zh)
TW (1) TWI763669B (zh)
WO (1) WO2017205325A1 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10623755B2 (en) 2016-05-23 2020-04-14 Qualcomm Incorporated End of sequence and end of bitstream NAL units in separate file tracks
GB2560921B (en) 2017-03-27 2020-04-08 Canon Kk Method and apparatus for encoding media data comprising generated content
US10735770B2 (en) 2018-09-13 2020-08-04 Tencent America LLC Method and device using high layer syntax architecture for coding and decoding
US10999590B2 (en) * 2018-12-28 2021-05-04 Tencent America LLC Method for identification of random access point and picture types
CN112118453A (zh) * 2019-06-20 2020-12-22 腾讯美国有限责任公司 视频解码方法和设备、计算机设备以及存储介质
EP3987792A4 (en) * 2019-06-21 2022-09-28 Telefonaktiebolaget Lm Ericsson (Publ) VIDEO CODING LAYER RATE INCREASED INDICATION
KR20210080967A (ko) * 2019-12-23 2021-07-01 에스케이하이닉스 주식회사 컨트롤러 및 컨트롤러의 동작방법
US11343524B2 (en) * 2019-12-27 2022-05-24 Tencent America LLC Method for adaptation parameter set reference and constraints in coded video stream
US11792432B2 (en) * 2020-02-24 2023-10-17 Tencent America LLC Techniques for signaling and identifying access unit boundaries
CN111541901B (zh) * 2020-05-11 2022-05-27 网易(杭州)网络有限公司 图片解码的方法和装置
CN115668933A (zh) 2020-05-22 2023-01-31 字节跳动有限公司 编解码视频中nal单元的排序
CN115918067A (zh) 2020-06-12 2023-04-04 字节跳动有限公司 多层视频编解码的图片标头约束
US11750815B2 (en) 2020-09-17 2023-09-05 Lemon, Inc. Versatile video coding track coding
US11611752B2 (en) 2020-10-07 2023-03-21 Lemon Inc. Adaptation parameter set storage in video coding
JP2024513512A (ja) * 2021-04-19 2024-03-25 エルジー エレクトロニクス インコーポレイティド Eosサンプルグループに基づくメディアファイル生成/受信方法及び装置、並びにメディアファイル伝送方法
JP2024515091A (ja) * 2021-04-19 2024-04-04 エルジー エレクトロニクス インコーポレイティド メディアファイル処理方法及びその装置
GB2618298A (en) * 2021-09-21 2023-11-08 V Nova Int Ltd Low complexity enhancement video coding with temporal scalability

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007004007A2 (en) * 2005-06-30 2007-01-11 Nokia Corporation Methods, pieces of apparatus and computer program products for termination of transport session
US20080223930A1 (en) * 2006-11-08 2008-09-18 Sargent And Greenleaf, Inc. Cash tracking system
CN102550034A (zh) * 2009-09-22 2012-07-04 高通股份有限公司 使用块划分或请求控制以获得改善的客户端侧处置的增强型块请求流送
CN103081488A (zh) * 2010-06-29 2013-05-01 高通股份有限公司 发信号通知用于特技模式视频表示的视频样本
JP2014165736A (ja) * 2013-02-26 2014-09-08 Ntt Electornics Corp デコーダ装置
US20150110473A1 (en) * 2013-10-23 2015-04-23 Qualcomm Incorporated Multi-layer video file format designs
CN104662915A (zh) * 2012-09-24 2015-05-27 高通股份有限公司 扩展解码单元定义
CN104704829A (zh) * 2012-10-04 2015-06-10 高通股份有限公司 用于视频数据的文件格式
CN104813671A (zh) * 2012-09-24 2015-07-29 高通股份有限公司 视频译码中的位流性质
CN104904208A (zh) * 2013-01-07 2015-09-09 高通股份有限公司 用于视频译码中的随机存取的视频缓冲操作
WO2015142725A1 (en) * 2014-03-18 2015-09-24 Qualcomm Incorporated Derivation of end of sequence nal unit information for multi-layer bitstreams
CN105052153A (zh) * 2013-04-08 2015-11-11 高通股份有限公司 用于视频信息的可缩放译码的装置和方法
CN105122798A (zh) * 2013-04-17 2015-12-02 高通股份有限公司 多层视频译码中的交叉层图片类型对准的指示
CN105187850A (zh) * 2009-10-28 2015-12-23 高通股份有限公司 流式传输经编码视频数据
CN105453569A (zh) * 2013-07-10 2016-03-30 夏普株式会社 缩放列表信号发送和参数集激活
CN105519119A (zh) * 2013-10-10 2016-04-20 夏普株式会社 图像解码装置

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3513148B1 (ja) * 2002-10-11 2004-03-31 株式会社エヌ・ティ・ティ・ドコモ 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、動画像符号化プログラム、及び動画像復号プログラム
KR100825743B1 (ko) * 2005-11-15 2008-04-29 한국전자통신연구원 실시간으로 비트스트림의 공간 해상도를 변환할 수 있는스케일러블 비디오 코딩 방법 및 그 방법을 이용한 코덱
TWI473016B (zh) * 2008-07-16 2015-02-11 Sisvel Internat S A 用以處理多視圖視訊位元串流之方法與裝置及電腦可讀媒體
US8514942B2 (en) * 2008-12-31 2013-08-20 Entropic Communications, Inc. Low-resolution video coding content extraction
WO2010123324A2 (ko) * 2009-04-24 2010-10-28 엘지전자 주식회사 영상표시장치 및 그 동작방법
US9485546B2 (en) 2010-06-29 2016-11-01 Qualcomm Incorporated Signaling video samples for trick mode video representations
US9451284B2 (en) * 2011-10-10 2016-09-20 Qualcomm Incorporated Efficient signaling of reference picture sets
WO2013106521A2 (en) * 2012-01-10 2013-07-18 Vidyo, Inc. Techniques for layered video encoding and decoding
US9414085B2 (en) * 2012-01-20 2016-08-09 Telefonaktiebolaget Lm Ericsson (Publ) Sub-bitstream extraction
US9565431B2 (en) * 2012-04-04 2017-02-07 Qualcomm Incorporated Low-delay video buffering in video coding
RU2612577C2 (ru) * 2012-07-02 2017-03-09 Нокиа Текнолоджиз Ой Способ и устройство для кодирования видеоинформации
US9584825B2 (en) * 2012-09-27 2017-02-28 Qualcomm Incorporated Long-term reference picture signaling in video coding
KR101729425B1 (ko) * 2012-09-28 2017-04-21 텔레폰악티에볼라겟엘엠에릭슨(펍) 비디오 시퀀스의 픽처의 디코딩 및 인코딩
US9706199B2 (en) * 2012-09-28 2017-07-11 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
US9900609B2 (en) * 2013-01-04 2018-02-20 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
US20140218473A1 (en) * 2013-01-07 2014-08-07 Nokia Corporation Method and apparatus for video coding and decoding
US9596486B2 (en) * 2013-04-05 2017-03-14 Qualcomm Incorporated IRAP access units and bitstream switching and splicing
WO2014162750A1 (en) * 2013-04-05 2014-10-09 Sharp Kabushiki Kaisha Random access point pictures
US9591321B2 (en) * 2013-04-07 2017-03-07 Dolby International Ab Signaling change in output layer sets
US10003815B2 (en) * 2013-06-03 2018-06-19 Qualcomm Incorporated Hypothetical reference decoder model and conformance for cross-layer random access skipped pictures
WO2015009693A1 (en) * 2013-07-15 2015-01-22 Sony Corporation Layer based hrd buffer management for scalable hevc
WO2015015058A1 (en) * 2013-07-31 2015-02-05 Nokia Corporation Method and apparatus for video coding and decoding
JP5774652B2 (ja) * 2013-08-27 2015-09-09 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
WO2015052939A1 (en) * 2013-10-10 2015-04-16 Sharp Kabushiki Kaisha Alignment of picture order count
KR101869882B1 (ko) * 2013-10-11 2018-06-25 브이아이디 스케일, 인크. Hevc 확장을 위한 하이 레벨 구문
HUE032227T2 (en) * 2013-10-14 2017-09-28 ERICSSON TELEFON AB L M (publ) Scaling an image sequence in scalable video
WO2015056179A1 (en) * 2013-10-15 2015-04-23 Nokia Technologies Oy Video encoding and decoding using syntax element
WO2015113644A1 (en) * 2014-02-03 2015-08-06 Telefonaktiebolaget L M Ericsson (Publ) Methods and apparatus for naming video content chunks
US20150264404A1 (en) * 2014-03-17 2015-09-17 Nokia Technologies Oy Method and apparatus for video coding and decoding
KR101560727B1 (ko) * 2014-04-07 2015-10-15 네이버 주식회사 멀티트랙 비디오 컨텐츠의 제공을 위한 멀티트랙 비디오 컨텐츠 서비스 방법 및 시스템
US9866852B2 (en) * 2014-06-20 2018-01-09 Qualcomm Incorporated Video coding using end of sequence network abstraction layer units
WO2016098056A1 (en) * 2014-12-18 2016-06-23 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
GB2534136A (en) * 2015-01-12 2016-07-20 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
US10148969B2 (en) * 2015-02-11 2018-12-04 Qualcomm Incorporated Of sample entry and operation point signalling in a layered video file format
US20170094288A1 (en) * 2015-09-25 2017-03-30 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
US9788022B2 (en) * 2015-09-29 2017-10-10 Verizon Patent And Licensing Inc. Systems and methods for optimizing digital advertisement insertion
US10349067B2 (en) * 2016-02-17 2019-07-09 Qualcomm Incorporated Handling of end of bitstream NAL units in L-HEVC file format and improvements to HEVC and L-HEVC tile tracks
US10623755B2 (en) 2016-05-23 2020-04-14 Qualcomm Incorporated End of sequence and end of bitstream NAL units in separate file tracks
EP3466079B1 (en) * 2016-05-24 2023-07-12 Nokia Technologies Oy Method and an apparatus and a computer program for encoding media content

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007004007A2 (en) * 2005-06-30 2007-01-11 Nokia Corporation Methods, pieces of apparatus and computer program products for termination of transport session
US20080223930A1 (en) * 2006-11-08 2008-09-18 Sargent And Greenleaf, Inc. Cash tracking system
CN102550034A (zh) * 2009-09-22 2012-07-04 高通股份有限公司 使用块划分或请求控制以获得改善的客户端侧处置的增强型块请求流送
CN105187850A (zh) * 2009-10-28 2015-12-23 高通股份有限公司 流式传输经编码视频数据
CN103081488A (zh) * 2010-06-29 2013-05-01 高通股份有限公司 发信号通知用于特技模式视频表示的视频样本
CN104662915A (zh) * 2012-09-24 2015-05-27 高通股份有限公司 扩展解码单元定义
CN104813671A (zh) * 2012-09-24 2015-07-29 高通股份有限公司 视频译码中的位流性质
CN104704829A (zh) * 2012-10-04 2015-06-10 高通股份有限公司 用于视频数据的文件格式
CN104904208A (zh) * 2013-01-07 2015-09-09 高通股份有限公司 用于视频译码中的随机存取的视频缓冲操作
JP2014165736A (ja) * 2013-02-26 2014-09-08 Ntt Electornics Corp デコーダ装置
CN105052153A (zh) * 2013-04-08 2015-11-11 高通股份有限公司 用于视频信息的可缩放译码的装置和方法
CN105122798A (zh) * 2013-04-17 2015-12-02 高通股份有限公司 多层视频译码中的交叉层图片类型对准的指示
CN105453569A (zh) * 2013-07-10 2016-03-30 夏普株式会社 缩放列表信号发送和参数集激活
CN105519119A (zh) * 2013-10-10 2016-04-20 夏普株式会社 图像解码装置
US20150110473A1 (en) * 2013-10-23 2015-04-23 Qualcomm Incorporated Multi-layer video file format designs
WO2015142725A1 (en) * 2014-03-18 2015-09-24 Qualcomm Incorporated Derivation of end of sequence nal unit information for multi-layer bitstreams

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
HENDRY ET AL: "COMMENTS ON ISO/IEC 14495-15", 《114.MPEG MEETING》 *
HENDRY ET AL: "HENDRY ET AL", 《114.MPEG MEETING》 *
MOTION PICTURE EXPERT GROUP OR IS0/IEC JTC1/SC29/WG11: "Draft Doc on ISO/IEC DIS 14496-15 4th edition", 《114.MPEG MEETING》 *
MOTION PICTURE EXPERT GROUP OR IS0/IEC JTC1/SC29/WG11: "Study of ISO/IEC DIS 14496-15 4th Edition", 《113.MPEG MEETING》 *

Also Published As

Publication number Publication date
US20170339421A1 (en) 2017-11-23
WO2017205325A1 (en) 2017-11-30
US11115669B2 (en) 2021-09-07
US20200154116A1 (en) 2020-05-14
CN109155877B (zh) 2021-09-21
BR112018073877A2 (pt) 2019-02-26
JP2019520739A (ja) 2019-07-18
US10623755B2 (en) 2020-04-14
TW201743607A (zh) 2017-12-16
TWI763669B (zh) 2022-05-11
KR102604891B1 (ko) 2023-11-21
KR20190013763A (ko) 2019-02-11
JP6960945B2 (ja) 2021-11-05
EP3466094A1 (en) 2019-04-10
CA3020519A1 (en) 2017-11-30

Similar Documents

Publication Publication Date Title
CN109155877A (zh) 分开的文件轨中的序列结束及位流结束网络抽象层(nal)单元
CN105659607B (zh) 多层视频文件格式设计
CN109155860A (zh) 以高效率视频译码及分层高效率视频译码文件格式的图块分组及样本的映射
CN104919801B (zh) 用于多视图译码加深度的纹理及深度视图的分轨存储
TWI676387B (zh) 多層位元流之檔案中之參數集信令
CN104641645B (zh) 用于视频译码的交错视频数据的指示的方法和设备
CN106170982B (zh) Hevc sei消息用于多层编解码器的一般使用
CN104969555B (zh) 一种编码或解码视频数据的方法及装置
CN106464924B (zh) 解码多层视频数据的方法、装置及计算机可读媒体
CN104904216B (zh) 在视频译码中具有时间可扩缩性支持的逐渐解码刷新
CN104704829B (zh) 处理视频数据的方法和装置以及计算机可读存储媒体
CN107211168A (zh) 在分层视频文件格式中的样本条目及操作点发信设计
CN104782131B (zh) 视频译码中的目标输出层
CN106464922A (zh) 多层视频译码中的符合性和不可操作性改进
TWI659319B (zh) 用於在檔案格式中樣本分組發信號之方法及器件
CN106464919A (zh) 视频译码中用于第0个输出层集合的简档、层次、层级
CN104221386A (zh) 译码视频及存储视频内容的方法
CN105612751B (zh) 用于基于子层参考预测相依性的层间rps导出的系统和方法
CN108702518A (zh) 在分层高效视频译码文件格式中的位流结尾网络抽象层单元的处理和对高效视频译码和分层高效视频译码频块播放轨的改善
CN110089126A (zh) 用于视频的改进式限制方案设计
CN110178379A (zh) 以文件格式用信号表示重要视频信息
CN110324637A (zh) 一种双向帧间预测方法及装置
CN108353174A (zh) 并行算术译码技术
CN107251559B (zh) 一种处理视频数据的方法及装置

Legal Events

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