CN107852532A - 用于视频编码的方法、装置和计算机程序 - Google Patents

用于视频编码的方法、装置和计算机程序 Download PDF

Info

Publication number
CN107852532A
CN107852532A CN201680045219.0A CN201680045219A CN107852532A CN 107852532 A CN107852532 A CN 107852532A CN 201680045219 A CN201680045219 A CN 201680045219A CN 107852532 A CN107852532 A CN 107852532A
Authority
CN
China
Prior art keywords
image
entities
container file
file
layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201680045219.0A
Other languages
English (en)
Other versions
CN107852532B (zh
Inventor
M·汉努卡塞拉
E·阿克苏
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.)
Nokia Technologies Oy
Original Assignee
Nokia Technologies Oy
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 Nokia Technologies Oy filed Critical Nokia Technologies Oy
Publication of CN107852532A publication Critical patent/CN107852532A/zh
Application granted granted Critical
Publication of CN107852532B publication Critical patent/CN107852532B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234345Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2355Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
    • 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
    • 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
    • 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
    • H04N21/4355Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reformatting operations of additional data, e.g. HTML pages on a television screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • 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

Landscapes

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

Abstract

公开了用于视频编码的各种方法,装置和计算机程序产品。在一些实施例中,一种方法包括将两个或更多个实体包括在容器文件中,其中每个实体是媒体项目或媒体轨道;并在容器文件或容器文件的描述之一中指示:所述两个或更多个实体能够按照它们出现在容器文件中的顺序来播放以实现渐进式细化。另外,提供了一种用于解析信息的方法,装置和计算机程序产品。

Description

用于视频编码的方法、装置和计算机程序
技术领域
本申请涉及图像容器文件的渐进式细化(progressive refinement)的指示。
背景技术
本部分旨在提供权利要求书中记载的本发明的背景或上下文。这里的描述可以包括可以被追求的构思,但不一定是先前已经构想或追求的构思。因此,除非在此另外指出,否则本部分中描述的内容不是本申请中的说明书和权利要求书的现有技术,并且不被承认为通过包括在本部分中而成为现有技术。
高效率图像文件格式(HEIF)是由运动图像专家组(MPEG)开发的用于存储图像和图像序列的标准。该标准促进了根据高效视频编码(HEVC)标准编码的数据的文件封装。HEIF包括构建在使用的ISO基础媒体文件格式(ISOBMFF)之上的功能。
发明内容
一些实施例提供了用于编码和解码视频信息的方法。
在具体实施方式中提供了本发明的示例的各个方面。
根据第一方面,提供了一种方法,包括:将两个或更多个实体包括到容器文件中,其中每个实体是媒体项目或媒体轨道;在容器文件或容器文件的描述之一中指示所述两个或更多个实体能够按照它们出现在所述容器文件中的顺序来播放以实现渐进式细化。
根据第二方面,提供了一种装置,所述装置包括至少一个处理器、包括计算机程序代码的存储器,所述存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使得所述装置至少执行如下:将两个或更多个实体包括到容器文件中,其中每个实体是媒体项目或媒体轨道;在容器文件或容器文件的描述之一中指示所述两个或更多个实体能够按照它们出现在容器文件中的顺序来播放以实现渐进式细化。
根据第三方面,提供了一种装置,其包括至少处理构件和存储器构件,以及还包括:用于将两个或更多个实体包括到容器文件中的构件,其中每个实体是媒体项目或媒体轨道;以及用于在容器文件或容器文件的描述之一中指示所述两个或更多个实体能够按照它们出现在容器文件中的顺序来播放以实现渐进式细化的构件。
根据第四方面,提供了一种体现在非临时性计算机可读介质上的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为当在至少一个处理器上执行时使得装置或系统:将两个或更多个实体包括到容器文件中,其中每个实体是媒体项目或媒体轨道;并在容器文件或容器文件的描述之一中指示两个或更多个实体能够按照它们出现在容器文件中的顺序来播放以实现渐进式细化。
根据一个实施例,在容器文件中指示,所述指示指示交替组包括所述两个或更多个实体。
根据一个实施例,在容器文件中指示,所述指示指示所述两个或更多个实体的一个或多个回放模式。
根据一个实施例,所述两个或更多个实体是以下中的一个:缩略图图像和各自的主图像;封面图像和定时图像序列;针对封面图像的缩略图图像,封面图像和定时图像序列;表示相同的原始图像,但具有不同的特征的图像;表示相同原始图像但具有不同特征的可缩放编码图像,表示相同内容的不同视角的图像。
根据一个实施例,所述方法还包括基于预定义的回放模式来选择所述两个或更多个实体,所述预定义回放模式是以下之一:封面内容回放模式;图像序列预览模式;图库细化模式(gallery refinement mode)。
根据第五方面,提供了一种方法,包括:从容器文件或容器文件的描述之一解析指示,所述指示指示所述两个或更多个实体能够按照它们出现在所述容器文件中的顺序被播放以实现渐进式细化,其中每个实体是媒体项目或媒体轨道;以及按照所述两个或更多个实体出现在容器文件中的顺序来播放所述两个或更多个实体的至少一个子集以实现渐进式细化。
根据第六方面,提供了一种装置,所述装置包括至少一个处理器、包括计算机程序代码的存储器,所述存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使得所述装置至少执行如下:从容器文件或容器文件的描述之一来解析指示,所述指示指示所述两个或更多个实体能够按照它们出现在所述容器文件中的顺序被播放以实现渐进式细化,其中每个实体是媒体项目或媒体轨道;按照所述两个或更多个实体出现在所述容器文件中的顺序来播放所述两个或更多个实体的至少一个子集,以实现渐进式细化。
根据第七方面,提供了一种装置,其包括至少处理构件和存储器构件,并且还包括:用于从容器文件或容器文件的描述之一来解析指示的装置,所述指示指示所述两个或更多个实体能够按照它们出现在所述容器文件中的顺序被播放以实现渐进式细化,其中每个实体是媒体项目或媒体轨道;以及用于按照它们在容器文件中出现的顺序来播放两个或更多个实体的至少一个子集以实现渐进式细化的装置。
根据第八方面,提供了一种体现在非临时性计算机可读介质上的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为当在至少一个处理器上执行时使得装置或系统:从容器文件或容器文件的描述之一来解析指示,所述指示指示两个或更多个实体能够按照它们出现在所述容器文件中的顺序被播放以实现渐进式细化,其中每个实体是媒体项目或媒体轨道;并按照所述两个或更多个实体在容器文件中出现的顺序来播放所述两个或更多个实体的至少一个子集以实现渐进式细化。
根据一个实施例,在容器文件中指示,所述指示指示交替组包括所述两个或更多个实体。
根据一个实施例,在容器文件中指示,所述指示指示所述两个或更多个实体的一个或多个回放模式。
根据一个实施例,所述两个或更多个实体是以下中的一个:缩略图图像和各自的主图像;封面图像和定时图像序列;封面图像的缩略图图像,封面图像和定时图像序列;表示相同的原始图像,但具有不同的特征的图像;表示相同原始图像但具有不同特征的可缩放编码图像,表示相同内容的不同视角的图像。
附图说明
为了更完整地理解本发明的示例性实施例,现在参照结合附图的以下描述,其中:
图1示出了根据一个实施例的视频编码系统的框图;
图2示出了根据一个实施例的装置的布局;
图3示出了根据示例实施例的包括多个装置、网络和网络元件的用于视频编码的布置;
图4示出了根据一个实施例的视频编码器的框图;
图5示出了根据一个实施例的视频解码器的框图;
图6示出了MediaDataBox内的编码数据的顺序;
图7示出了示例文件的回放操作;
图8是示出了方法的实施例的流程图;和
图9是示出了方法的另一个实施例的流程图。
具体实施方式
本申请涉及包括图像和图像序列数据的创建、传送和回放的视频相关业务。视频编解码器现在是许多消费者设备的组成部分,例如,高端智能手机,数码相机和电视机,因此可用于个体图像和图像序列的编码和解码,例如照片连拍。
图1和图2中示出了这种消费者设备的实施例。设备50是电子设备,例如无线通信系统移动终端或用户设备,或相机设备。装置50可以包括用于容纳和保护设备的壳体30。装置50还可以包括显示器32,例如液晶显示器或能够显示图像和/或视频的任何其他显示技术。装置50还可以包括小键盘34。根据另一个实施例,可以采用任何合适的数据或用户接口机制。例如,用户接口可以被实现为作为触敏显示器的一部分的虚拟键盘或数据输入系统。该装置可以包括麦克风36或者可以是数字或模拟信号输入的任何合适的音频输入。装置50还可以包括音频输出设备,该音频输出设备可以是以下中的任何一个:听筒38、扬声器或模拟音频或数字音频输出连接。装置50还可以包括电池(根据另一个实施例,该装置可以由任何合适的移动能量装置供电,例如太阳能电池,燃料电池或发条发电机)。该装置可以包括能够记录或捕获图像和/或视频的照相机42,或者可以连接到一个照相机。根据一个实施例,装置50可以进一步包括用于到其他设备的短程视距通信的红外端口。根据一个实施例,装置50还可以包括任何合适的短程通信解决方案,例如蓝牙无线连接或USB/火线有线解决方案。
装置50可以包括用于控制该装置的控制器56或处理器。控制器56可以连接到存储器58,根据一个实施例,存储器58可以以图像和音频数据的形式存储两种数据,和/或还可以存储用于在控制器56上实现的指令。控制器56还可以连接到视频编解码器电路54,其适于执行编码和解码音频和/或视频数据和/或协助由控制器56执行的编码和/或解码。
视频编解码器电路54可以包括编码器和解码器,编码器将输入视频转换为适合于存储/传输的压缩表示,解码器能够将压缩视频表示解压缩回可视形式。编码器可以丢弃原始视频序列中的一些信息以便以更紧凑的形式(即,以较低的比特率)表示视频。图4示出了视频编码器的示例,其中In:要编码的图像;P'n:图像块的预测表示;Dn:预测误差信号;D'n:重建的预测误差信号;I'n:初步重建的图像;R'n:最终重建图像;T,T-1:变换和逆变换;Q,Q-1:量化和反量化;E:熵编码;RFM:参考帧存储器;P帧间:帧间预测;P帧内:帧内预测;MS:模式选择;F:过滤。图5示出了视频解码器的框图,其中P'n:图像块的预测表示;D'n:重建的预测误差信号;I'n:初步重建的图像;R'n:最终重建图像;T-1:逆变换;Q-1:逆量化;E-1:熵解码;RFM:参考帧存储器;P:预测(帧间或帧内);F:过滤。在一些实施例中,装置50(图1和2)包括仅编码器或解码器,在一些其他实施例中,装置50包括编码器和解码器。
再次参考图1和2。装置50还可以包括读卡器48和智能卡46,例如UICC和UICC读取器,用于提供用户信息并且适合于提供用于在网络处的用户的验证和授权的验证信息。
装置50可以包括无线电接口电路52,该无线电接口电路连接到控制器并且适合于产生例如用于与蜂窝通信网络,无线通信系统或无线局域网的通信的无线通信信号。装置50还可以包括连接到无线电接口电路52的天线44,用于将在无线电接口电路52处产生的无线电频率信号发送到其他装置以及用于从其他装置接收无线电频率信号。
根据一个实施例,装置50包括能够记录或检测各个帧的相机42,然后各个帧被传递到编解码器54或控制器以进行处理。根据一个实施例,该装置可以在传输和/或存储之前从另一个设备接收视频图像数据以进行处理。根据一个实施例,设备50可以无线地或通过有线连接接收图像以进行处理。
图3示出了根据一个实施例的包括多个装置、网络和网络元件的系统配置。系统10包括可以通过一个或多个网络进行通信的多个通信设备。系统10可以包括有线或无线网络的任何组合,包括但不限于无线蜂窝电话网络(诸如GSM,UMTS,CDMA网络等),无线局域网(WLAN),诸如由IEEE 802.x标准中的任何一个标准定义的无线局域网(WLAN),蓝牙个域网,以太网局域网,令牌环局域网,广域网和因特网。
系统10可以包括适用于实现本实施例的有线和无线通信设备或装置50两者。例如,图3所示的系统示出了移动电话网络11和因特网28的表示。与因特网28的连接可以包括但不限于长距离无线连接,短程无线连接以及各种有线连接,其包括但不限于电话线路,电缆线路,电力线路和类似的通信路径。
系统10中示出的示例通信设备可以包括但不限于电子设备或装置50,个人数字助理(PDA)和移动电话14的组合,PDA 16,集成消息设备(IMD)18,台式计算机20,笔记本电脑22,数码相机12。装置50可以是静止的或当由正在移动的个人携带时是移动的。装置50也可以位于交通工具中。
其中一些装置可以发送和接收呼叫和消息,以及通过到基站24的无线连接25与服务提供商通信。基站24可以连接到网络服务器26,网络服务器26允许移动电话网络11和因特网28之间的通信。该系统可以包括附加的通信设备和各种类型的通信设备。
通信设备可以使用各种传输技术进行通信,包括但不限于码分多址(CDMA),全球移动通信系统(GSM),通用移动电话系统(UMTS),时分多址(TDMA)),频分多址(FDMA),传输控制协议-互联网协议(TCP-IP),短消息服务(SMS),多媒体消息服务(MMS),电子邮件,即时消息服务(IMS),蓝牙,IEEE 802.11和任何类似的无线通信技术。在实现本发明的各种实施例中涉及的通信设备可以使用各种介质进行通信,包括但不限于无线电红外线,激光器,电缆连接或任何合适的连接。
H.264/AVC标准是由国际电信联盟(ITU-T)的电信标准化部门的视频编码专家组(VCEG)和国际标准化组织(ISO)/国际电工委员会(IEC)的运动图像专家组(MPEG)的联合视频组(JVT)开发的。H.264/AVC标准由两个母体标准化组织发布,并且被称为ITU-T推荐H.264和ISO/IEC国际标准14496-10,也被称为MPEG-4第10部分高级视频编码(AVC)。H.264/AVC标准有多种版本,其将新的扩展或特征集成到规范中。这些扩展包括可伸缩视频编码(SVC)和多视角视频编码(MVC)。
高效视频编码(H.265/HEVC,也称为HEVC)标准的版本1由VCEG和MPEG的联合协作小组-视频编码(JCT-VC)开发。该标准由两个母标准化组织发布,并且被称为ITU-T建议H.265和ISO/IEC国际标准23008-2,也被称为MPEG-H Part 2高效视频编码(HEVC)。H.265/HEVC的版本2包括可缩放,多视角和保真度范围扩展,其可分别被缩写为SHVC,MV-HEVC和REXT。H.265/HEVC的版本2作为ITU-T建议H.265(10/2014)和ISO/IEC 23008-2的版本2发布。目前正在进行标准化项目来开发对H.265/HEVC的进一步扩展,包括三维和屏幕内容编码扩展,其可分别缩写为3D-HEVC和SCC。
SHVC,MV-HEVC和3D-HEVC使用HEVC标准的版本2的附录F中指定的共同的基础规范。这个共同的基础包括例如高级语法和语义,例如指定比特流的层的特征中的一些特征(诸如层间依赖性)以及解码处理(诸如包括层间参考图像的参考图像列表构建和用于多层比特流的图像顺序计数推导)。附录F也可用于HEVC潜在的后续多层扩展。应该理解的是,即使视频编码器,视频解码器,编码方法,解码方法,比特流结构和/或实施例可以在下文中参考诸如SHVC和/或MV-HEVC的特定扩展来进行描述,但是它们通常可应用于HEVC的任何多层扩展,甚至更一般地应用于任何多层视频编码方案。
在本节中将一些关键定义,比特流和编码结构以及构思描述为用于图像和图像序列的编码器,解码器,编码方法,解码方法和比特流结构的示例,其中可以实现实施例。本发明的各个方面不限于HEVC,而是针对一个可能的基础给出描述,其中本发明在该一个可能的基础上可以被部分或完全实现。
类似于许多较早的视频编码标准,在H.264/AVC和HEVC中指定比特流语法和语义以及无错误比特流的解码过程。编码过程没有指定,但编码器必须生成一致性的比特流。比特流和解码器的一致性可以用假想参考解码器(HRD)来验证。这些标准包含有助于应对传输错误和丢失的编码工具,但在编码中该工具的使用是可选的,并且没有针对错误的比特流而指定解码过程。
在现有标准的描述以及示例实施例的描述中,可以将语法元素定义为在比特流中表示的数据的元素。语法结构可以被定义为以指定顺序一起存在于比特流中的零个或更多个语法元素。在现有标准的描述中以及示例实施例的描述中,可以使用短语“通过外部手段”或“借助外部手段”。例如,解码过程中使用的诸如语法结构或变量的值的实体可以通过“外部手段”提供给解码过程。短语“通过外部手段”可以指示该实体没有被包括在由编码器创建的比特流中,而是例如使用控制协议在比特流外部来传送。它可以可替代地或附加地表示该实体不是由编码器创建的,而是可以例如在正在使用解码器的播放器或解码控制逻辑等中创建。解码器可以具有用于通过外部手段进行输入的接口,例如变量值。
输入到H.264/AVC或HEVC编码器的基本单元以及H.264/AVC或HEVC解码器的输出分别是图像。作为编码器的输入而给出的图像也可以被称为源图像,由解码所解码的图像可以被称为解码图像。
源图像和解码图像各自包括一个或多个样本数组,例如以下样本数组集合中的一个:
-只有Luma(Y)(单色)。
-亮度和两个色度(YCbCr或YCgCo)。
-绿色,蓝色和红色(GBR,也称为RGB)。
-表示其他未指定的单色或三刺激颜色采样的数组(例如,YZX,也称为XYZ)。
在下文中,这些数组可以被称为亮度(或L或Y)和色度,其中两个色度数组可以被称为Cb和Cr;而不管使用中的实际颜色表示方法如何。使用中的实际颜色表示方法可以例如在编码比特流中指示,例如使用H.264/AVC和/或HEVC的视频可用性信息(VUI)语法。组件可以被定义为数组或来自三个样本数组数组之一(亮度和两个色度)的单个样本,或者构成单色格式图像的数组或数组的单个样本。
在H.264/AVC和HEVC中,图像可以是帧或场。帧包括亮度样本和可能的对应色度样本的矩阵。场是帧的一组交替样本行,并且当源信号交错时,可以用作编码器输入。色度样本数组可能不存在(因此可能正在使用单色采样),或者当与亮度样本数组比较时,色度样本数组可以被二次采样。色度格式可以总结如下:
-在单色采样中,只有一个采样数组,在名义上可以被认为是亮度数组。-在4:2:0采样中,两个色度数组中的每一个色度数组都具有亮度数组的一半高度和一半宽度。
-在4:2:2采样中,两个色度数组中的每一个色度数组具有与亮度数组相同的高度和亮度数组宽度的一半。
-在4:4:4采样中,当没有使用单独的颜色平面时,两个色度数组中的每一个色度数组具有与亮度数组相同的高度和宽度。
在H.264/AVC和HEVC中,可以将样本数组作为分离的颜色平面编码到比特流中,并分别从比特流中解码分离编码的颜色平面。当使用分离的颜色平面时,它们中的每一个都被单独处理(由编码器和/或解码器)作为具有单色采样的图像。
用于H.264/AVC或HEVC编码器的输出以及H.264/AVC或HEVC解码器的输入的基本单元分别是网络抽象层(NAL)单元。为了通过面向分组的网络的传输或存储到结构化文件中,可以将NAL单元封装到分组或类似结构中。NAL单元可以被定义为包含要遵循的数据的类型的指示的语法结构,以及包含以RBSP的形式存在的数据的字节,其中必要时散布有具有起始码仿真防止(emulation prevention)字节的RBSP。原始字节序列有效载荷(RBSP)可以被定义为包含封装在NAL单元中的整数个字节的语法结构。RBSP是空的,或者具有包含语法元素的数据位串,后跟一个RBSP停止位,后跟等于0的零个或多个后续比特。NAL单元由头部和有效载荷组成。
在HEVC中,针对所有指定的NAL单元类型使用两个字节的NAL单元头部。NAL单元头部包含一个保留比特,六比特NAL单元类型指示,用于时间等级(temporal level)的三比特nuh_temporal_id_plus1指示(可能需要大于或等于1)和六比特nuh_layer_id语法元素。temporal_id_plus1语法元素可以被认为是NAL单元的时间标识符,并且可以如下导出基于零的TemporalId变量:TemporalId=temporal_id_plus1-1。等于0的TemporalId对应于最低时间级别。为了避免涉及两个NAL单元头部字节的开始代码仿真,temporal_id_plus1的值需要是非零的。通过排除具有大于或等于选定值的TemporalId的所有VCL NAL单元并且包括所有其他VCL NAL单元而创建的比特流保持一致性。因此,具有等于TID的TemporalId的图像不使用具有大于TID的TemporalId的任何图像作为帧间预测参考。子层或时间子层可以被定义为时间可伸缩比特流的时间可伸缩层,其由具有特定值的TemporalId变量的VCL NAL单元和相关联的非VCL NAL单元组成。nuh_layer_id可以被理解为可伸缩性层标识符。
可缩放视频编码可以涉及一种编码结构,其中一个比特流能够包含内容的多种表示(例如,以不同比特率,分辨率或帧速率)。在这些情况下,接收机可以根据其特征(例如,与显示设备最佳匹配的分辨率)来提取期望的表示。可替代地,服务器或网络元件可以根据例如网络特点或接收机的处理能力,提取要发送到接收机的比特流的部分。可以通过解码仅可缩放比特流的特定部分来产生有意义的解码表示。可伸缩比特流通常由提供可用的最低质量视频的“基础层”和一个或多个增强层组成,所述增强层在与较低层一起接收和解码时增强视频质量。为了提高增强层的编码效率,该层的编码表示通常依赖于较低层。例如。可以从较低层预测增强层的运动和模式信息。类似地,可以使用较低层的像素数据来为增强层创建预测。
在一些可伸缩视频编码方案中,可将视频信号编码到基础层和一个或多个增强层中。例如,增强层可以增强时间分辨率(即,帧速率),空间分辨率,或者简单地增强由另一层或其部分所表示的视频内容的质量。每层连同其所有依赖层是视频信号的一种表示,例如,在一定的空间分辨率,时间分辨率和质量水平。在本文档中,我们将可伸缩层连同其所有依赖层一起称为“可伸缩层表示”。对应于可伸缩层表示的可伸缩比特流的部分可以被提取和解码以产生某种保真度的原始信号的表示。
可伸缩性模式或可伸缩性维度可以包括但不限于以下:
-质量可伸缩性:基础层图像以比增强层图像更低的质量被编码,这可以例如在基础层中使用比增强层更大的量化参数值(即,用于变换系数量化的更大的量化步长)来实现。
-空间可伸缩性:基础层图像以比增强层图像更低的分辨率(即具有更少的样本)被编码。空间可伸缩性和质量可伸缩性,特别是其粗粒度的可伸缩性类型,有时可以被认为是相同类型的可伸缩性。
-比特深度可伸缩性:基础层图像以比增强层图像(例如10或12比特)更低的比特深度(例如8比特)被编码。
-动态范围可伸缩性:可伸缩层表示使用不同的色调映射功能和/或不同的光学传递函数获得的不同的动态范围和/或图像。
-色度格式可伸缩性:基础层图像在色度样本数组(例如,以4:2:0色度格式来编码)中比增强层图像(例如,4:4:4格式)提供更低的空间分辨率。
-色域可伸缩性:增强层图像比基础层图像具有更丰富/更宽的颜色表示范围,例如,增强层可以具有UHDTV(ITU-R BT.2020)色域,基础层可以具有ITU-R BT.709色域。
-视角可伸缩性,其也可以被称为多视角编码。基础层表示第一视角,而增强层表示第二视角。
-深度可伸缩性,其也可以被称为深度增强编码。比特流的一层或一些层可以表示纹理视图,而其他一个或多个层可以表示深度视图。
-感兴趣区域的可伸缩性(如下所述)。
-隔行到逐行可伸缩性(也称为场到帧可伸缩性):利用增强层来增强基础层的编码的隔行源内容材料以表示逐行源内容。
-混合编解码器可伸缩性(也称为编码标准可伸缩性):在混合编解码器可伸缩性中,在不同的视频编码标准中指定基础层和增强层的比特流语法,语义和解码过程。因此,根据与增强层图像不同的编码标准或格式来对基础层图像进行编码。例如,可以用H.264/AVC来编码基础层,可以用HEVC多层扩展来编码增强层。
应该理解,许多可伸缩性类型可以被组合并且被一起应用。例如色域可伸缩性和比特深度可伸缩性可以被组合。
术语层可以在任何类型的可伸缩性的情况下使用,包括视角可伸缩性和深度增强。增强层可以指任何类型的增强,诸如SNR,空间,多视角,深度,比特深度,色度格式和/或色域增强。基础层可以指任何类型的基础视频序列,诸如基础视图,用于SNR/空间可伸缩性的基础层,或用于深度增强视频编码的纹理基础视图。
目前正在研究和开发用于提供三维(3D)视频内容的各种技术。可以认为,在立体或双视角视频中,针对左眼呈现一个视频序列或视图,而针对右眼呈现并行视图。对于能够实现视角切换的应用或者针对可以同时呈现大量视图并且让观看者从不同视角观察内容的自动立体显示器(autostereoscopic display)而言,可能需要两个以上的并行视图。
视图可以被定义为表示一个相机或视点的图像序列。表示视角的图像也可以被称为视角分量。换句话说,视图分量可以被定义为单个访问单元中的视角的编码表示。在多视角视频编码中,不止一个视角被编码在比特流中。由于视角通常旨在被显示在立体或多视角自动立体显示器上或被用于其他3D布置,所以它们通常表示相同的场景,并且在内容方面部分重叠,尽管表示内容的不同视点。因此,可以在多视角视频编码中利用视图间预测来利用视图间相关性并提高压缩效率。实现视图间预测的一种方式是在位于第一视图内的正被编码或解码的图像的参考图像列表中包括一个或多个其他视图的一个或多个解码图像。视角可伸缩性可以指这样的多视角视频编码或多视角视频比特流,其使得能够移除或省略一个或多个编码视图,而所得到的比特流保持一致性并且表示具有比原始视频更少数量的视图的视频。感兴趣区(ROI)编码可以被定义为指代以更高的保真度对视频内的特定区域进行编码。
ROI可伸缩性可被定义为一种可伸缩性类型,其中增强层仅增强参考层图像的一部分,例如,在空间上,质量上,在位深度上和/或沿着其他可伸缩性维度。由于ROI可伸缩性可以与其他类型的可伸缩性一起使用,因此可以考虑形成可伸缩性类型的不同分类。对于具有不同需求的ROI编码,存在多种不同的应用,它们可以通过ROI的可伸缩性来实现。例如,可以传输增强层以提高基础层中的区域的质量和/或分辨率。接收增强层和基础层比特流的解码器可以解码两个层并且将解码的图像彼此叠加并显示最终的图像。
可以推断参考层图像和增强层图像的空间对应关系,或者可以用一种或多种类型的所谓参考层位置偏移量来指示参考层图像和增强层图像的空间对应关系。在HEVC中,参考层位置偏移量可由编码器包括在图像参数集(PPS)NAL单元中,并由解码器从PPS解码。参考层位置偏移量可以用于但不限于实现ROI可伸缩性。参考层位置偏移量可以包括以下中的一个或多个:缩放的参考层偏移量,参考区域偏移量和重新采样相位集合。可以考虑缩放的参考层偏移量来指定当前图像中与参考层中的解码图像中的参考区域的左上方亮度样本共位的样本之间的水平和垂直偏移量以及当前图像中与参考层中的解码图像中的参考区域的右下方亮度样本共位的样本之间的水平和垂直偏移量。另一种方式是考虑经缩放的参考层偏移量以指定经上采样的参考区域的角落样本相对于增强层图像的相应角落样本的位置。缩放的参考层偏移值可以被签名。可以考虑参考区域偏移量来指定参考层中的解码图像中的参考区域的左上方亮度样本和相同解码图像的左上方亮度样本之间的水平和垂直偏移量,以及参考层中的解码图像中的参考区域的右下方亮度样本和相同解码图像的右下方亮度样本之间的水平和垂直偏移量。参考区域偏移值可以被签名。可以考虑重采样相位集合来指定在用于层间预测的源图像的重采样处理中使用的相位偏移。可以为亮度和色度分量提供不同的相位偏移。
可以如下实现用于质量可伸缩性(也称为信噪比或SNR)和/或空间可伸缩性的可伸缩视频编码器。对于基础层,可以使用传统的不可伸缩视频编码器和解码器。基础层的重建/解码图像被包括在用于增强层的参考图像缓冲器和/或参考图像列表中。在空间可伸缩性的情况下,可以在重建/解码的基础层图像被插入用于增强层图像的参考图像列表之前,对重建/解码的基础层图像进行上采样。类似于增强层的解码参考图像,可以将基础层解码图像插入到用于增强层图像的编码/解码的参考图像列表中。因此,编码器可以选择基础层参考图像作为帧间预测参考,并且在编码的比特流中使用参考图像索引来指示它的使用。解码器从比特流(例如从参考图像索引)解码出:基础层图像被用作增强层的帧间预测参考。当解码的基础层图像被用作增强层的预测参考时,其被称为层间参考图像。
尽管前面的段落描述了具有两种可伸缩性层(增强层和基础层)的可伸缩视频编解码器,但是需要理解的是,可以将描述推广到具有多于两层的可伸缩性层次结构中的任何两个层。在这种情况下,在编码和/或解码过程中,第二增强层可以依赖于第一增强层,因此第一增强层可以被认为是用于第二增强层的编码和/或解码的基础层。此外,需要理解的是,可能存在来自增强层的参考图像缓冲器或参考图像列表的多于一个层的层间参考图像,并且这些层间参考图像中的每一个可被认为属于用于被编码和/或解码的增强层的基础层或参考层。此外,需要理解的是,除参考层图像上采样以外的其他类型的层间处理可以替代地或附加地进行。例如,参考层图像的样本的位深度可被转换成增强层的位深度,和/或样本值可经历从参考层的颜色空间到增强层的颜色空间的映射。
可伸缩视频编码和/或解码方案可以使用多环路编码和/或解码,其可以如下表征。在编码/解码中,基础层图像可以被重建/解码以用作在相同层内后续图像(按照编码/解码顺序)的运动补偿参考图像,或者用作用于层间(视图间或分量间)预测的参考。重建/解码的基础层图像可以被存储在解码的图像缓冲器(DPB)中。类似地,增强层图像可以被重建/解码以被用作在相同层内后续图像(按照编码/解码顺序)的运动补偿参考图像,或者用作用于更高的增强层(如果有的话)的层间(或者视图间或者分量间)预测的参考。除了重建/解码的采样值之外,可以在层间/组件间/视图间预测中使用基本/参考层的语法元素值或从基本/参考层的语法元素值导出的变量。
层间预测可以以取决于来自与当前图像的层(被编码或解码)不同的层的参考图像的数据元素(例如,样本值或运动矢量)的方式被定义为预测。存在许多类型的层间预测,并且可以应用于可伸缩视频编码器/解码器中。可用类型的层间预测可以例如取决于比特流或比特流内的特定层被编码所根据的编码简档,或者当解码时,比特流或比特流内的特定层被指示符合的编码简档。可替代地或附加地,可用类型的层间预测可以取决于所使用的可伸缩性的类型或可伸缩编解码器或视频编码标准修订(例如SHVC,MV-HEVC或3D-HEVC)的类型。
层间预测的类型可以包括但不限于以下中的一个或多个:层间样本预测,层间运动预测,层间残差预测。在层间样本预测中,用于层间预测的源图像的重建样本值的至少一个子集被用作用于预测当前图像的样本值的参考。在层间运动预测中,用于层间预测的源图像的运动矢量的至少一个子集被用作用于预测当前图像的运动矢量的参考。通常,关于哪些参考图像与运动向量相关联的预测信息也被包括在层间运动预测中。例如,用于运动矢量的参考图像的参考索引可以被层间预测,和/或参考图像的图像顺序计数或任何其它识别可以被层间预测。在一些情况下,层间运动预测还可以包括块编码模式,头部信息,块分割和/或其他类似的参数的预测。在一些情况下,诸如块分割的层间预测之类的编码参数预测可被认为是另一种类型的层间预测。在层间残差预测中,用于层间预测的源图像的所选块的预测误差或残差被用于预测当前图像。在诸如3D-HEVC的多视角加深度编码中,可以应用跨分量(cross-component)层间预测,其中诸如深度图像的第一类型的图像可以影响诸如传统的纹理图像的第二类型图像的层间预测。例如,可应用经视差补偿的层间样本值及/或运动预测,其中可至少部分地从深度图像导出视差。
直接参考层可以被定义为一种层,该层可以用于另一层的层间预测,针对另一层而言,该层是直接参考层。直接预测层可以被定义为一种层,针对该层而言,另一层是直接参考层。间接参考层可以被定义为一种层,该层不是第二层的直接参考层,而是第三层的直接参考层,第三层是第二层的直接参考层或直接参考层的间接参考层,对于第二层而言,该层是间接参考层。间接预测层可以被定义为一种层,针对该层而言,另一层是间接参考层。独立层可以被定义为不具有直接参考层的层。换句话说,独立层不是使用层间预测来预测的。非基础层可以被定义为除基础层以外的任何其他层,并且基础层可以被定义为比特流中的最低层。独立的非基础层可以被定义为既是独立层又是非基础层的层。
编码标准或系统可以涉及术语操作点或诸如此类,其可以指示可伸缩层和/或子层(在其下,解码进行操作),和/或可以与包括被解码的可伸缩层和/或子层的子比特流相关联。在HEVC中,操作点被定义为通过使用另一个比特流,目标最高TemporalId和目标层标识符列表作为输入的子比特流提取过程的操作而从另一比特流创建的比特流。
HEVC的视频参数集(VPS)NAL单元指定层集合和针对这些层集合的HRD参数。层集合可以被用作子比特流提取过程中的目标层标识符列表。在HEVC中,可以将层集合定义为通过利用另一比特流,目标最高TemporalId等于6,以及目标层标识符列表等于与层集合相关联的层标识符列表作为输入的子比特流提取过程的操作,从另一个比特流来创建的比特流内所表示的层集合。
输出层可以被定义为一种层,通过解码过程输出该层解码的图像。输出层可以取决于多层比特流的哪个子集被解码。解码过程输出的图像可以被进一步处理,例如,可以执行从YUV颜色空间到RGB的颜色空间转换,并且可以显示它们。然而,进一步的处理和/或显示可被认为是解码器和/或解码处理外部的处理,并且可能不发生。
在多层视频比特流中,操作点定义可以包括对目标输出层集合的考虑。例如,操作点可被定义为通过利用另一比特流,目标最高时间子层(例如,目标最高TemporalId),以及目标层标识符列表作为输入的子比特流提取过程的操作从另一比特流创建的比特流,其与输出层集合相关联。可选地,当涉及操作点和相关联的输出层集合时,可以使用诸如输出操作点的另一个术语。例如,在MV-HEVC/SHVC中,输出操作点可被定义为通过使用输入比特流、目标最高TemporalId、目标层标识符列表作为输入的子比特流提取过程的操作,从输入比特流创建的比特流,其与输出层集合相关联。
输出层集合(OLS)可以被定义为由指定的层集合之一的层组成的层集合,其中层集合中的一个或多个层被指示为输出层。输出层可以被定义为当解码器和/或HRD使用输出层集合作为目标输出层集合进行操作时输出的输出层集合的层。在MV-HEVC/SHVC中,变量TargetOlsIdx可以通过将TargetOlsIdx设置为等于作为目标输出层集合的输出层集合的索引,来指定哪个输出层集合是目标输出层集合。目标输出层集合可以被定义为索引等于TargetOlsIdx的输出层集合。TargetOlsIdx例如可以由HRD来设置和/或可以由外部手段来设置,例如由播放器或通过由解码器提供的接口等来设置。在MV-HEVC/SHVC中,输出层可以被定义为当TargetOlsIdx等于输出层集合的索引时输出的输出层集合的层。
简档可以被定义为由解码/编码标准或规范指定的整个比特流语法的子集。在由给定简档的语法强加的界线内,取决于比特流中的语法元素所取的值,例如解码图像的指定大小,仍然可能要求编码器和解码器的性能有非常大的变化。在许多应用中,实现能够处理特定简档内的语法的所有假设使用的解码器可能既不实际也不经济。为了处理这个问题,可以使用等级。等级可以被定义为强加在解码/编码标准或规范中指定的变量和比特流中的语法元素的值上的指定的一组限制。这些限制可以是对数值的简单限制。可替代地或附加地,它们可以采用对值的算术组合(例如,图像宽度乘以图像高度乘以每秒解码的图像的数量)的限制的形式。还可以使用用于指定对级别的限制的其他手段。在级别中指定的其中一些限制例如可以涉及每个时间周期(诸如秒)的在诸如宏块之类的编码单元方面的最大图像大小,最大比特率和最大数据速率。可以为所有简档定义相同的一组等级。例如,增加实现不同简档的终端的互操作性可能是优选的,其中每个级别的定义的大部分或全部方面跨不同简档可能是公共的。层级(tier)可以被定义为强加在比特流中的语法元素的值上的级别限制的指定类别,其中级别限制嵌套在层级中,并且符合某个层级和级别的解码器将能够解码符合到该级别的同一层级或较低层级或低于该级别的任何级别的所有比特流。
在一些情况下,可以将一致性点定义为特定简档和特定级别的组合或特定简档,特定层级和特定级别的组合。需要理解的是,一致性点可以以替代的方式来定义,而它的意图是指定比特流的特征和限制和/或解码器的特征和(最大)资源可以保持不变。
在多层HEVC扩展中,针对每个输出层集合的每个必要层指示简档-层级-级别组合。可以将必要层定义为与输出层集合相关联的输出操作点中的层,作为输出层集合的输出层的层,或者输出层集合的输出层的参考层。对于多层HEVC扩展,可以将一致性点定义为简档-层级-级别组合的列表,其中该列表包括特定输出层集合的每个必要层的简档-层级-级别组合。可以针对不同的输出层集合中的相同层指示不同的简档-层级-级别值(特别是不同的级别值),这是因为取决于哪些层是必要层以及哪些层是输出层,解码的图像缓冲器要求不同,解码的图像缓冲器要求是级别规范的一部分。解码器能力可以被指示为简档-层级-级别组合的列表。对于这些提及的原因,编解码器MIME参数内的单个简档-层级-级别值可能不足以描述例如存储在ISOBMFF兼容文件中的多层HEVC比特流。
统一资源标识符(URI)可以被定义为用于标识资源的名称的字符串。这种标识使得能够使用特定的协议在网络上与资源的表示进行交互。URI是通过指定针对URI的具体语法和相关协议的方案而被定义的。统一资源定位符(URL)和统一资源名称(URN)是URI的形式。URL可被定义为标识网络资源的URI,并指定对资源表示进行操作或获得资源表示的手段,指定其主要访问机制和网络位置。URN可以被定义为URI,其在特定的名字空间中通过名字来标识资源。URN可用于标识资源,而不会暗示其位置或如何访问它。
可用的媒体文件格式标准包括ISO基础媒体文件格式(ISO/IEC 14496-12,其可以缩写为ISOBMFF)以及来源于ISOBMFF的标准,例如MPEG-4文件格式(ISO/IEC 14496-14,也被称为MP4格式),用于NAL单元结构化视频(ISO/IEC 14496-15)的文件格式和3GPP文件格式(3GPP TS 26.244,也被称为3GP格式)。ISO/IEC 14496-15规定了高级视频编码标准(H.264/AVC)和/或高效视频编码标准(HEVC)的比特流的存储和/或在ISOBMFF兼容文件中它们的扩展。
以下将ISOBMFF的一些概念,结构和规范描述为容器文件格式的示例,基于其可以实现实施例。本发明的各个方面不限于ISOBMFF,而是给出对一个可能的基础的描述,基于该基础,可以部分地或全部地实现本发明。
ISO基础媒体文件格式中的一个构建块被称为框(box)。每个框可以有头部和有效载荷。框头部指示框的类型和以字节表示的框的大小。框可以包括其他框,而ISO文件格式指定在某个类型框内允许哪些框类型。此外,每个文件中可能强制一些框的存在,而其他框的存在可以是可选的。此外,对于某些框类型,可能允许在一个文件中存在多个框。因此,ISO基础媒体文件格式可以被认为是指定框的分层结构。ISO基础媒体文件的每个框可以由四字符代码(4CC,fourCC)来标识。四字符代码可以互换地用32位无符号整数来表示(通过假设字符到8位值的某种转换,某个位的字节顺序和某个字节的字节顺序)。头部可以提供框的类型和大小的信息。
根据文件格式的ISO族,文件可以包括可以封装在分离的框中的媒体数据和元数据。在示例实施例中,可以在媒体数据(mdat)框中提供媒体数据,并且可以使用电影(moov)框来封装元数据。在某些情况下,为了使文件可操作,mdat和moov框必须存在。电影(moov)框可以包括一个或多个轨道,并且每个轨道可以驻留在一个对应的轨道(trak)盒中。每个轨道都与句柄(Handler)相关联,句柄由四字符代码标识,指定轨道类型。视频,音频和图像序列轨道可统称为媒体轨道,它们包含基本媒体流。其他轨道类型包括提示轨道和定时元数据轨道。轨道包括样本,如音频或视频帧。媒体轨道涉及根据媒体压缩格式(它封装到ISO基础媒体文件格式)所格式化的样本(其也可以被称为媒体样本)。提示轨道涉及提示样本,其包含用于构建用于通过所指示的通信协议传输的分组的码书指令。码书指令可以包括用于分组头部构建的指导,并且可以包括分组有效载荷构建。在数据包有效载荷构建中,可以参考驻留在其他轨道或项目中的数据。这样,例如,驻留在其它轨道或项目中的数据可以通过引用来指示在分组构建过程期间特定轨道或项目中的哪条数据被指示被复制到分组中。定时元数据轨道可以涉及描述被参考的媒体的样本和/或提示样本。对于一种媒体类型的呈现,可以选择一个媒体轨道。轨道的样本可以隐含地与可以递增的样本编号相关联,例如,在指示的解码顺序中递增1。轨道中的第一个样本可能与样本编号1相关联。
“trak”框包含样本表框。样本表框包括例如轨道中的媒体样本的所有的时间和数据索引。样本表框需要包含样本描述框。样本描述框包含条目计数字段,其指定包含在框中的样本条目数。样本描述框需要包含至少一个样本条目。样本条目格式取决于轨道的句柄类型。样本条目给出了有关所使用的编码类型和该编码所需的任何初始化信息的详细信息。
ISO基础媒体文件格式不限制要被包含在一个文件中的演示(presentation)。这样,演示可以被包含在几个文件内。作为示例,一个文件可以包括针对整个演示的元数据,并且可以由此包括所有的媒体数据以使演示自包含。其他文件(如果使用的话)可能不需要被格式化为ISO基础媒体文件格式,并且可以用于包括媒体数据,并且还可以包括未使用的媒体数据或其他信息。ISO基础媒体文件格式只涉及演示文件的结构。媒体数据文件的格式可能受到ISO基础媒体文件格式或其派生格式的限制,只是因为媒体文件中的媒体数据按照ISO基础媒体文件格式或其派生格式的规定而被格式化。
引用外部文件的能力可以通过数据引用来实现。在一些示例中,在每个轨道中包括的样本描述框可以提供样本条目的列表,每个样本条目提供关于所使用的编码类型的详细信息以及该编码所需的任何初始化信息。块(chunk)的所有样本和轨道片段的所有样本可以使用相同的样本条目。块可以被定义为一个轨道的连续样本集合。数据参考(dref)框(其也可以被包括在每个轨道中)可以定义统一资源定位符(URL),统一资源名称(URN)和/或对包含元数据的文件的自引用的索引列表。样本条目可指向数据参考框的一个索引,从而指示包含相应块或轨道片段的样本的文件。
电影片段特征可以使得能够将元数据(否则它可能驻留在电影框中)分割到多个片中。每个片可以对应轨道的某一段时间。换句话说,电影片段特征可以使得能够对文件元数据和媒体数据进行交织。因此,电影框(box)的大小可能受到限制,并且上述用例被实现。
在一些示例中,用于电影片段的媒体样本可以驻留在mdat框中,如果它们与moov框在相同的文件中的话。然而,对于电影片段的元数据,可以提供moof框。moof框可以包括先前已经在moov框中的针对回放时间的某个持续时间的信息。就其本身而言,moov框可能仍然表示有效的电影,但另外,它可能包括一个mvex框,其指示电影片段将跟随在同一个文件中。电影片段可以及时扩展与moov框相关联的演示。
在电影片段内,可以有一组轨道片段,其根据轨道在任何地方包括从零到多个。轨道片段又可以在任何地方包括从零到多个轨道运行(track run),每个文档(each ofwhich document)是该轨道的样本的连续运行。在这些结构中,许多字段是可选的以及可以是默认的。可以被包括在moof框中的元数据可以被限制为可以被包括在moov框中的元数据的子集,并且在一些情况下可以被区别地编码。有关可以包含在moof框中的框的细节可以从ISO基础媒体文件格式规范中找到。自包含的电影片段可以被定义为由按照文件顺序是连续的moof框和mdat框组成,并且其中mdat框包含电影片段(针对它,moof框提供元数据)的样本而不包含任何其他电影片段的样本(即任何其他moof框)。
ISO基础媒体文件格式包含针对可以与特定样本相关联的定时元数据的三种机制:样本组,定时元数据轨道和样本辅助信息。派生规范可以提供与这三种机制中的一种或多种机制相似的功能。
基于分组标准,ISO基础媒体文件格式中的样本分组可以被定义为将轨道中的每个样本分配给一个样本组的成员。样本分组中的样本组不限于连续样本,也可能包含非相邻样本。由于对于轨道中的样本可能有多个样本分组,因此每个样本分组可能都有类型字段来指示分组类型。样本分组可以由两个链接的数据结构来表示:(1)SampleToGroup框(sbgp框)表示样本到样本组的分配;(2)SampleGroupDescription框(sgpd框)包含描述组的属性的针对每个样本组的样本组条目。根据不同的分组标准,SampleToGroup和SampleGroupDescription框可能有多个实例。这些可以通过用于指示分组类型的类型字段来区分。可以使用grouping_type的值,并且在一些版本的框中,也可以使用grouping_type_parameter的值,来链接'sbgp'和'sgpd'框。“sbgp”框指示特定样本所属的样本组描述条目的索引。
符合ISOBMFF的文件可以包含元框(meta box)(四字符代码:'meta')中的任何非定时对象,其被称为项目,元项目或元数据项目。虽然元框的名称涉及元数据,但项目通常可以包含元数据或媒体数据。元框可以位于文件的顶层(top level),在电影框(四个字符的代码:'moov')内,以及轨道框(四个字符的代码:'trak')内,但最多只有一个元框可以出现在文件级别,电影级别或轨道级别中的每个处。可以要求元框包含“hdlr”框,其指示“元”框内容的结构或格式。元框可以列出和表征可引用的任意数量的项目,并且它们中的每一个都可以与文件名称相关联并且通过作为整数值的文件标识符(item_id),使用文件来唯一地标识。元数据项目可以例如存储在元框的“idat”框中或“mdat”框中或驻留在单独的文件中。如果元数据位于文件的外部,则其位置可由DataInformationBox(四字符代码:'dinf')声明。在特定情况下,据使用XML语法对元数据进行格式化,并且需要将元数据直接存储在MetaBox中,元数据可以封装到XMLBox(四字符代码:'xml')或BinaryXMLBox(四字符代码:'bxml')。项目可以被存储为连续的字节范围,或者它可以被存储在几个范围(extent)内,每个范围是一个连续的字节范围。换句话说,项目可以被分段存储在多个范围中,例如,以使得能够交织。范围是资源的字节的连续子集;资源可以通过对范围进行连接来形成。
为了在分层结构(文件,电影或轨道)的任何级别上支持多于一个元框,可以使用元框容器框('meco')作为一种ISO基础媒体文件格式。元框容器框可以在层次结构(文件,电影或轨道)的任何级别上携带任何数量的附加元框。这可以允许例如在两个不同的、可替代的元数据系统中存在相同的元数据。元框关系框('mere')可以使得能够描述不同的元框相互之间是如何彼此相关的,例如,它们是否包含完全相同的元数据(但是用不同的方案描述)或者是否表示另一个超集。
高效率图像文件格式(HEIF)是由运动图像专家组(MPEG)开发的用于存储图像和图像序列的标准。该标准促进了根据高效视频编码(HEVC)标准编码的数据的文件封装。HEIF包括在所使用的ISO基础媒体文件格式(ISOBMFF)上面构建的丰富的特征集合。
HEIF格式中的HEVC编码的内容使得能够从静态图像捕获,存储和共享变化到多图像用例(诸如连拍图像的共享或存储图像组以用于借助于计算摄影的来处理这些图像的目的)的广泛范围的用例。计算摄影形成了可以从HEIF中受益的新用例类别。一组相关的图像可以被存储在单个文件中,其中关联的元数据指示不同图像之间的关系。这种出现的用例的例子包括通过从使用不同焦距拍摄的一组图像中选择具有期望焦点的图像,通过组合不同曝光的图像来获得高动态范围拍摄,以及从具有连接的风景一组图像中构建全方位或全景图像,来重新调焦。
ISOBMFF结构和特征在HEIF的设计中被大量使用,并且HEIF文件也符合ISOBMFF。HEIF的基本设计包括静止图像作为项目被存储,图像序列作为轨道被存储。
在HEIF的上下文中,下面的框可以被包含在根级“元”框内,并且可以如下所述被使用。在HEIF中,“meta”框的句柄框的句柄值是“pict”。通过数据信息('dinf')框来解析包含编码媒体数据的资源(不管是在同一个文件中,还是在由统一资源标识符标识的外部文件中),而项目位置('iloc')框存储所引用的文件内每个项目的位置和大小。项目参考('iref')框使用类型引用(typed referencing)来记录项目之间的关系。如果项目集合中的某个项目在某些方面被认为是最重要的项目(与其他项目相比),那么将通过主项目('pitm')框传送这个项目。除了这里提到的框之外,“meta”框还可以灵活地包含可能需要描述项目的其他框。
任何数量的图像项目可被包括在相同的文件中。给定通过使用“元”框方式来存储的图像集合,有时候必须限定图像之间的某些关系。这样的关系的示例包括指示针对集合的封面图像,为集合中的一些或全部图像提供缩略图图像,以及将集合中的一些或全部图像与诸如阿尔法平面的辅助图像相关联。图像集合中的封面图像使用“pitm”框来指示。缩略图图像或辅助图像分别使用类型为“thmb”或“auxl”的项目参考链接到主图像项目。
HEIF支持派生的图像。当项目包含引用到另一个项目的“dimg”项目时,该项目是派生图像。通过对指定的输入图像执行指定的操作(例如旋转)而获得派生图像。由项目的item_type来标识获得派生图像而执行的操作。用作至派生图像的输入的图像项目可以是编码图像,例如,项目类型为“hvc1”,或者它们可能是其他派生的图像项目。HEIF包括通光孔径(clean aperture)(即,裁剪)操作、90度倍数旋转的旋转操作和图像叠加操作的规范。图像叠加“iovl”派生图像以给定分层顺序将一个或多个输入图像放置在更大的画布内。HEIF的派生图像特征是可扩展的,以便外部规范以及HEIF本身的随后版本可以指定新的操作。
在HEIF或类似文件格式的情况下,可以使用以下定义。编码图像可以被定义为图像的编码表示。派生图像可以被定义为通过对指示图像的指示操作在文件中表示的图像,以及可以通过对指示图像执行指示的操作来获得的图像。取决于使用术语图像的上下文,图像可被定义为编码图像,派生图像或不同颜色分量的一个或多个像素数组。图像集合可以被定义为根据HEIF(或诸如此类)被存储为单个文件的项目的一组图像。辅助图像可以被定义为可能不旨在被显示的图像,但是提供补充相应的主图像的诸如透明度数据的补充信息。封面图像可以被定义为一种图像,该图像表示图像集合或图像序列,并且当在图像集合或图像序列的优选显示方法上没有其它信息可用时应该被显示。预先计算的派生图像可以被定义为已经从一个或多个其它图像派生的编码图像。主图像可以被定义为作为项目被存储的图像,而不是辅助图像或缩略图图像。缩略图图像可以被定义为主图像的较低分辨率表示。
包含图像序列的文件包括针对轨道的文件元数据,该文件元数据可以被存储在电影框(“moov”)及其子框中。文件元数据包括例如在文件中用于定位轨道的编码媒体数据的信息。每个轨道有由四个字符的句柄代码所标识的类型。HEIF还为图像序列指定了一个句柄类型“pict”。轨道包含存储在媒体数据框('mdat')或外部文件中的样本,如音频或视频帧。
图像序列轨道可以用于图像集合,其中图像间预测用于改善压缩性能,或者当图像序列与定时信息相关联时的图像集合。在前一种情况下,播放器应该选择非定时播放,例如在图库视图中显示图像,而在后一种情况下,图像序列应作为定时幻灯片播放。与视频轨道相反,图像序列轨道中的定时可以被认为是建议性的。HEIF提供了指示这两者中哪一个是首选回放方法的手段。为了区分图像序列和运动视频,在HEIF中引入了新的句柄类型“pict”。
HEIF包括将HEVC编码的静止图像和图像序列封装(通过包含和/或通过引用)到符合HEIF的文件中的规范。可以指定用其他编码格式编码的图像和图像序列到符合HEIF的文件的封装。
实体可以被定义为轨道或物品的统称。实体组是项目的分组,其也可以把轨道分组。当分组的实体没有明确的依赖关系或方向性引用关系时,可以使用实体组来代替项目参考。如分组类型所指示的,实体组中的实体共享特定的特征或具有特定的关系。
在HEIF和/或ISOBMFF中,在GroupsListBox中指示实体组。在文件级MetaBox的GroupsListBox中指定的实体组涉及轨道或文件级项目。在电影级MetaBox的GroupsListBox中指定的实体组涉及电影级项目。在轨道级MetaBox的GroupsListBox中指定的实体组涉及该轨道的轨道级项目。GroupsListBox包含EntityToGroupBoxes,每个指定一个实体组。
实体分组类型之一可以使得能够将图像项目和文件的轨道分组为一个或多个可替代组(即一个或多个可替代实体组或可替代实体组)。映射到一组这种分组类型的项目和轨道是彼此可替代的,并且只有其中的一个应该被播放(当映射的项目和轨道是演示的一部分时;例如是可显示的图像项目或轨道)或被其他手段处理(当映射的项目或轨道不是演示的一部分时,例如元数据)。播放器应选择可替代组的一个图像项目或轨道用于回放。可替代组的项目和轨道可以按其优先顺序列出。
符合HEIF的文件可以以文件类型框(“ftyp”)开始,该文件类型框包含文件符合的标签(brand)的列表。标签可以通过其唯一的四字符代码来标识。标签的规范可以包括针对标签的文件和针对支持该标签的文件播放器的要求和限制。包含在文件类型框中的标签允许支持该标签的要求的播放器来播放该文件。
互联网媒体类型,也被称为MIME(多用途互联网邮件扩展)类型,被各种应用使用来识别资源或文件的类型。MIME类型由媒体类型(在HEIF文件的情况下的“图像”),子类型以及零个或多个可选参数组成。
如所描述的,MIME是电子邮件协议的扩展,其使得能够在因特网上发送和接收不同种类的数据文件,例如视频和音频,图像,软件等。互联网媒体类型是在因特网上使用的标识符以用来指示文件包含的数据的类型。这样的互联网媒体类型也可以被称为内容类型。存在若干种可以包含不同媒体格式的MIME类型/子类型组合。内容类型信息可以在媒体传输开始时由传输实体包括在MIME报头中。因此,接收实体可能需要检查这种媒体内容的细节,以确定在给定一组可用编解码器的情况下是否可以渲染特定元素。尤其是,当终端系统资源有限时,或者与终端系统的连接具有有限的带宽时,单独从内容类型来了解是否可以渲染内容可能是有帮助的。
指定了两个参数“编解码器”和“简档”以与各种MIME类型或类型/子类型组合一起使用,以允许明确规定由包含在其中的媒体格式所采用的编解码器或整体容器格式的简档(多个)。
通过用被指示以渲染所包含的媒体的特定编解码器来标记内容,接收系统可以确定终端系统是否支持编解码器,如果不是,则可以采取适当的动作(例如拒绝内容,发送情况的通知,将内容转码为支持的类型,获取和安装所需的编解码器,进一步检查以确定是否足以支持所指示的编解码器的子集,等)。
对于从ISOBMFF派生的文件格式,可以认为编解码器参数包括一个或多个列表项的以逗号分隔的列表。
当编解码器参数的列表项表示ISOBMFF兼容文件的轨道时,列表项可以包括轨道的样本条目的四字符代码。对于HEVC,在ISO/IEC14496-15中规定列表项的格式。
当编解码器参数的列表项指示HEIF兼容文件的项目时,字符串“metaitem”之后是一个或多个加(“+”)分离的项目描述,每个项目描述以编码图像或派生图像的四字符项目类型开始。当项目类型是编码图像的四字符代码时,它后面跟着由针对ISOBMFF命名空间的编解码器参数所指定的点分隔('.')简档-层级-级别值。对于HEVC,在ISO/IEC14496-15中规定简档-层级-级别的格式。当项目类型是派生图像的四字符代码时,可能会跟随点分隔('.')像素计数值,该值是正整数,其表示派生图像的输入图像或派生图像本身所需的像素数。当像素计数值大于从相同列表项的任何编码图像的简档-层级-级别值所推断的最大像素计数值的两倍时,对于需要最大数量的像素的项目描述而言,可能需要存在像素计数值。
简档MIME参数可以向接收器提供内容符合的规范的总体指示。这是容器格式和其内容与某些规范的兼容性的指示。接收器可以通过检查以查看它支持哪种声明的简档,以及它们的含义,来算出它能够处理和渲染内容的程度。可以指定ISOBMFF文件的简档参数以包括在文件中包含的兼容标签的列表。
MIME的原始动机之一是识别消息部分的特定媒体类型的能力。然而,由于各种因素,不可能总是从MIME类型和子类型而知道主体部分中包含哪些特定的媒体格式或者为了呈现内容而指示哪些编解码器。
存在包含从集合中选择的编解码器的若干种媒体类型/子类型(当前注册或部署有待注册)。在没有本公开中描述的参数的情况下,有必要检查每个媒体元素以确定渲染内容所需的编解码器或其他特征。
编解码器参数的参数值被指定如下:单个值或逗号分隔的值列表,其标识被指示渲染在主体部分中的内容的编解码器(多个)。每个值由一个或多个点分隔的元素组成。第一个元素的名称空间由MIME类型确定。每个后续元素的名称空间由前面的元素确定。
ISOBMFF的渐进式下载信息框是帮助ISOBMFF文件的渐进式下载的文件级别框。该框包含指定以字节/秒为单位的有效文件下载比特率和以毫秒为单位的建议初始回放延迟的组合的数字对(在框的末尾)。接收方可以估计其正在经历的下载速率,并且由此通过成对之间的线性内插,或者通过从第一个条目或最后一个条目的外推,获得针对合适的初始延迟的上限估计。渐进式下载信息框希望尽早放置在文件中,以获得最大的效用。
3GPP文件格式的渐进式下载简档由对文件的以下限制组成:“moov”框应放置在紧接在文件开头的“ftyp”框之后;并且所有的媒体轨道(如果多于一个的话)应该以一秒或更少的交织深度被交织。
上面公开的渐进式下载指示涉及轨道(例如音频和视频轨道)的渐进式下载。它们不用于指示关于图像项目和/或图像序列的渐进式细化的任何内容。
渐进式细化可以包括显示媒体文件(诸如HEIF文件)的基本或粗略表示,并随着时间的推移逐渐改进或增强该表示。逐渐细化可以包括一个或多个细化步骤。细化或增强可以采取不同的形式,例如但不限于以下中的一个或多个:空间细化(其可以通过增加细节的量和/或更细的细节来感知),朝向更宽或更丰富的颜色表示的逐渐递增,动态范围细化和时间细化(例如,增强静止画面以成为动画和/或增加可以重复播放的定时序列的图像速率)。
目前,HEIF没有提供一种机制来指示文件的内容是否以一种方式被排序,在该方式中,可替代实体的集合(即,图像项目和/或图像序列)的渐进式细化是可能的。例如,当文件包含由封面图像,封面图像的缩略图图像和表示动画的图像序列组成的可替代组时,不存在关于文件是如何组织的的信息,例如,缩略图在封面图像之前,封面图像在动画之前。另外,目前的HEIF没有提供一种机制来指示文件作者是否希望以一种主观上被体验为逐渐细化的方式来显示一组可替代实体。例如,当文件包含由封面图像,封面图像的缩略图图像和表示动画的图像序列组成的可替代组时,不存在关于文件作者是否希望首先显示缩略图,接着是封面图像,然后是动画的信息。
在一些情况下,可以在开始下载文件之前确定上述问题。例如,与使用渐进式细化时相比,文件播放器可以在整个文件可用时被区别地实例化和/或操作。作为实例化的例子,文件播放器可以从最适合应用需求的可替代组中选择一个实体,并且它可以由文件播放器来解码-例如,立即显示动画。作为不同操作的示例,文件播放器可以一致地检查文件的新可用部分是否允许解码和显示在可替代实体组中的下一个实体。
当满足以下条件时,本发明实施例提供可被认为具有渐进式细化能力的多媒体容器文件:i)文件元数据在编码的媒体数据之前,使得编码的媒体数据可被解码而不需要接收在文件中在编码的媒体数据之后的文件元数据;ii)已知或指示文件中的哪些编码的媒体实体是彼此可替代的,其中编码的媒体实体可以是诸如图像的媒体项目或诸如定时图像序列的连续媒体项目,视频剪辑或音频剪辑;iii)彼此可替代的编码的媒体实体被安排在文件中,以便当它们以它们在文件中存在的顺序被连续显示时,获得渐进式细化或增强。在一些实施例中,媒体项目是静态的,即表示不随时间而变化的内容,例如图像。在其他实施例中,媒体项目可以是动态的,例如,表示定时图像序列,或静态的。动态的媒体项目可能缺少对其他动态媒体项目或媒体轨道的准确同步手段。
根据一个实施例,文件创建器被配置为对文件的元素进行排序,使得文件具有渐进式细化能力,并且在文件中或在文件的描述中指示渐进式细化可以是在播放文件时应用。另一方面,根据一个实施例,文件播放器被配置为解析来自文件或来自文件的描述的如下指示:在播放文件时可以应用渐进式细化;并且响应于该指示,显示文件的编码的媒体实体,从而获得渐进式细化。
在播放文件时可以应用渐进式细化的指示可以指示以下中的一者或两者:i)以渐进式细化顺序在容器文件中对编码的媒体实体进行排序;ii)允许以在容器文件中它们的顺序来解码和显示编码的媒体实体并连续显示它们。
在一个实施例中,文件创建器在文件中或在文件的描述中指示文件包含实体组,以及该实体组的实体以渐进式细化渐进式细化顺序中在该文件中被排序。可以为文件的第一实体组创建第一指示,可以为该文件的第二实体组创建与第一指示分开的第二指示。在一些情况下,所提及的实体组可以被预先定义为可替代组,而在其他情况下,包括在文件中或者在文件的描述中的指示可以附加地指定该指示适用于的分组类型。例如,分组类型可以被设置为用于可替代实体组的“altr”或者用于指示该组的图像项目可以被视为图像序列轨道的概要的另一个特定值(这里是“spre”),并且因此可以例如被用作预览或者这样的轨道。当以优先顺序指示可替代组时,渐进式细化顺序可能与优先顺序相反。在一个实施例中,文件播放器从文件或从文件的描述中解析出文件包含实体组,并且实体组的实体按照渐进式细化顺序在文件中被排序。在一些情况下,所提及的实体组可以被预先定义为可替代组,而在其他情况下,文件播放器可以从文件中或文件的描述中解析如下指示:该指示所适用的分组类型。文件播放器确定或被指示显示所述实体组的实体。所述实体组的至少两个实体由所述文件播放器以所述渐进式细化顺序重建和显示。
除了可以应用渐进式细化的指示之外,文件创建器可以在文件中指示和/或文件播放器可以从文件解析针对该文件的一个或多个建议的回放模式,其包括但不限于以下:
a)封面内容回放模式,其是封面图像(如果有的话)的缩略图,封面图像和被指示为封面图像的替代物的任何图像序列的渐进式回放,其中回放发生在相同的显示窗口或画布(canvas)上;
b)图像序列预览模式,其涉及按照它们在文件中出现的顺序来回放图像项目,直到接收到图像序列轨道,然后播放视频轨道或图像序列轨道。例如当图像项目表示轨道中的内容的预览时,这可以被使用。图像项目可以是例如轨道的选定的帧内编码帧。通过参考来自图像项目和来自轨道的样本的相同媒体数据,可以避免编码数据的重复。可以应用渐进式细化的指示可以指示图像项目的编码数据在仅被用作轨道的样本的那些编码帧之前出现在文件中;
c)图库细化模式,其涉及以图库模式或类似方式回放图像集合。可以应用渐进式细化的指示可以指示图像集合中的所有图像的缩略图在任何主图像之前出现在文件中;
d)立体3D回放模式,其中内容在立体显示装置(例如具有双视图的自动立体显示器的设备,或需要使用快门或偏光观看眼镜的显示器或投影仪)上播放。可以应用渐进式细化的指示可以指示针对左眼和右眼两者而显示的图像是文件顺序中的第一个图像;即渐进式细化从显示的2D图像开始。该图像可以是要被显示的立体对的左眼图像或右眼图像,或者是任何其他图像,例如来自左眼相机和右眼相机中间的相机的图像。之后,零或更多深度或视差图像可以按照文件顺序进行显示。深度或视差图像(与第一图像一起)促进基于深度图像的绘制(DIBR)应用于一个或多个合成图像的生成,并从而再现立体3D表示。值得注意的是,由于遮挡(前景物体覆盖背景)和任何其他原因,由DIBR创建的合成图像是不完美的。之后,针对立体对的一个或两个图像可以按照文件顺序进行显示。在显示中,合成图像(多个)被这一个或两个图像替换,这导致由于视图合成损伤的降低而导致渐进式细化的感知。之后,具有立体3D内容的图像序列可以按照文件顺序进行显示。内容可以驻留在例如一个轨道(包含两个视图)或两个轨道(每个轨道包含一个视图)中。对于多视点3D回放或自由视点导航回放也可以进行类似的回放模式和文件安排。
图6和图7图示了如何使用本实施例的示例。
图6示出了MediaDataBox 600内的编码数据的顺序,使得能够对封面内容回放模式进行渐进式细化。第一编码图像是封面图像的缩略图图像610,第二编码图像是封面图像620,后面是图像序列轨道630的编码图像。注意,封面图像620也可以是在图像序列轨道630中的图像。
图7示出了当封面内容回放模式正在使用时,示例文件的回放操作。首先,将缩略图图像710放大至显示窗口的大小并显示,其中放大由图7中的虚线表示。然后,当下载并解码封面图像720时,在显示窗口中,它替换缩略图图像710。之后,当接收到图像序列轨道730时,在显示窗口中发生图像序列的定时回放。在一些情况下,图像序列轨道730可以被渐进式下载,即,在其回放开始时,它不必被完全下载。
上述回放模式可以影响文件具有渐进式细化能力的限制。根据实施例,回放模式可以被预定义例如在编码标准中。如上所述,根据实施例,文件创建器可以在文件中指示针对文件的一个或多个建议的回放模式。根据实施例,文件播放器可以从文件解析针对该文件的一个或多个建议的回放模式。文件播放器可以例如基于应用程序或应用程序设置或其他用户输入,从解析的一个或多个建议的回放模式中选择回放模式。在没有针对文件的一个或多个建议的回放模式的指示的情况下,文件播放器可以选择默认回放模式,例如播放在包含封面图像的可替代组中的那些实体之间选定的一个或多个实体-该回放模式在这里被称为封面内容回放。在一些实施例中,文件播放器可以选择默认回放模式,而不管在文件中是否存在一个或多个建议回放模式的指示。在一些实施例中,文件播放器可以断定哪些回放模式由文件中的实体的顺序来促进,其中可以例如基于实体组的分组类型的信息来断定实体的顺序,如上所述,针对该实体组的分组类型而指示渐进式细化能力。文件播放器然后可以在由文件中的实体的顺序促进的回放模式之中选择回放模式。
在不同的实施例中,所述两个或更多个实体可以是例如但不限于以下或以下的任意组合:i)缩略图图像和相应的主图像;ii)封面图像和定时图像序列;iii)用于封面图像的缩略图图像,封面图像和定时图像序列;iv)表示相同原始图像但具有不同空间分辨率,图像质量,比特深度,色域和/或动态范围的图像;v)表示相同原始图像但具有不同空间分辨率,图像质量,比特深度,色域和/或动态范围的可伸缩编码的图像;vi)表示相同内容的不同视角的图像-例如,文件顺序中的第一图像可以表示单个视角或照相机,而文件顺序中的第二图像是第一图像的立体对,促进内容的立体观看;在另一示例中,文件顺序中的第一图像可以表示窄视野,而文件顺序中的第二图像可以表示相同内容的全景或宽视野表示。在这些示例中,第二图像可以独立于第一图像被编码,或者可以使用来自第一图像的预测。
在一些实施例中,从预定义或指示的建议的回放模式推断对两个或更多个实体的选择。
根据一个实施例,当预定义的或指示的建议的回放模式是封面内容回放模式时,两个或更多个实体包括处于包含封面图像的可替代组中的实体。
根据实施例,当满足以下条件时,可以确定HEIF文件或ISOBMFF文件具有用于封面内容回放模式的渐进式细化能力:i)所有MediaDataBox遵循MovieBox;ii)不存在电影片段或者包含用于电影片段的数据的所有MediaDataBoxes遵循相应的MovieFragmentBox;iii)至少一个图像项目的编码数据在相应的图像序列轨道或相应的视频轨道的编码数据之前。所述至少一个图像项目的编码数据可以驻留在(文件级MetaBox的)ItemDataBox中或MediaDataBox中。
另外,例如在存在渐进式下载信息框的情况下,具有用于图像序列预览模式(如上所指定的)的渐进式细化能力的文件可被指示为能够逐渐式下载。因此,播放器可以首先显示其编码数据在文件顺序中出现在可以逐渐式下载的轨道的编码数据之前的图像项目,即它们被解码和显示,而剩余数据仍被下载。
根据实施例,当满足以下条件时,HEIF文件或ISOBMFF文件可以被确定为具有用于图像序列预览模式的渐进式细化能力:i)所有MediaDataBox遵循MovieBox;ii)不存在电影片段或者包含用于电影片段的数据的所有MediaDataBox都遵循各自的MovieFragmentBox;iii)至少一个图像项目的编码数据在相应的图像序列轨道或相应的视频轨道的最后一个样本的编码媒体数据之前。所述至少一个图像项目的编码数据可以驻留在(文件级MetaBox的)ItemDataBox中或MediaDataBox中。所述至少一个图像项目的编码数据可以位于与针对相应的图像序列轨道或相应的视频轨道中的样本的编码数据相同的字节范围中。
当以这种方式定义用于图像序列预览模式的渐进式细化能力时,可以在完全接收相应的图像序列或视频轨道之前,或在开始轨道的解码/显示之前,显示图像项目。
根据实施例,当预定义的或指示的建议的回放模式是图库细化模式时,两个或更多个实体包括文件的主图像项目及其缩略图图像项目。
根据实施例,当满足以下条件时,HEIF文件或ISOBMFF文件可被确定为具有用于图库细化模式的渐进式细化能力:所有缩略图图像项目的编码数据在任何主图像项目的编码数据之前。
可以使用以下实施例中的一个或多个实施例来实现针对HEIF和ISOBMFF文件的如下指示:可以以两个或更多个实体在容器文件中出现的顺序来播放两个或更多个实体以实现渐进式细化。
1)为HEIF(或ISOBMFF)指定了渐进式细化标签,用四字符代码“mprr”来表示。具有渐进式细化能力的文件(如上所述)除了在HEIF中指定的一个或多个其他标签之外,还可以包含在FileTypeBox的兼容标签数组中的标签“mprr”。注意的是,“mprr”不应该被用作主要标签。因此,针对该文件的MIME类型还可以在针对可选简档MIME参数的值中包含“mprr”标签指示。
在一些实施例中,对于可以应用渐进式细化的每种回放模式,可以定义不同的四字符代码。
2)可以指定新的框,称为ProgressiveRefinementBox。应该理解,尽管参考单个ProgressiveRefinementBox来描述实施例,但是实施例可以类似地用多于一个框来实现,所述框包括与针对ProgressiveRefinementBox所描述的信息类似的信息。
根据实施例,ProgressiveRefinementBox可以指示建议的回放模式。例如,它可以包含四字符代码指示列表,其是建议的回放模式。
根据实施例,ProgressiveRefinementBox的存在可以指示能够按照两个或更多个实体在容器文件中出现的顺序来播放两个或更多个实体。
根据实施例,框内容可以包含渐进式细化能力的进一步信息。ProgressiveRefinementBox可以指示渐进式细化被指示的实体组。例如,该框可以识别渐进式细化能力适用的可替代组。ProgressiveRefinementBox应该早地出现在文件中,例如就在启动(start)该文件的FileTypeBox之后。
在媒体文件被分段的情况下,每个片段可以包含早地出现在片段或分段中的ProgressiveRefinementBox。
3)可以指定新的框,在这里被称为MediaDataDirectoryBox。MediaDataDirectoryBox的存在可以指示文件元数据在文件顺序中出现在相应的编码媒体数据之前,例如,MovieBox出现在MediaDataBox之前。该框包括MediaDataBox内的实体的顺序的表示。例如,框可以包括列表,其中每个列表项目标识特定轨道的特定样本(例如具有轨道ID值和样本编号),和/或针对被指示的一个或多个项目的实体,和/或整个项目,列表项目的顺序指示各个实体在MediaDataBox中出现的顺序。MediaDataDirectoryBox应该早地出现在文件中,例如就在启动文件的FileTypeBox之后。
4)可以指定新的框,在这里被称为DirectoryBox。DirectoryBox指示文件的框顺序。例如,它可以包含以框的出现顺序出现在文件中的所有框的四字符代码的分层列表。该列表可以是分层的,即指示框如何被嵌套在它们的容器框内。在MediaDataBox的情况下,DirectoryBox可以包含MediaDataDirectoryBox的信息或可以包含或引用MediaDataDirectoryBox。DirectoryBox应该早地出现在文件中,例如就在启动文件的FileTypeBox之后。
根据实施例,DirectoryBox和/或MediaDataDirectoryBox例如由播放器使用以确定建议的回放模式。例如,如果基于分别在DirectoryBox和/或MediaDataDirectoryBox中给出的框和/或媒体数据顺序,文件被确定为具有对封面内容回放模式的渐进式细化能力,则建议的回放模式可以包括封面内容回放模式。对于任何其他回放模式也可以进行类似的调查。
5)传输协议的头部或扩展机制可传达指示。例如,可以定义HTTP(超文本传输协议)头部,这里被称为Progressive-Content。当响应消息的有效载荷包含可以应用渐进式细化的文件时,Progressive-Content头部可以被添加到HTTP GET响应消息中。Progressive-Content头部的值可以是空的(在这种情况下,播放器可以假设并使用预定义的回放模式)或者可以包含建议的回放模式的列表。可替代地或附加地,类似于针对其它实施例所描述的,可以在Progressive-Content头部的值中提供关于渐进式细化能力的任何其他进一步的信息。
6)可以为HEIF(或ISOBMFF)文件指定新的可选的MIME参数,这里称为progressive-refinement。progressive-refinement参数的存在可以指示两个或更多个实体可以按它们出现在容器文件中的顺序来播放它们以实现渐进式细化。progressive-refinement的值可以指示渐进式细化能力的进一步信息。例如,progressive-refinement参数的值可以是以空格分隔或以逗号分隔的索引列表,其中索引涉及可选的编解码器参数的列表项,并且索引的顺序指示各个实体出现在文件中的顺序。由于编解码器参数的列表项指示例如实体是轨道还是项目以及实体的编码格式,以及实体的简档和级别,在确定播放器可以使用哪些实体来获得渐进式细化中,进一步的信息可以有帮助。
可以进一步指示在文件中哪些实体是彼此可替代的。这可以通过以下方式之一来实现:
a)通过按照每个可替代组包括如上所述的progressive-refinement参数;
b)通过为HEIF(或ISOBMFF)文件定义新的可选MIME参数(这里称为alt-group)。alt-group参数的值可以是以空格分隔或以逗号分隔的索引列表,其中索引涉及可选编解码器参数的列表项。progressive-refinement参数的值然后可以指示应用哪个(或多个)可替代组(而不是包括编码参数的索引)。这种设计使得对文件的选定的(但不一定是全部的)可替代组具有渐进式细化能力。
包括progressive-refinement参数及其值(如果有的话)的MIME类型可以作为协议报头的一部分等来传送,和/或可以被包括在内容描述中。例如,HTTP GET响应消息可以包括Content-Type头部,其包含响应消息的有效负载的MIME类型,其中MIME类型可以包括可选的MIME参数。在另一个例子中,MIME类型(其可以包括可选的MIME参数)被包括在HTML5代码内的图像元素的源元素的类型属性中。
如上所述,在一些实施例中,可以从推断或指示的建议的回放模式来推断出指示所适用的两个或更多个实体。
如上所述,在一些实施例中,可以应用渐进式细化的指示可以包括关于哪些实体是该指示所适用的两个或更多个实体的信息或与该信息相关联。
两个或更多个实体能够按照它们在容器文件中出现的顺序来播放的指示的范围可以被预定义例如在HEIF标准中或者可以在文件中或在文件的描述中指示为例如以下一种或多种:i)该指示涉及封面图像以及在也包含封面图像的可替代组中的所有实体;ii)所述指示另外指示所述文件中的所有实体是彼此可替代的,并且所述指示涉及包含在所述文件中包括的所有实体;iii)该指示分别涉及文件中指示的每个可替代组;iv)该指示伴随有其所涉及的那些可替换组的信息(即,上述“alt-group”)。
关于哪些实体是指示所适用的两个或更多个实体的信息可以例如包括以下中的一个或更多个:i)针对作为图像项目的实体的项目标识符或类似物;ii)针对最为轨道的实体的轨道标识符或类似物;iii)针对与建议的回放模式相关联的可替代组的组标识符等,例如包含在封面内容回放模式中的封面图像的可替代组。
根据实施例,从被推断或指示为在指示的范围内的两个或更多个实体来推断一个或更多个建议的回放模式。
播放器可以被配置为:从容器文件或者从容器文件的描述来解析两个或更多个实体可以按它们在容器文件中出现的顺序进行播放以实现渐进式细化的指示,其中每个实体是媒体项目(如图像项目)或媒体轨道(如图像序列轨道或视频轨道);例如根据以上所述来确定指示的范围;在某些情况下,范围的确定包括从容器文件解析包括封面图像的可替代组;确定两个或更多实体中的哪些实体被期望作为渐进式细化来播放;例如,如果播放器不支持定时图像序列的播放,则可以从那些按渐进式细化进行播放的实体中排除那些实体;连续播放来自两个或更多个实体的选定实体;例如,如果存在显示窗口或画布,则可以将每个选择的实体缩放到显示窗口或画布的大小。
当实体缩放到显示窗口或画布的大小时,可以考虑所选实体的实体的空间对应关系,使得在渐进式细化期间不会感知图像的运动。例如,根据或者类似于参考位置偏移量的信息可以被文件创建器包括到文件中和/或可以由文件播放器从文件中解析。
例如,当播放器在没有用户控制的情况下进行操作时,例如当容器文件作为图像被包含在网页中时,可以使用上述播放器操作。
根据实施例,如上所述,播放器可以另外确定回放模式。
根据实施例,播放器可以被配置为在应用程序和/或用户控制下操作,以及如果回放模式给出例如对多个可替代组使用渐进式细化的选择,应用程序和/或用户可以选择使用哪个回放模式,可以选择哪个(些)可替代组被查看。
根据一个实施例,上述指示另外指示某些轨道(如果有的话)是能够渐进式下载的。指示适用的轨道可以是那些在指示范围中(如上所述)的轨道,也可以是与指示范围内的轨道同时播放的轨道,例如音频轨道,它的回放时间范围与指示的范围中的图像序列轨道的回放时间范围一致。可以与3GPP文件格式的渐进式下载简档类似地指定渐进式下载的能力。
根据一个实施例,当播放文件时可以应用渐进式细化的指示指示以下哪一种适用,以下两者是否都不适用,或者以下两者是否都适用:i)编码的媒体实体在容器文件中以渐进式细化顺序被排序;ii)允许以在容器文件中的编码的媒体实体的顺序来解码和显示编码的媒体实体并依次显示它们。
当指示允许以在容器文件中的编码的媒体实体的顺序来解码和显示编码的媒体实体并依次显示它们,而不是指示编码的媒体实体按照渐进式细化顺序被排序在容器文件中时,例如由于以渐进式细化顺序首先出现的实体的更快的解码,并且因此能够更快地显示内容,文件播放器可以选择以渐进式细化模式进行操作。例如,播放器可能希望尽快显示缩略图图像,稍后用相应图像序列对其进行细化,即使图像序列在文件顺序中在缩略图图像之前。
根据一个实施例,可以放宽对被认为具有渐进式细化能力的文件的要求,使得只要文件元数据保持驻留在相同的逻辑单元中,该文件元数据能够在相应的编码媒体数据之后。例如,可能允许MovieFragmentBox在文件顺序中紧接着在包含用于电影片段的媒体数据的MediaDataBox之后。在这种情况下,MovieFragmentBox和MediaDataBox仍然可以被视为驻留在相同的自包含的电影片段中。
在可以与其他实施例一起使用或者与其他实施例独立地使用的实施例中,例如如下所述,可以将可伸缩编码的图像项存储在HEIF文件或诸如此类中。比特流被编码或以其他方式获得,其中比特流包括独立层中的第一图像和预测层中的第二图像,其中第二图像使用或至少可以使用第一图像作为用于层间预测的参考。第一图像作为第一图像项被封装在文件中,第二图像作为第二图像项被封装在文件中。特定的项目参考(这里称为“ilrf”)被包含在文件中,其中项目参考的方向可以是例如从第二图像项目到第一图像项目。用于特定图像项目的直接参考图像项目可以被定义为通过“ilrf”项目参考链接到特定图像项目的那些图像项目,针对特定图像项目的间接参考图像项目可以被定义为不是通过“ilrf”项目参考链接到特定图像项目,而是特定图像项目的直接参考图像项目的直接或间接参考图像项目的那些图像项目。此外,文件中还可以指示以下属性中的零个或多个:
-针对第二图像项目的至少一个OLS索引,其中可以要求所述至少一个OLS索引来引用如下OLS:在该OLS中,预测层(包含第二图像)是输出层,并且第二图像的所有直接和间接参考图像作为第二图像项目的直接和间接参考图像项目被包括在文件中;
-第一图像项目的OLS索引,如果独立层是比特流的基础层,则该索引可以是可选的(因此在不存在第一图像项目的OLS索引的情况下可以将OLS索引推断为0);
-至少一个简档-层级-级别结构或类似结构,其适用于(通过至少一个OLS索引)被指示或被推断为适用于第二图像项目的至少一个OLS;
-至少一个简档-层级-级别结构或类似结构,其适用于(通过至少一个OLS索引)被指示或被推断为适用于第一图像项目的至少一个OLS。
在一个实施例中,不同层的多于一个编码图像可以被存储在相同图像项内。只有当项目表示具有一个输出层(并因此具有一个输出图像)的OLS时,多于一个编码图像才可以被存储在具有多个层的项目中。当项目被用作派生图像的输入时,这使得明确指出哪个输出图像被引用。在包括多个编码图像的项目中的每个编码图像可以被包括在其自己的范围内,并且相同的编码图像可以使用范围(extent)被包括在多个项目中。
在可以与其他实施例一起使用或者与其他实施例独立地使用的实施例中,例如如下所述,当HEIF文件或类似文件包括独立层中的第一图像和预测层中的第二图像时,例如可以由文件播放器可以从HEIF文件或类似文件对可缩放编码的图像项进行分析,其中第二图像使用或至少可以使用第一图像作为层间预测的参考。可以例如基于针对第二图像指示的简档-层级-级别的值和针对第二图像指示的其他属性,确定要显示第二图像(或者分别显示第二图像项目)。从文件中解析特定的项目参考(这里称为“ilrf”),其指示第二图像项目从或至少可以从第一图像项目来层间预测。作为对可以对第二图像项目应用渐进式细化和/或基于“ilrf”项目参考的解析的响应,包括第一图像的第一图像项目从文件中解封并且可以被解码。当渐进式细化可应用于第二图像项目且第一图像项目在用于所述渐进式细化的实体当中时,可以显示解码的第一图像项目。包括第二图像的第二图像项目从文件解封并可被解码。在一些情况下,可以从第一图像和第二图像重建访问单元或比特流等,然后可以解码访问单元或比特流等。在一些情况下,可以从文件中解析用于第二图像项目的至少一个OLS索引,其中可能需要至少一个OLS索引来引用此类OLS,其中预测层(包含第二图像)是输出层,第二图像的所有直接和间接参考图像被包括在文件中作为第二图像项目的直接和间接参考图像项目。可以提供至少一个OLS索引中的一个OLS索引以用于解码第二图像或者访问单元或者比特流等。
在可与其他实施例一起使用或与其他实施例独立使用的实施例中,例如如下所述,可伸缩编码的图像项目可被存储在HEIF文件中或类似文件中。比特流被编码或以其他方式获得,其中比特流包括独立层中的第一图像和预测层中的第二图像,其中第二图像使用或至少可以使用第一图像作为用于层间预测的参考。第一图像被封装在文件中作为第一图像项目。将第二图像项目生成到文件中,其中第一范围(extent)指向第一图像(通过引用同样在第一图像项目中使用的字节范围),并且第二范围指向第二图像。此外,可以在文件中指示以下属性中的零个或多个:
-针对第二图像项目的至少一个OLS索引,其中可能需要至少一个OLS索引引用此类OLS,其中预测层(包含第二图像)是输出层,并且第二图像的所有直接和间接参考图像被包括在第二图像项中;
-第一图像项目的OLS索引,如果独立层是比特流的基础层,则该索引可以是可选的(因此在不存在第一图像项目的OLS索引的情况下,可以将OLS索引推断为0);
-至少一个简档-层级-级别结构或类似结构,其适用于至少一个OLS,该至少一个OLS(通过至少一个OLS索引)被指示或被推断为适用于第二图像项目;
-至少一个简档-层级-级别结构或类似结构,其适用于至少一个OLS,该至少一个OLS(通过至少一个OLS索引)被指示或被推断为适用于第一图像项目。
在可与其他实施例一起使用或独立于其他实施例的实施例中,例如如下所述,当HEIF文件或类似文件包括独立层中的第一图像以及预测层中的第二图像时,可以从HEIF文件或类似文件解析可伸缩编码的图像项目,其中第二图像使用或至少可以使用第一图像作为用于层间预测的参考,第一图像作为第一图像项目被封装在文件中,并且第二图像项目包括指向第一图像(通过参考同样在第一图像项目中使用的相同字节范围)的第一范围和指向第二图像的第二范围。作为对以下解析分析的响应:可以对第二图像项目应用渐进式细化,以及可以将第一图像项目用作第二图像项目之前的渐进式细化步骤,可以对第一图像项目(或者分别对第一图像)进行解码并显示。可以得出结论:第一范围涉及第一图像,因此避免对第一图像进行两次解码,而是使用已经解码的第一图像作为在对第二图像进行解码中的层间预测的参考。在一些情况下,可以从文件解析用于第二图像项目的至少一个OLS索引,其中可能需要至少一个OLS索引来引用此类OLS,其中预测层(包含第二图像)是输出层以及第二图像的所有直接和间接参考图像被包括在文件中作为第二图像项目的直接和间接参考图像项目。至少一个OLS索引之一可以被提供用于解码第二图像项目。
在上文中,已经关于ISOBMFF和/或HEIF描述了一些实施例。需要理解的是,可以用任何其他文件格式(诸如Matroska)来类似地实现实施例。
在上文中,已经关于播放器描述了一些实施例。需要理解的是,其他术语可以互换使用,例如阅读器,解析器,用户代理或客户端。需要了解的是播放器可以但不一定是独立的应用程序。播放器可以被嵌入在例如网络浏览器中。
图8中示出了根据实施例的方法。该方法包括将两个或更多个实体包括到容器文件中,其中每个实体是媒体项目或媒体轨道;并在容器文件或容器文件的描述之一中指示:两个或更多个实体能够按照它们出现在容器文件中的顺序来播放它们以实现渐进式细化。
在上文中,已经关于文件创建器描述了一些实施例。需要理解的是,其他术语可以互换使用,例如写入器,文件生成器或内容提供者。需要了解的是,创作者可以但不一定是独立的应用程序。例如,使用脚本,创建器可以被嵌入在例如web服务器中。
图9示出了根据一个实施例的方法。该方法包括:从容器文件或容器文件的描述之一来解析如下指示:所述两个或更多个实体能够按照它们出现在所述容器文件中的顺序被播放以实现渐进式细化,其中每个实体是媒体项目或媒体轨道;以及按照两个或更多个实体出现在容器文件中的顺序来播放两个或更多个实体的至少一个子集以实现渐进式细化。
各种实施例可以通过提供一种机制来提供优点,该机制用于指示图像容器文件是否可以在开始该文件下载之前和/或在文件开头时以渐进式细化方式播放。因此,本实施例减少了开始下载该件和播放该文件的内容的第一版本之间的等待时间。
本发明的各种实施例可以借助驻留在存储器中的计算机程序代码来实现,并使相关装置执行本发明。例如,设备可以包括用于处理,接收和传输数据的电路和电子器件,存储器中的计算机程序代码,以及处理器,在运行计算机程序代码时,处理器使得设备执行实施例的特征。更进一步地,像服务器这样的网络设备可以包括用于处理,接收和传输数据的电路和电子器件,存储器中的计算机程序代码以及处理器,在运行计算机程序代码时,处理器使网络设备执行实施例的特征。
显而易见的是,本发明不仅限于上述实施例,而是可以在所附权利要求书的范围内进行修改。

Claims (22)

1.一种方法,包括:
-将两个或更多个实体包括在容器文件中,其中每个实体是媒体项目或媒体轨道;和
-在所述容器文件或所述容器文件的描述之一中指示:所述两个或更多个实体能够按照它们出现在所述容器文件中的顺序来播放以实现渐进式细化。
2.根据权利要求1所述的方法,还包括:
-在所述容器文件中指示:可替代组包括所述两个或更多个实体。
3.根据权利要求1或2所述的方法,还包括:
-在所述容器文件中指示:所述两个或更多个实体的一个或多个回放模式。
4.根据权利要求1或2或3所述的方法,其中,所述两个或更多个实体是以下中的一个:缩略图图像和相应的主图像;封面图像和定时图像序列;用于封面图像的缩略图图像,封面图像和定时图像序列;表示相同的原始图像但具有不同的特征的图像;表示相同原始图像但具有不同特征的可缩放编码图像,表示相同内容的不同视角的图像。
5.根据权利要求4所述的方法,还包括:基于预定义的回放模式来选择所述两个或更多个实体,所述预定义的回放模式是以下之一:封面内容回放模式;图像序列预览模式;图库细化模式。
6.一种方法,包括:
-从容器文件或容器文件的描述之一来解析如下指示:两个或更多个实体能够按照它们出现在所述容器文件中的顺序被播放以实现渐进式细化,其中每个实体是媒体项目或媒体轨道;
-按照所述两个或更多个实体出现在所述容器文件中的顺序来播放所述两个或更多个实体的至少一个子集,以实现渐进式细化。
7.根据权利要求6所述的方法,还包括:
-从所述容器文件解析如下指示:可替代组包括所述两个或更多个实体。
8.根据权利要求6或7所述的方法,还包括:
-从所述容器文件解析关于所述两个或更多个实体的一个或更多个回放模式的指示。
9.根据权利要求6或7或8所述的方法,其中,所述两个或更多个实体是以下中的一个:缩略图图像和相应的主图像;封面图像和定时图像序列;封面图像的缩略图图像,封面图像和定时图像序列;表示相同的原始图像但具有不同的特征的图像;表示相同原始图像但具有不同特征的可缩放编码图像,表示相同内容的不同视角的图像。
10.一种装置,包括至少一个处理器,包含计算机程序代码的存储器,所述存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述装置执行至少以下步骤:
-将两个或更多个实体包括在容器文件中,其中每个实体是媒体项目或媒体轨道;和
-在所述容器文件或所述容器文件的描述之一中指示:所述两个或更多个实体能够按照它们出现在所述容器文件中的顺序来播放以实现渐进式细化。
11.根据权利要求10所述的装置,还包括计算机程序以使所述装置
-在所述容器文件中指示可替代组包括所述两个或更多个实体。
12.根据权利要求10或11所述的装置,还包括计算机程序以使所述装置
-在所述容器文件中指示所述两个或更多个实体的一个或多个回放模式。
13.根据权利要求10或11或12所述的装置,其中,所述两个或更多个实体是以下之一:缩略图图像和相应的主图像;封面图像和定时图像序列;封面图像的缩略图图像,封面图像和定时图像序列;表示相同的原始图像但具有不同的特征的图像;表示相同原始图像但具有不同特征的可缩放编码图像,表示相同内容的不同视角的图像。
14.根据权利要求13所述的装置,还包括计算机程序以使所述装置基于预定义的回放模式来选择所述两个或更多个实体,所述预定义回放模式是以下之一:封面内容回放模式;图像序列预览模式;图库细化模式。
15.一种装置,包括至少一个处理器,包含计算机程序代码的存储器,所述存储器和所述计算机程序代码被配置为与所述至少一个处理器一起使所述装置执行至少以下步骤:
-从容器文件或容器文件的描述之一来解析如下指示:所述两个或更多个实体能够按照它们出现在所述容器文件中的顺序被播放以实现渐进式细化,其中每个实体是媒体项目或媒体轨道;
-按照所述两个或更多个实体出现在所述容器文件中的顺序来播放所述两个或更多个实体的至少一个子集,以实现渐进式细化。
16.根据权利要求15所述的装置,还包括计算机程序以使所述装置
-从所述容器文件解析可替代组包括所述两个或更多个实体的指示。
17.根据权利要求15或16所述的装置,还包括计算机程序以使所述装置
-从容器文件解析针对所述两个或更多个实体的一个或多个回放模式的指示。
18.根据权利要求15或16或17所述的装置,其中,所述两个或更多个实体是以下之一:缩略图图像和相应的主图像;封面图像和定时图像序列;封面图像的缩略图图像,封面图像和定时图像序列;表示相同的原始图像但具有不同的特征的图像;表示相同原始图像但具有不同特征的可缩放编码图像,表示相同内容的不同视角的图像。
19.一种装置,至少包括处理构件和存储器构件,还包括:
-用于将两个或更多个实体包括在容器文件中的构件,其中每个实体是媒体项目或媒体轨道;和
-用于在所述容器文件或所述容器文件的描述之一中指示所述两个或更多个实体能够按照它们出现在所述容器文件中的顺序来播放以实现渐进式细化的构件。
20.一种装置,至少包括处理构件和存储器构件,还包括:
-用于从容器文件或容器文件的描述之一解析如下指示的构件:两个或更多个实体能够按照它们出现在所述容器文件中的顺序被播放以实现渐进式细化,其中每个实体是媒体项目或媒体轨道;
-用于按照所述两个或更多个实体出现在所述容器文件中的顺序来播放所述两个或更多个实体的至少一个子集以实现渐进式细化的构件。
21.一种体现在非临时性计算机可读介质上的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为当在至少一个处理器上执行时使得装置或系统:
-将两个或更多个实体包括在容器文件中,其中每个实体是媒体项目或媒体轨道;和
-在所述容器文件或所述容器文件的描述之一中指示:所述两个或更多个实体能够按照它们出现在所述容器文件中的顺序来播放以实现渐进式细化。
22.一种体现在非临时性计算机可读介质上的计算机程序产品,包括计算机程序代码,所述计算机程序代码被配置为当在至少一个处理器上执行时使得装置或系统:
-从容器文件或容器文件的描述之一来解析如下指示:两个或更多个实体能够按照它们出现在所述容器文件中的顺序被播放以实现渐进式细化,其中每个实体是媒体项目或媒体轨道;
-按照所述两个或更多个实体在所述容器文件中出现的顺序来播放所述两个或更多个实体的至少一个子集,以实现渐进式细化。
CN201680045219.0A 2015-06-03 2016-05-31 用于视频编码的方法和装置 Active CN107852532B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1509567.2A GB2538997A (en) 2015-06-03 2015-06-03 A method, an apparatus, a computer program for video coding
GB1509567.2 2015-06-03
PCT/FI2016/050381 WO2016193544A1 (en) 2015-06-03 2016-05-31 A method, an apparatus, a computer program for video coding

Publications (2)

Publication Number Publication Date
CN107852532A true CN107852532A (zh) 2018-03-27
CN107852532B CN107852532B (zh) 2021-09-14

Family

ID=53677670

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680045219.0A Active CN107852532B (zh) 2015-06-03 2016-05-31 用于视频编码的方法和装置

Country Status (5)

Country Link
US (2) US10582231B2 (zh)
EP (1) EP3304926A4 (zh)
CN (1) CN107852532B (zh)
GB (1) GB2538997A (zh)
WO (1) WO2016193544A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019192321A1 (zh) * 2018-04-06 2019-10-10 中兴通讯股份有限公司 视频数据处理方法、装置及系统
WO2020041983A1 (zh) * 2018-08-28 2020-03-05 西安诺瓦电子科技有限公司 媒体预览特效实现方法、装置及系统、服务端和计算机可读存储介质
CN111263191A (zh) * 2018-11-30 2020-06-09 中兴通讯股份有限公司 视频数据的处理方法、装置、相关设备及存储介质
CN112040248A (zh) * 2020-08-31 2020-12-04 重庆锐明信息技术有限公司 视频压缩方法、系统、终端设备及存储介质
CN113170236A (zh) * 2018-12-10 2021-07-23 诺基亚技术有限公司 用于在容器文件格式中以信号发送信息的装置和方法
CN113574900A (zh) * 2019-03-15 2021-10-29 诺基亚技术有限公司 用于对媒体内容中的实体进行分组的方法和装置
CN114731463A (zh) * 2019-11-22 2022-07-08 佳能株式会社 数据处理设备及其控制方法和程序
CN114930870A (zh) * 2019-12-20 2022-08-19 环球通讯股份有限公司 用于采集视频和编排场景序列的系统和方法

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018025660A1 (ja) * 2016-08-05 2018-02-08 ソニー株式会社 画像処理装置および画像処理方法
WO2018120294A1 (zh) * 2016-12-30 2018-07-05 华为技术有限公司 一种信息的处理方法及装置
GB2560921B (en) * 2017-03-27 2020-04-08 Canon Kk Method and apparatus for encoding media data comprising generated content
US11354789B2 (en) 2018-09-03 2022-06-07 Canon Kabushiki Kaisha Image processing apparatus and control method thereof
JP7263053B2 (ja) * 2019-02-28 2023-04-24 キヤノン株式会社 撮像装置、画像処理装置、それらの制御方法、プログラム
EP3712854A1 (en) * 2019-03-19 2020-09-23 Nokia Technologies Oy Method and apparatus for storage and signaling of static point cloud data
WO2020240089A1 (en) * 2019-05-29 2020-12-03 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
KR20220023995A (ko) * 2019-06-18 2022-03-03 소니그룹주식회사 파일 처리 장치, 파일 처리 방법, 및 프로그램
KR102665551B1 (ko) * 2019-09-24 2024-05-10 후아웨이 테크놀러지 컴퍼니 리미티드 다층 비디오 비트스트림에 대한 dpb 파라미터의 시그널링 기법
CN115715466A (zh) * 2020-05-22 2023-02-24 抖音视界有限公司 子比特流提取处理中的填充符有效载荷
JP2021193777A (ja) * 2020-06-08 2021-12-23 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、およびプログラム
US20230232082A1 (en) * 2020-06-18 2023-07-20 Nokia Technologies Oy Method and apparatus for signaling multiple media data types
CN112069356B (zh) * 2020-07-30 2024-03-22 中国建设银行股份有限公司 视频档案的存储方法、装置、电子设备及可读存储介质
CN116210216A (zh) 2020-09-28 2023-06-02 佳能株式会社 媒体文件生成设备、媒体文件重放设备、媒体文件生成方法、媒体文件重放方法、程序和存储介质
JP7321991B2 (ja) * 2020-09-28 2023-08-07 キヤノン株式会社 メディアファイルの生成装置、メディアファイルの再生装置、メディアファイルの生成方法、メディアファイルの再生方法、プログラム、記憶媒体
WO2022129235A1 (en) * 2020-12-17 2022-06-23 Canon Kabushiki Kaisha Method and apparatus for encapsulating image data in a file for progressive rendering
GB2602101A (en) * 2020-12-17 2022-06-22 Canon Kk Method and apparatus for encapsulating image data in a file for progressive rendering
CN114205675B (zh) * 2021-12-06 2023-04-11 上海哔哩哔哩科技有限公司 视频预览方法及装置
US20230345024A1 (en) * 2022-04-20 2023-10-26 Nokia Technologies Oy Method and apparatus for encoding, decoding, or progressive rendering of image

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050086582A1 (en) * 2003-10-17 2005-04-21 Telefonaktiebolaget Lm Ericsson (Publ) Container format for multimedia presentations
US20140185670A1 (en) * 2012-12-30 2014-07-03 Qualcomm Incorporated Progressive refinement with temporal scalability support in video coding
CN104160706A (zh) * 2012-01-20 2014-11-19 诺基亚公司 用于视频编码的方法以及用于其的装置、计算机程序产品、系统和模块

Family Cites Families (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US171563A (en) * 1875-12-28 Improvement in petroleum-wells
FI113124B (fi) * 1999-04-29 2004-02-27 Nokia Corp Tiedonsiirto
US20020021758A1 (en) 2000-03-15 2002-02-21 Chui Charles K. System and method for efficient transmission and display of image details by re-usage of compressed data
US7024485B2 (en) 2000-05-03 2006-04-04 Yahoo! Inc. System for controlling and enforcing playback restrictions for a media file by splitting the media file into usable and unusable portions for playback
US20020037046A1 (en) * 2000-09-22 2002-03-28 Philips Electronics North America Corporation Totally embedded FGS video coding with motion compensation
US7613727B2 (en) * 2002-02-25 2009-11-03 Sont Corporation Method and apparatus for supporting advanced coding formats in media files
US20030163477A1 (en) * 2002-02-25 2003-08-28 Visharam Mohammed Zubair Method and apparatus for supporting advanced coding formats in media files
US20040167925A1 (en) * 2003-02-21 2004-08-26 Visharam Mohammed Zubair Method and apparatus for supporting advanced coding formats in media files
JP3937223B2 (ja) * 2003-01-21 2007-06-27 ソニー株式会社 記録装置、再生装置、記録方法及び再生方法
GB0306192D0 (en) 2003-03-18 2003-04-23 British Telecomm Data file splitting
US6925751B2 (en) 2003-10-22 2005-08-09 Kenneth E. Williams Automated pest control dust applicator device for remote applications
US20050254072A1 (en) 2004-05-12 2005-11-17 Canon Kabushiki Kaisha Image data processing method, client terminal, image processing program, image data management method and image management system
WO2006108917A1 (en) * 2005-04-13 2006-10-19 Nokia Corporation Coding, storage and signalling of scalability information
US20070086521A1 (en) * 2005-10-11 2007-04-19 Nokia Corporation Efficient decoded picture buffer management for scalable video coding
KR101125819B1 (ko) * 2005-10-11 2012-03-27 노키아 코포레이션 효율적인 규모가변적 스트림 조정을 위한 시스템 및 방법
US8064717B2 (en) * 2005-10-28 2011-11-22 Texas Instruments Incorporated Digital camera and method
US8315308B2 (en) * 2006-01-11 2012-11-20 Qualcomm Incorporated Video coding with fine granularity spatial scalability
US8170116B2 (en) * 2006-03-27 2012-05-01 Nokia Corporation Reference picture marking in scalable video encoding and decoding
US9209934B2 (en) * 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9380096B2 (en) * 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9386064B2 (en) * 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
EP2041976A4 (en) * 2006-07-12 2012-06-20 Nokia Corp SIGNALING OF SCALABILITY INFORMATION FROM THE INTERESTING REGION IN MEDIA FILES
US8396134B2 (en) * 2006-07-21 2013-03-12 Vidyo, Inc. System and method for scalable video coding using telescopic mode flags
US20080089411A1 (en) * 2006-10-16 2008-04-17 Nokia Corporation Multiple-hypothesis cross-layer prediction
US7991236B2 (en) * 2006-10-16 2011-08-02 Nokia Corporation Discardable lower layer adaptations in scalable video coding
EP2080383A4 (en) * 2006-10-20 2009-12-09 Nokia Corp GENERIC INDICATION OF ADJUSTMENT GUIDE FOR SCALABLE MULTIMEDIA
WO2008051995A2 (en) * 2006-10-23 2008-05-02 Vidyo, Inc. System and method for scalable video coding using telescopic mode flags
KR20080057972A (ko) * 2006-12-21 2008-06-25 삼성전자주식회사 프리뷰 기능을 갖는 멀티미디어 데이터 인코딩/디코딩 방법및 장치
US8199812B2 (en) * 2007-01-09 2012-06-12 Qualcomm Incorporated Adaptive upsampling for scalable video coding
US20080205529A1 (en) * 2007-01-12 2008-08-28 Nokia Corporation Use of fine granular scalability with hierarchical modulation
CN101796841B (zh) * 2007-06-27 2012-07-18 汤姆逊许可公司 用增强层残差预测对视频数据编码/解码的方法和设备
US8103134B2 (en) * 2008-02-20 2012-01-24 Samsung Electronics Co., Ltd. Method and a handheld device for capturing motion
KR101506219B1 (ko) * 2008-03-25 2015-03-27 삼성전자주식회사 3차원 영상 컨텐츠 제공 방법, 재생 방법, 그 장치 및 그기록매체
FR2931610B1 (fr) * 2008-05-20 2010-12-17 Canon Kk Procede et un dispositif de transmission de donnees d'images
US20130022114A1 (en) 2008-06-23 2013-01-24 Mediatek Inc. Method and related apparatuses for decoding multimedia data
US8352443B1 (en) * 2008-11-08 2013-01-08 Pixar Representing scene description in databases
FR2939593B1 (fr) * 2008-12-09 2010-12-31 Canon Kk Procede et dispositif de codage video
WO2011003231A1 (zh) 2009-07-06 2011-01-13 华为技术有限公司 一种可伸缩视频编码文件的传输方法、接收方法及装置
US9917874B2 (en) * 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
CN103098484A (zh) 2010-06-14 2013-05-08 汤姆森许可贸易公司 用于封装编码多组件视频的方法和装置
EP2596633B1 (en) 2010-07-20 2016-11-23 Nokia Technologies Oy A media streaming apparatus
US20130124994A1 (en) * 2010-07-20 2013-05-16 Thomson Licensing Method for content presentation during trick mode operations
US9596447B2 (en) * 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US8780991B2 (en) * 2010-09-14 2014-07-15 Texas Instruments Incorporated Motion estimation in enhancement layers in video encoding
WO2012052968A1 (en) * 2010-10-20 2012-04-26 Nokia Corporation Method and device for video coding and decoding
US20140192238A1 (en) * 2010-10-24 2014-07-10 Linx Computational Imaging Ltd. System and Method for Imaging and Image Processing
US9258354B2 (en) * 2010-11-03 2016-02-09 Mobile Imaging In Sweden Ab Progressive multimedia synchronization
US8643734B2 (en) * 2010-11-10 2014-02-04 Apple Inc. Automatic engagement of image stabilization
KR20120055488A (ko) 2010-11-23 2012-05-31 삼성전자주식회사 멀티미디어 시스템에서 다계층 영상을 위한 미디어 파일 생성 방법 및 장치와 이를 이용한 미디어 파일 재생 장치
US20120163472A1 (en) * 2010-12-22 2012-06-28 Qualcomm Incorporated Efficiently coding scanning order information for a video block in video coding
EP2664075A4 (en) * 2011-01-14 2015-08-19 Vidyo Inc ENHANCED NAL UNIT HEADER
WO2012101585A1 (en) 2011-01-28 2012-08-02 Strangeloop Networks, Inc. Prioritized image rendering based on position within a web page
CA2829493A1 (en) * 2011-03-10 2012-09-13 Vidyo, Inc. Dependency parameter set for scalable video coding
CN104054338B (zh) * 2011-03-10 2019-04-05 杜比实验室特许公司 位深和颜色可伸缩视频编码
KR101703866B1 (ko) 2011-06-16 2017-02-07 엘지전자 주식회사 방송 서비스 전송 방법, 그 수신 방법 및 방송 서비스 수신 장치
US9451283B2 (en) * 2011-07-05 2016-09-20 Texas Instruments Incorporated Method, system and computer program product for selecting a motion vector in scalable video coding
US20130170561A1 (en) * 2011-07-05 2013-07-04 Nokia Corporation Method and apparatus for video coding and decoding
US10237565B2 (en) * 2011-08-01 2019-03-19 Qualcomm Incorporated Coding parameter sets for various dimensions in video coding
US9253233B2 (en) * 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
IN2014CN01752A (zh) * 2011-08-31 2015-09-04 Nokia Corp
GB2501517A (en) * 2012-04-27 2013-10-30 Canon Kk Scalable Encoding and Decoding of a Digital Image
CN104488246B (zh) * 2012-07-10 2018-11-02 Vid拓展公司 质量驱动串流
US20140089778A1 (en) 2012-09-24 2014-03-27 Amazon Technologies, Inc Progressive Image Rendering Utilizing Data URI Enhancements
US9924189B2 (en) * 2012-09-28 2018-03-20 Sony Corporation Image processing device and method
WO2014072571A1 (en) * 2012-10-01 2014-05-15 Nokia Corporation Method and apparatus for scalable video coding
WO2014056150A1 (en) * 2012-10-09 2014-04-17 Nokia Corporation Method and apparatus for video coding
US20140218473A1 (en) * 2013-01-07 2014-08-07 Nokia Corporation Method and apparatus for video coding and decoding
GB2509954B (en) * 2013-01-18 2016-03-23 Canon Kk Method of displaying a region of interest in a video stream
GB2509953B (en) * 2013-01-18 2015-05-20 Canon Kk Method of displaying a region of interest in a video stream
US20140282792A1 (en) * 2013-03-15 2014-09-18 Cygnus Broadband, Inc. Video streaming with buffer occupancy prediction based quality adaptation
KR102077900B1 (ko) * 2013-04-17 2020-02-14 노키아 테크놀로지스 오와이 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램
US9838672B2 (en) * 2013-05-16 2017-12-05 Mediatek Inc. Apparatus and method for referring to motion status of image capture device to generate stereo image pair to auto-stereoscopic display for stereo preview
US9516080B2 (en) 2013-05-31 2016-12-06 Western Digital Technologies, Inc. Methods and apparatuses for streaming content
GB2516824A (en) * 2013-07-23 2015-02-11 Nokia Corp An apparatus, a method and a computer program for video coding and decoding
TW201517597A (zh) * 2013-07-31 2015-05-01 Nokia Corp 用於視訊編碼及解碼之方法及裝置
US9813736B2 (en) * 2013-09-27 2017-11-07 Qualcomm Incorporated Inter-view dependency type in MV-HEVC
CN105981387B (zh) * 2013-10-15 2019-09-27 诺基亚技术有限公司 用于处理视频的方法、装置和计算机可读存储介质
GB2542282B (en) 2013-10-22 2018-08-01 Canon Kk Method, device, and computer program for encapsulating partitioned timed media data in a server
EP3078195A4 (en) * 2013-12-02 2017-08-09 Nokia Technologies OY Video encoding and decoding
EP3092806A4 (en) * 2014-01-07 2017-08-23 Nokia Technologies Oy Method and apparatus for video coding and decoding
WO2015104450A1 (en) * 2014-01-07 2015-07-16 Nokia Technologies Oy Media encapsulating and decapsulating
EP2894860A1 (en) 2014-01-14 2015-07-15 Thomson Licensing Method and apparatus for multiplexing layered coded contents
US10116948B2 (en) * 2014-02-21 2018-10-30 Sharp Kabushiki Kaisha System for temporal identifier handling for hybrid scalability
WO2015125489A1 (en) * 2014-02-24 2015-08-27 Sharp Kabushiki Kaisha Restrictions on signaling
US20150264404A1 (en) * 2014-03-17 2015-09-17 Nokia Technologies Oy Method and apparatus for video coding and decoding
CN106464893B (zh) * 2014-03-17 2019-12-03 诺基亚技术有限公司 用于视频编码和解码的装置、方法和计算机程序
US9866878B2 (en) 2014-04-05 2018-01-09 Sonic Ip, Inc. Systems and methods for encoding and playing back video at different frame rates using enhancement layers
WO2015178036A1 (en) * 2014-05-22 2015-11-26 Sharp Kabushiki Kaisha Method for decoding
US20150373075A1 (en) * 2014-06-23 2015-12-24 Radia Perlman Multiple network transport sessions to provide context adaptive video streaming
US9654689B2 (en) * 2014-08-19 2017-05-16 Apple Inc. Method and apparatus for camera actuator driver mode control synchronized with imaging sensor frame
US10291561B2 (en) * 2015-02-09 2019-05-14 Nokia Technologies Oy Apparatus, a method and a computer program for image coding and decoding
US20160286226A1 (en) * 2015-03-24 2016-09-29 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
US20160286241A1 (en) * 2015-03-24 2016-09-29 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
US9538137B2 (en) * 2015-04-09 2017-01-03 Microsoft Technology Licensing, Llc Mitigating loss in inter-operability scenarios for digital video

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050086582A1 (en) * 2003-10-17 2005-04-21 Telefonaktiebolaget Lm Ericsson (Publ) Container format for multimedia presentations
CN104160706A (zh) * 2012-01-20 2014-11-19 诺基亚公司 用于视频编码的方法以及用于其的装置、计算机程序产品、系统和模块
US20140185670A1 (en) * 2012-12-30 2014-07-03 Qualcomm Incorporated Progressive refinement with temporal scalability support in video coding

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110351492B (zh) * 2018-04-06 2021-11-19 中兴通讯股份有限公司 一种视频数据处理方法、装置及介质
CN110351492A (zh) * 2018-04-06 2019-10-18 中兴通讯股份有限公司 一种视频数据处理方法、装置及系统
WO2019192321A1 (zh) * 2018-04-06 2019-10-10 中兴通讯股份有限公司 视频数据处理方法、装置及系统
WO2020041983A1 (zh) * 2018-08-28 2020-03-05 西安诺瓦电子科技有限公司 媒体预览特效实现方法、装置及系统、服务端和计算机可读存储介质
CN112368695A (zh) * 2018-08-28 2021-02-12 西安诺瓦星云科技股份有限公司 媒体预览特效实现方法、装置及系统、服务端和计算机可读存储介质
CN111263191A (zh) * 2018-11-30 2020-06-09 中兴通讯股份有限公司 视频数据的处理方法、装置、相关设备及存储介质
US11677978B2 (en) 2018-11-30 2023-06-13 Zte Corporation Omnidirectional video processing method and device, related apparatuses and storage medium
CN113170236A (zh) * 2018-12-10 2021-07-23 诺基亚技术有限公司 用于在容器文件格式中以信号发送信息的装置和方法
CN113574900A (zh) * 2019-03-15 2021-10-29 诺基亚技术有限公司 用于对媒体内容中的实体进行分组的方法和装置
CN113574900B (zh) * 2019-03-15 2024-03-15 诺基亚技术有限公司 用于对媒体内容中的实体进行分组的方法和装置
CN114731463A (zh) * 2019-11-22 2022-07-08 佳能株式会社 数据处理设备及其控制方法和程序
CN114930870A (zh) * 2019-12-20 2022-08-19 环球通讯股份有限公司 用于采集视频和编排场景序列的系统和方法
CN112040248A (zh) * 2020-08-31 2020-12-04 重庆锐明信息技术有限公司 视频压缩方法、系统、终端设备及存储介质

Also Published As

Publication number Publication date
CN107852532B (zh) 2021-09-14
GB2538997A (en) 2016-12-07
US10979743B2 (en) 2021-04-13
EP3304926A1 (en) 2018-04-11
GB201509567D0 (en) 2015-07-15
WO2016193544A1 (en) 2016-12-08
US20180146225A1 (en) 2018-05-24
EP3304926A4 (en) 2019-01-23
US10582231B2 (en) 2020-03-03
US20200145705A1 (en) 2020-05-07

Similar Documents

Publication Publication Date Title
CN107852532A (zh) 用于视频编码的方法、装置和计算机程序
CN107534801B (zh) 用于处理图像序列轨道的方法、装置和计算机程序产品
KR102089457B1 (ko) 비디오 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램
EP3304904B1 (en) A method, an apparatus, a computer program for video coding
AU2018298046B2 (en) Enhanced signaling of regions of interest in container files and video bitstreams
CN109155861A (zh) 用于编码媒体内容的方法和装置以及计算机程序
CN106464893B (zh) 用于视频编码和解码的装置、方法和计算机程序
CN104813671B (zh) 用于处理视频数据的方法和设备
US20180277164A1 (en) Signalling of video content including sub-picture bitstreams for video coding
KR20200030053A (ko) 미디어 콘텐츠를 위한 영역별 패킹, 콘텐츠 커버리지, 및 시그널링 프레임 패킹
AU2017343554A1 (en) Method and system for processing 360 degree video data
US10999605B2 (en) Signaling of important video information in file formats
CN113170238A (zh) 用于视频编码和解码的装置、方法和计算机程序
CN107431819A (zh) 用于可伸缩视频编码和解码的层间预测
CN107113476A (zh) 用于视频流的方法、装置以及计算机可读存储介质
US20230059516A1 (en) Apparatus, a method and a computer program for omnidirectional video

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