CN109155874B - 虚拟现实媒体内容的自适应流传输的方法、装置和计算机程序 - Google Patents
虚拟现实媒体内容的自适应流传输的方法、装置和计算机程序 Download PDFInfo
- Publication number
- CN109155874B CN109155874B CN201780032219.1A CN201780032219A CN109155874B CN 109155874 B CN109155874 B CN 109155874B CN 201780032219 A CN201780032219 A CN 201780032219A CN 109155874 B CN109155874 B CN 109155874B
- Authority
- CN
- China
- Prior art keywords
- media
- projection
- media data
- descriptor
- omnidirectional
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/44029—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display for generating different versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/21805—Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/23439—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
- H04N21/2353—Processing 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26258—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
- H04N21/4353—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving decryption of additional data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/637—Control signals issued by the client directed to the server or network components
- H04N21/6373—Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/816—Monomedia components thereof involving special video data, e.g 3D video
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Theoretical Computer Science (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Processing Or Creating Images (AREA)
- Information Transfer Between Computers (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- Studio Devices (AREA)
Abstract
本发明涉及表示场景的宽视图的捕获投影的媒体数据的流传输,流传输的媒体数据使得可以在3D几何显示面上渲染宽视图、或者根据不同视点在显示面上渲染宽视图,该渲染包括媒体数据的渲染投影。在接收到包括与媒体数据有关的信息的描述文件之后,将用以基于描述文件请求媒体数据流的请求消息发送至服务器,其中该信息包括与用于产生媒体数据的宽视图的捕获有关的描述性信息。响应于这些请求消息,接收与所请求的媒体数据流相对应的媒体数据。
Description
技术领域
本发明涉及视频流传输的技术领域,并且更特别地涉及用于例如经由诸如使用http协议的因特网等的IP网络的虚拟现实媒体内容的自适应流传输的方法、装置和计算机程序。
背景技术
媒体呈现通常包括诸如音频和视频等的数个媒体内容。可以将这些媒体内容从服务器发送至客户端以由客户端装置共同播放。
为了改善用户体验并且特别是提供沉浸式体验,视频并且甚至音频可以是全向的(或者多方向的或多向的)。在应用于视频(也称为360°全景视频)时,用户感觉位于所显示的场景中。
可以从360°照相机以及/或者通过对从例如安装在特殊装备上使得所有照相机具有公共节点的数个照相机所获得的视频流的图像进行组合来获得全向视频。这种图像组合已知为图像拼接或照相机拼接。
可以经由头戴式显示器或者通过投影到围绕用户的曲面屏幕上来渲染这种全向视频。也可以在用户接口中具有导航菜单以平移到全向视频中的传统2D屏幕上显示这种全向视频。由于用户感觉处于虚拟世界中,因此这种全向视频经常被称为虚拟现实(VR)。在向全向视频添加虚拟对象时,这被称为增强现实(AR)。
图1a示出用于从服务器向客户端捕获、发送和渲染全向媒体的数据流程的示例。
如图所示,该媒体具有从照相机系统100获取到的并且经由服务器110、客户端115和网络120发送至头戴式显示器(HMD)105的视频内容。
为了例示,所使用的照相机系统基于与立方体的各面相关联的一组六个标准照相机。该照相机系统用于获得表示照相机系统周围的真实场景的图像。如利用表示125所示,根据该配置,一个照相机提供前方图像,一个照相机提供后方图像,一个照相机提供左方图像,一个照相机提供右方图像,一个照相机提供底部图像,并且一个照相机提供顶部图像。
在服务器110中对从照相机系统100获得的图像进行处理(步骤130),以创建也称为全向视频流或虚拟现实媒体数据流的360视频流。虚拟现实媒体数据流可以是如图1c的全景图像流190那样的全景图像的流(即,360°图像的流)、或者标准视频流的流(例如,从照相机100中的各照相机所获得的视频流的流)。
处理的类型取决于要创建的虚拟现实媒体数据流的类型。例如,如果虚拟现实媒体数据流是全景图像的流,则处理可以包括拼接步骤,并且如果虚拟现实媒体数据流是视频流的流(即,可拼接图像的流),则处理可以包括映射步骤。在后者情况下,可以在客户端进行图像的拼接以用于图像渲染。
在考虑场景的宽视图(例如,水平维度和垂直维度这两者上的360°视图)时,如利用图1b的附图标记180所示,宽视图的全景图像对应于利用一个图像传感器或一组图像传感器捕获到的该宽视图向2D图像的投影(表示为捕获投影)。因此,捕获投影方案与各全景图像相关联,例如以保存所记录的场景中的适当比例。特别地,所使用的捕获投影方案可能没有反映现实,而是可以是宽视图的艺术表现((例如,如基于立体投影https://en.wikipedia.orf/wiki/Stereographic_projection的“小星球”摄影效果那样)。
应当注意,360°视图可以是与沿着水平面的360°视图和沿着垂直面的360°视图相对应的真实360°视图、或者是例如与沿着水平面的360°视图和沿着垂直面的210°以下的视图相对应的伪360°视图。例如,一旦视野大于或等于人眼的视野,水平维度的180°全景也可被视为宽视图,以创建沉浸式体验。在所记录的场景对应于真实世界序列或合成序列时,通常使用术语360°视图或360°视频。
为了例示,如利用全景表示135(或者利用图1c的全景图像流190)所示,对从照相机100所获得的图像进行组合以创建包括一组连续的全景图像的虚拟现实媒体数据流。
在创建了虚拟现实媒体数据流之后,在步骤140中将该虚拟现实媒体数据流编码到视频位流中,然后在步骤141中将该虚拟现实媒体数据流打包(或封装)在文件或片段文件中,以经由网络120(例如经由使用http(超文本传输协议)协议的因特网)发送至客户端115。为了例示,打包可以包括将视频位流封装到ISOBMFF中。如此得到的文件或片段文件可以是mp4文件或mp4片段。在打包期间,可以将音频流添加到视频位流以及提供与视频或音频流有关的信息的元数据轨。
这里可以使用提供媒体数据流的描述性元数据和定时信息的任何打包或封装格式。例如,这些格式可以是MPEG-2传输流、公共媒体应用格式、WebM、以及可以提取描述性信息以帮助流媒体客户端选择媒体数据的最合适版本的任何格式。
在接收时,在步骤142期间对打包的虚拟现实媒体文件或媒体片段进行解析,以提取在步骤145中进行解码的数据流。在步骤142中接收到的ISOBMFF文件或片段的情况下,解析通常由从描述性元数据可以提取视频位流或视频子位流的mp4读取器或mp4解析器来进行处理。根据例示示例,解码后的全景图像的全景表示135’对应于全景表示135。
接着,对解码后的虚拟现实媒体数据流进行处理以用于视频渲染(步骤150)。应当注意,视频渲染取决于用户的观看点、视点和用于创建全景图像的投影等的数个参数。如利用渲染表示155所示,渲染视频包括再投影解码后的全景图像的步骤。将从这种再投影(表示为渲染投影)所获得的图像显示在HMD 105中。
为了处理立体视图,可以复制参考图1a所述的处理。
这里应当注意,存在虚拟现实媒体数据流的数个标准(例如,ISO/IEC 23000-19),并且用于创建全景图像的投影通常是以下(作为非限制性列表):
-球体;
-扁球体;
-立方体;
-圆柱;
-圆锥;和
-无。
根据所使用的投影的类型,在真实场景中的真实世界坐标和全景图像中的2D坐标之间存在数学关系。实际上,这样的投影是要显示的场景从一个或多个参考点向周围表面(其可以采用球体、扁球体、立方体、圆柱或圆锥的形状)上的投影。例如利用附图标记135所示的等矩形表示那样,可以将场景被投影到的该表面再映射到中间表示上,以简化视频渲染。
应当注意,如图1d所示,渲染投影取决于与场景被投影到的表面中的场景宽视图的观察方向相对应的视点。结合参考点,该视点定义了参考框架或参考视图。可以利用与考虑到(对应于例如默认视点的)绝对参考框架的参考框架的转动参数相对应的横摆值、俯仰值和侧倾值(如图1e所示)来定义视点。通常,对于HMD系统,横摆角对应于头部的从左向右或从右向左的转动,俯仰角对应于从顶部向底部或从底部向顶部的转动,并且侧倾对应于头部绕观看方向轴的转动(倾斜)。
在球体投影或扁球体投影的情况下,2D全景投影的中心点通常对应于沿着被定义为仰角取向的主视点取向(例如,沿着(x,y,z)右手坐标系中的z轴)向着参考点(例如,图1b的球体180的中心181)的投影。该视点还使得可以确定球体的极点。
同样,对于立方体投影,视点使得可以确定立方体在空间中的位置,并由此确定立方体的正面的位置(通常,该正面的中心对应于参考点沿着主视点取向的投影)、以及立方体的顶面、底面、左面、右面和后面的位置。
还应当注意,全景图像可以由如利用图1c的附图标记191所示的全景区域构成,其中各区域对应于特定投影。各区域是一组像素。各区域的形状可以是矩形或者可以不是矩形。一些投影可能生成像素的非连续图。例如,可以按各自与立方体的一个面相对应的6个投影区域对立方体投影进行分割。
包括图2a、2b和2c的图2示出基于立方体投影的包括数个区域的全景表示的示例,各区域与表面的投影相关联。
图2a示出表示投影图像的表面要被映射到图2b所示的全景表示上的立方体的六个面。
全景表示200包括表示为①~⑥的6个全景区域。如图所示,
-附图标记①对应于前视图在立方体的正面上的投影;
-附图标记②对应于顶视图在立方体的顶面上的投影;
-附图标记③对应于底视图在立方体的底面上的投影;
-附图标记④对应于左视图在立方体的左面上的投影;
-附图标记⑤对应于右视图在立方体的右面上的投影;以及
-附图标记⑥对应于后视图在立方体的背面上的投影。
因此,根据该投影,全景图像的各区域对应于立方体的一个面,并由此对应于前视图、顶视图、底视图、左视图、右视图和后视图中的一个用户视图。
还可以使用全景图像的两个特定区域来表示立体视图的各视图(即,一个区域对应于左视图并且另一区域对应于另一视图),各区域是基于不同参考点(例如,针对每个眼睛存在一个参考点)的相同全景投影的结果。
如图2c所示,可以将一个或多个区域分割成子区域,例如以访问这些子区域(从而使得可以在渲染期间放大这些区域)。为了例示,将前视图或区域210分割成九个子区域或空间部或部分。由内容作者或提供者来决定他/她在全景图像中提供的空间访问的粒度。
已经观察到,将UHD(超高清)视频流的数个图像拼接成虚拟现实媒体数据流的全景图像,这会得到位率非常高且分辨率非常高的虚拟现实媒体数据流。因此,从系统的角度来看并且为了避免浪费带宽并维持与客户端播放器的处理能力兼容,需要优化对虚拟现实媒体数据的访问。
可以将虚拟现实媒体数据流用于除通过参考图1a所述的目的以外的目的,这种需求甚至更加重要。特别地,可以使用虚拟现实媒体数据流来利用如投影仪的360°阵列那样的特定显示器来显示360°图像。虚拟现实媒体数据流还可用于显示特定视野、以及/或者改变观看点、视野和视点。
发明内容
本发明是为了解决前述担心中的一个或多个而设计的。
在该上下文中,提供了用于例如经由诸如使用http协议的因特网等的IP网络的虚拟现实媒体内容的自适应流传输的解决方案。
根据本发明的第一目的,提供一种用于从服务器接收表示场景的宽视图的捕获投影的媒体数据的方法,所接收到的媒体数据使得能够在3D几何显示面上渲染所述宽视图的至少一部分、或者根据至少两个不同视点在显示面上渲染所述宽视图的至少一部分,所述渲染包括表示所述宽视图的至少一部分的捕获投影的媒体数据的至少一个渲染投影,所述方法在客户端中进行,并且包括:
从所述服务器接收包括与表示所述宽视图的捕获投影的媒体数据有关的信息的描述文件,所述信息包括与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息;
将用以基于所述描述文件来请求至少一个媒体数据流的至少一个请求消息发送至所述服务器;以及
响应于所述至少一个请求消息,从所述服务器接收与所请求的至少一个媒体数据流相对应的媒体数据。
因此,本发明的方法使得可以由于仅发送所需数据因而优化虚拟现实媒体数据(特别是质量与请求客户端的特性相对应的媒体数据)的发送,由于可以处理高分辨率图像因而提高质量,并且由于利用客户端进行要发送的数据的控制因而保持服务器端的可分级性。此外,根据本发明的方法,客户端需要较少的资源。
在实施例中,与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息与所述捕获投影有关。
在实施例中,所述描述性信息至少部分地设置在至少一个描述符内。
在实施例中,表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一是全景图像,所述全景图像包括单个全景区域或多个全景区域、或者是一组不同的全景区域。
在实施例中,所述描述性信息至少部分地设置在至少一个特定描述符内,该一个特定描述符与一个全景图像或与一个全景区域相关联。
在实施例中,所述捕获投影是具有至少一个预定类型的几何投影,并且所述全景区域是根据所述几何投影的所述至少一个预定类型确定的。
在实施例中,所述描述性信息至少部分地设置在与信令信息相关联的至少一个描述符或一个特定描述符内,所述信令信息用信号通知在能够渲染所接收到的媒体数据的情况下所述客户端是否能够丢弃与该描述符或特定描述符内的描述性信息相对应的媒体数据。
在实施例中,所述描述性信息包括用于标识与所述媒体数据有关的资源的信息。
在实施例中,所述捕获投影具有至少一个预定类型,并且所述描述文件包括所述至少一个预定类型的捕获投影。
在实施例中,所述至少一个预定类型的捕获投影是球体类型、扁球体类型、立方体类型、圆柱类型和圆锥类型至少之一的几何投影。
在实施例中,所述描述文件还包括所述捕获投影的参数,所述捕获投影的参数包括视点参数。
在实施例中,标识符与至少一个定义描述符或特定描述符相关联,使得能够使用与所标识的定义描述符或特定描述符相关联的参数来描述所述媒体数据的不同部分。
在实施例中,表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一包括至少一个区域,所述至少一个区域被定义为描述符的属性。
在实施例中,包括标识信息、投影的类型、视点、投影标识符和区域的列表中的至少一个项是描述符或特定描述符的属性或元素,所述至少一个项是所述描述性信息的一部分。
在实施例中,所述捕获投影具有至少一个预定类型,并且针对所述捕获投影的所述至少一个预定类型,所述描述符或所述特定描述符的属性或元素的值是预先确定的。
在实施例中,所述描述文件还包括至少一个空间关系描述,所述至少一个空间关系描述用于定义全景图像的至少一部分内的关注区域或者定义全景图像的区域。
在实施例中,根据所述至少一个空间关系描述,使用与全景图像的第一区域的第一捕获投影有关的描述性信息来渲染所述全景图像的第二区域。
在实施例中,所述描述性信息包括用于根据空间关系描述来标识与所述媒体数据有关的资源的信息。
在实施例中,表示所述宽视图的捕获投影的所述媒体数据包括能够拼接的图像的集合,并且所述描述性信息不包括任何特定类型的捕获投影。
在实施例中,表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一包括与相同立体视图的两个图像相对应的至少两个不同区域。
在实施例中,表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一是全向全景图像。
在实施例中,所述描述文件是经由http协议的动态自适应流传输的媒体呈现描述。
根据本发明的第二目的,提供一种用于从服务器向客户端流传输表示场景的宽视图的捕获投影的媒体数据的方法,流传输的媒体数据使得所述客户端能够在3D几何显示面上渲染所述宽视图的至少一部分、或者根据至少两个不同视点在显示面上渲染所述宽视图的至少一部分,所述渲染包括表示所述宽视图的至少一部分的捕获投影的媒体数据的至少一个渲染投影,所述方法在所述服务器中进行,并且包括:
向所述客户端发送包括与表示所述宽视图的捕获投影的媒体数据有关的信息的描述文件,所述信息包括与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息;
从所述客户端接收用以基于所述描述文件来请求至少一个媒体数据流的至少一个请求消息;以及
响应于所述至少一个请求消息,将与所请求的至少一个媒体数据流相对应的媒体数据发送至所述客户端。
因此,本发明的方法使得可以由于仅发送所需数据因而优化虚拟现实媒体数据(特别是质量与请求客户端的特性相对应的媒体数据)的发送,由于可以处理高分辨率图像因而提高质量,并且由于利用客户端进行要发送的数据的控制因而保持服务器端的可分级性。此外,根据本发明的方法,客户端需要较少的资源。
在实施例中,与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息与所述捕获投影有关。
在实施例中,所述描述性信息至少部分地设置在至少一个描述符内。
在实施例中,表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一是全景图像,所述全景图像包括单个全景区域或多个全景区域、或者是一组不同的全景区域。
在实施例中,所述描述性信息至少部分地设置在至少一个特定描述符内,该一个特定描述符与一个全景图像或与一个全景区域相关联。
在实施例中,所述捕获投影是具有至少一个预定类型的几何投影,并且所述全景区域是根据所述几何投影的所述至少一个预定类型确定的。
在实施例中,所述描述性信息至少部分地设置在与信令信息相关联的至少一个描述符或一个特定描述符内,所述信令信息用信号通知在能够渲染所接收到的媒体数据的情况下所述客户端是否能够丢弃与该描述符或特定描述符内的描述性信息相对应的媒体数据。
在实施例中,所述描述性信息包括用于标识与所述媒体数据有关的资源的信息。
在实施例中,所述捕获投影具有至少一个预定类型,并且所述描述文件包括所述至少一个预定类型的捕获投影。
在实施例中,所述至少一个预定类型的捕获投影是球体类型、扁球体类型、立方体类型、圆柱类型和圆锥类型至少之一的几何投影。
在实施例中,所述描述文件还包括所述捕获投影的参数,所述捕获投影的参数包括视点参数。
在实施例中,标识符与至少一个定义描述符或特定描述符相关联,使得能够使用与所标识的定义描述符或特定描述符相关联的参数来描述所述媒体数据的不同部分。
在实施例中,表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一包括至少一个区域,所述至少一个区域被定义为描述符的属性。
在实施例中,包括标识信息、投影的类型、视点、投影标识符和区域的列表中的至少一个项是描述符或特定描述符的属性或元素,所述至少一个项是所述描述性信息的一部分。
在实施例中,所述捕获投影具有至少一个预定类型,并且针对所述捕获投影的所述至少一个预定类型,所述描述符或所述特定描述符的属性或元素的值是预先确定的。
在实施例中,所述描述文件还包括至少一个空间关系描述,所述至少一个空间关系描述用于定义全景图像的至少一部分内的关注区域或者定义全景图像的区域。
在实施例中,根据所述至少一个空间关系描述,使用与全景图像的第一区域的第一捕获投影有关的描述性信息来渲染所述全景图像的第二区域。
在实施例中,所述描述性信息包括用于根据空间关系描述来标识与所述媒体数据有关的资源的信息。
在实施例中,表示所述宽视图的捕获投影的所述媒体数据包括能够拼接的图像的集合,并且所述描述性信息不包括任何特定类型的捕获投影。
在实施例中,表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一包括与相同立体视图的两个图像相对应的至少两个不同区域。
在实施例中,表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一是全向全景图像。
在实施例中,所述描述文件是经由http协议的动态自适应流传输的媒体呈现描述。
根据本发明的第三目的,提供一种用于客户端的装置,所述装置用于从服务器接收表示场景的宽视图的捕获投影的媒体数据,所接收到的媒体数据使得能够在3D几何显示面上渲染所述宽视图的至少一部分、或者根据至少两个不同视点在显示面上渲染所述宽视图的至少一部分,所述渲染包括表示所述宽视图的至少一部分的捕获投影的媒体数据的至少一个渲染投影,所述装置包括微处理器,所述微处理器用于执行以下步骤:
从所述服务器接收包括与表示所述宽视图的捕获投影的媒体数据有关的信息的描述文件,所述信息包括与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息;
将用以基于所述描述文件来请求至少一个媒体数据流的至少一个请求消息发送至所述服务器;以及
响应于所述至少一个请求消息,从所述服务器接收与所请求的至少一个媒体数据流相对应的媒体数据。
因此,本发明的装置使得可以由于仅发送所需数据因而优化虚拟现实媒体数据(特别是质量与请求客户端的特性相对应的媒体数据)的发送,由于可以处理高分辨率图像因而提高质量,并且由于利用客户端进行要发送的数据的控制因而保持服务器端的可分级性。此外,根据本发明的装置,客户端需要较少的资源。
在实施例中,所述微处理器还被配置成:与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息与所述捕获投影有关。
在实施例中,所述微处理器还被配置成:所述描述性信息至少部分地设置在至少一个描述符内
在实施例中,所述微处理器还被配置成:表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一是全景图像,所述全景图像包括单个全景区域或多个全景区域、或者是一组不同的全景区域。
在实施例中,所述微处理器还被配置成:所述描述性信息至少部分地设置在至少一个特定描述符内,该一个特定描述符与一个全景图像或与一个全景区域相关联。
在实施例中,所述微处理器还被配置成:所述捕获投影是具有至少一个预定类型的几何投影,以及所述全景区域是根据所述几何投影的所述至少一个预定类型确定的。
在实施例中,所述微处理器还被配置成:所述描述性信息至少部分地设置在与信令信息相关联的至少一个描述符或一个特定描述符内,所述信令信息用信号通知在能够渲染所接收到的媒体数据的情况下所述客户端是否能够丢弃与该描述符或特定描述符内的描述性信息相对应的媒体数据。
在实施例中,所述微处理器还被配置成:所述描述性信息包括用于标识与所述媒体数据有关的资源的信息。
在实施例中,所述微处理器还被配置成:所述捕获投影具有至少一个预定类型,以及所述描述文件包括所述至少一个预定类型的捕获投影。
在实施例中,所述微处理器还被配置成:所述至少一个预定类型的捕获投影是球体类型、扁球体类型、立方体类型、圆柱类型和圆锥类型至少之一的几何投影。
在实施例中,所述微处理器还被配置成:所述描述文件还包括所述捕获投影的参数,所述捕获投影的参数包括视点参数。
在实施例中,所述微处理器还被配置成:标识符与至少一个定义描述符或特定描述符相关联,使得能够使用与所标识的定义描述符或特定描述符相关联的参数来描述所述媒体数据的不同部分。
在实施例中,所述微处理器还被配置成:表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一包括至少一个区域,所述至少一个区域被定义为描述符的属性。
在实施例中,所述微处理器还被配置成:包括标识信息、投影的类型、视点、投影标识符和区域的列表中的至少一个项是描述符或特定描述符的属性或元素,所述至少一个项是所述描述性信息的一部分。
在实施例中,所述微处理器还被配置成:所述捕获投影具有至少一个预定类型,并且针对所述捕获投影的所述至少一个预定类型,所述描述符或所述特定描述符的属性或元素的值是预先确定的。
在实施例中,所述微处理器还被配置成:所述描述文件还包括至少一个空间关系描述,所述至少一个空间关系描述用于定义全景图像的至少一部分内的关注区域或者定义全景图像的区域。
在实施例中,所述微处理器还被配置成:根据所述至少一个空间关系描述,使用与全景图像的第一区域的第一捕获投影有关的描述性信息来渲染所述全景图像的第二区域。
在实施例中,所述微处理器还被配置成:所述描述性信息包括用于根据空间关系描述来标识与所述媒体数据有关的资源的信息。
在实施例中,所述微处理器还被配置成:表示所述宽视图的捕获投影的所述媒体数据包括能够拼接的图像的集合,以及所述描述性信息不包括任何特定类型的捕获投影。
在实施例中,所述微处理器还被配置成:表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一包括与相同立体视图的两个图像相对应的至少两个不同区域。
在实施例中,所述微处理器还被配置成:表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一是全向全景图像。
在实施例中,所述微处理器还被配置成:所述描述文件是经由http协议的动态自适应流传输的媒体呈现描述。
根据本发明的第四目的,提供一种用于服务器的装置,所述装置用于从服务器向客户端流传输表示场景的宽视图的捕获投影的媒体数据,流传输的媒体数据使得所述客户端能够在3D几何显示面上渲染所述宽视图的至少一部分、或者根据至少两个不同视点在显示面上渲染所述宽视图的至少一部分,所述渲染包括表示所述宽视图的至少一部分的捕获投影的媒体数据的至少一个渲染投影,所述装置包括微处理器,所述微处理器用于执行以下步骤:
向所述客户端发送包括与表示所述宽视图的捕获投影的媒体数据有关的信息的描述文件,所述信息包括与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息;
从所述客户端接收用以基于所述描述文件来请求至少一个媒体数据流的至少一个请求消息;以及
响应于所述至少一个请求消息,将与所请求的至少一个媒体数据流相对应的媒体数据发送至所述客户端。
因此,本发明的装置使得可以由于仅发送所需数据因而优化虚拟现实媒体数据(特别是质量与请求客户端的特性相对应的媒体数据)的发送,由于可以处理高分辨率图像因而提高质量,并且由于利用客户端进行要发送的数据的控制因而保持服务器端的可分级性。。此外,根据本发明的装置,客户端需要较少的资源。
在实施例中,所述微处理器还被配置成:与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息与所述捕获投影有关。
在实施例中,所述微处理器还被配置成:所述描述性信息至少部分地设置在至少一个描述符内。
在实施例中,所述微处理器还被配置成:表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一是全景图像,所述全景图像包括单个全景区域或多个全景区域、或者是一组不同的全景区域。
在实施例中,所述微处理器还被配置成:所述描述性信息至少部分地设置在至少一个特定描述符内,该一个特定描述符与一个全景图像或与一个全景区域相关联。
在实施例中,所述微处理器还被配置成:所述捕获投影是具有至少一个预定类型的几何投影,以及所述全景区域是根据所述几何投影的所述至少一个预定类型确定的。
在实施例中,所述微处理器还被配置成:所述描述性信息至少部分地设置在与信令信息相关联的至少一个描述符或一个特定描述符内,所述信令信息用信号通知在能够渲染所接收到的媒体数据的情况下所述客户端是否能够丢弃与该描述符或特定描述符内的描述性信息相对应的媒体数据。
在实施例中,所述微处理器还被配置成:所述描述性信息包括用于标识与所述媒体数据有关的资源的信息。
在实施例中,所述微处理器还被配置成:所述捕获投影具有至少一个预定类型,以及所述描述文件包括所述至少一个预定类型的捕获投影。
在实施例中,所述微处理器还被配置成:所述至少一个预定类型的捕获投影是球体类型、扁球体类型、立方体类型、圆柱类型和圆锥类型至少之一的几何投影。
在实施例中,所述微处理器还被配置成:所述描述文件还包括所述捕获投影的参数,所述捕获投影的参数包括视点参数。
在实施例中,所述微处理器还被配置成:标识符与至少一个定义描述符或特定描述符相关联,使得能够使用与所标识的定义描述符或特定描述符相关联的参数来描述所述媒体数据的不同部分。
在实施例中,所述微处理器还被配置成:表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一包括至少一个区域,所述至少一个区域被定义为描述符的属性。
在实施例中,所述微处理器还被配置成:包括标识信息、投影的类型、视点、投影标识符和区域的列表中的至少一个项是描述符或特定描述符的属性或元素,所述至少一个项是所述描述性信息的一部分。
在实施例中,所述微处理器还被配置成:所述捕获投影具有至少一个预定类型,并且针对所述捕获投影的所述至少一个预定类型,所述描述符或所述特定描述符的属性或元素的值是预先确定的。
在实施例中,所述微处理器还被配置成:所述描述文件还包括至少一个空间关系描述,所述至少一个空间关系描述用于定义全景图像的至少一部分内的关注区域或者定义全景图像的区域。
在实施例中,所述微处理器还被配置成:根据所述至少一个空间关系描述,使用与全景图像的第一区域的第一捕获投影有关的描述性信息来渲染所述全景图像的第二区域。
在实施例中,所述微处理器还被配置成:所述描述性信息包括用于根据空间关系描述来标识与所述媒体数据有关的资源的信息。
在实施例中,所述微处理器还被配置成:表示所述宽视图的捕获投影的所述媒体数据包括能够拼接的图像的集合,以及所述描述性信息不包括任何特定类型的捕获投影。
在实施例中,所述微处理器还被配置成:表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一包括与相同立体视图的两个图像相对应的至少两个不同区域。
在实施例中,所述微处理器还被配置成:表示所述宽视图的捕获投影的所述媒体数据包括图像,所述图像至少之一是全向全景图像。
在实施例中,所述微处理器还被配置成:所述描述文件是经由http协议的动态自适应流传输的媒体呈现描述。
由于本发明可以以软件来实现,因此本发明可以体现为计算机可读代码以提供至可编程设备的任何适当载体介质并且特别是适当有形载体介质或适当暂时性载体介质上。有形载体介质可以包括诸如软盘、CD-ROM、硬盘驱动器、磁带装置或固态存储器装置等的存储介质。暂时性载体介质可以包括诸如电气信号、电子信号、光学信号、声学信号、磁信号或者例如微波或RF信号的电磁信号等的信号。
附图说明
在研究附图和具体实施方式时,本领域技术人员将明白本发明的更多优点。意图这里还包含了任何附加优点。
现在将仅通过示例方式并且参考以下附图来说明本发明的实施例,其中:
包括图1a、1b、1c、1d和1e的图1示出用于从服务器向客户端捕获、发送和渲染全向视频的数据流程的示例以及宽视图、视点、全景图像流和具有全景区域的全景图像的示例;
包括图2a、2b和2c的图2示出基于立方体投影的包括数个区域(各区域与表面的投影相关联)的全景表示、以及一个区域被进一步分割成子区域或部分的全景表示的示例;
图3示出例示经由HTTP的自适应媒体流传输的一般原则的示例的框图;
图4是示出DASH媒体呈现描述流传输清单的主要组件的框图;以及
图5是用于实现本发明的一个或多个实施例的计算装置的示意框图。
具体实施方式
根据特定实施例,使用流媒体清单或流媒体播放列表(例如,经由HTTP的动态自适应流传输(DASH)协议的媒体呈现描述(MPD))来用信号通知(即,提供)表示场景的宽视图的媒体数据(例如,诸如全景图像或可拼接图像的集合等的虚拟现实媒体数据)的特性。在DASH的情况下可以在新添加的结构元素或描述符中用信号通知这些特性,这些特性可以包括例如用于创建全景图像的投影的类型、对全景图像的部分的可访问性、以及质量和观看方向指示,该质量和观看方向指示用于帮助首先向流媒体客户端通知媒体不是经典的媒体或视频而是提供一些导航可能性,然后帮助流媒体客户端选择要检索的数据。第一点使得客户端能够设置和/或选择适当的用户接口以与内容交互。
在准备供在服务器端进行流传输的内容时,可以将这些新描述符插入流媒体清单或流媒体播放列表中。在DASH的情况下,利用DASH服务器或DASH打包模块将新描述符插入MPD文件中,以向DASH客户端指示(或用信号通知)提供场景的宽视图的虚拟现实媒体数据表示,并且例如表征虚拟现实媒体数据内所包含的全景图像。因此,这些新描述符可以包括全景投影类型以及与该全景投影类型一起使用的特性和参数,以获得全景图像。通常,这些新描述符包括用以定位全景图像的内部的全景区域(在存在的情况下)的视点和参数。这些新描述符(以下称为VR描述符)可以如XML项和/或属性那样的结构化元素,或者可以用JSON(JavaScript对象表示法)或者甚至采用纯文本格式描述,只要关键字或注释专用于传达这些描述符即可。
可以想到,DASH使得可以创建媒体呈现的内容的紧凑描述和HTTP地址(通常为URL)之间的关联。在称为清单文件或描述文件的文件中描述这种关联。在DASH的上下文中,该清单文件是也被称为MPD(媒体呈现描述(Media Presentation Description)的缩写)文件的文件。
在将MPD文件发送至客户端时,客户端可以容易地得知各媒体内容的描述。通过阅读清单文件,客户端获知在媒体呈现中所提出的媒体内容的种类并且获知用于下载关联的媒体内容的HTTP地址。因此,可以决定(经由HTTP请求)下载并播放(在接收到媒体数据片段之后进行解码并播放)哪个媒体内容。
除上述关联外,DASH标准使得可以将各媒体内容分割成称为片段的多个小时间段。存在初始化片段(例如在开始设置媒体解码器时)、以及传送媒体数据的媒体片段。这些片段不是必需的物理文件。这些片段可以是到单个文件(例如ISOBMFF文件)中的字节范围。在MPD文件中添加时间分解。因而,该时间分解描述小时间段内HTTP地址(或URL)和各媒体内容的紧凑描述之间的关联。
图3示出例示经由HTTP的媒体流传输的一般原则的示例的框图。在优选实施例中,DASH协议被认为是经由HTTP的流传输协议。
另外,图4在结合图3进行描述的情况下示出MPD文件的整体组织。
如图所示,媒体服务器300包含不同的媒体呈现。示出媒体呈现301的简化示例。这里,媒体呈现301包含全景图像的时间序列这样的虚拟现实媒体数据。该媒体呈现已在时间上和空间上分割成小的独立片段302、302a和303(或图4中的附图标记403)。可以独立定址并下载这些片段。媒体内容的下载地址是HTTP地址(或URL)。存在与虚拟现实媒体内容的各片段相关联的一个HTTP地址。HTTP地址是由媒体服务器300针对这些片段中的每一个片段所设置的。
清单文件304(或描述文件)从HTTP地址、分辨率方面的内容的版本、编解码方式、位率、媒体类型等方面来反映媒体服务器上可用的媒体呈现的组织。可以是XML文档或者甚至如HTTP实时流传输那样的纯文本文件。例如,DASH MPD和平滑流传输所用的流媒体清单都使用XML。清单文件304描述媒体片段的内容,例如媒体的类型(音频、视频、音频-视频、文本、元数据…)(例如利用图4的适应集(adaptation set)401所示)、编码格式、片段的持续时间。此外,清单文件304使URL与所描述的各媒体内容片段相关联。
将清单文件304发送至客户端310。通过阅读所接收到的清单文件305,客户端可以得知不同媒体内容的片段和指定这些片段的HTTP地址之间的关联。客户端还可以确定例如视频的替代版本(诸如图4的表示(representation)402等)、或者关联到媒体流的元数据。此外,清单文件305给出与媒体呈现的内容(在该示例中为虚拟现实媒体数据)有关的信息。例如,该信息可以包括分辨率和/或位率。在流媒体清单或流媒体播放列表中所提供的所有信息都由可以确定应当向流媒体服务器请求哪些片段的自适应逻辑模块311来处理。
因此,客户端310可以发出HTTP请求306以下载该客户端310想要的在所接收到的清单文件305中所描述的片段。
作为响应,服务器300在HTTP响应307中发送所请求的片段。这些片段可以由客户端310进行解码并显示(步骤308和309)。
注意,服务器可以包括在单独的服务器或装置中,其各自进行以下步骤中的一个或多个:
-生成媒体内容,
-以文件格式封装媒体流,
-生成流媒体清单或播放列表文件,
-发送媒体呈现,以及
-将媒体内容最经常作为内容片段来发送。
因而,客户端可以向第一服务器(例如,应用服务器)发出对清单的请求,并且向一个或多个其它服务器(例如,媒体服务器或流媒体服务器)发出对媒体内容的请求。例如在经由CDN(内容分发网络)分发媒体的情况下,发送媒体样本的服务器也可以是不同的。
附录的表1a和1b给出在媒体呈现描述(MPD)中使用新VR描述符来用信号通知与虚拟现实媒体数据的全景图像相关联的相同投影的两个不同示例。可以将相同信息放置在其它类型的流媒体清单中,仅要求适应于该清单所使用的句法或语言(XML、JSON、纯文本等)。
如表1a所示,可以例如使用SupplementalProperty DASH通用描述符或者@schemeIdURI属性例如被设置为新值“urn:mpeg:dash:VR:2016”的EssentialPropertyDASH通用描述符,来进行MPD中的虚拟现实媒体数据表示的信号通知。该值在这里仅是作为示例所提供的。目的是在@schemeIdUri中具有预留唯一值(通常是DASH MPD中的URN),以明确地将该描述符标识为虚拟现实或全向媒体的描述符,从而提供与全景有关的信息。替代实施例在于,代替使用通用DASH描述符,将显式描述符定义为在MPD架构中从DescriptorType继承来的用于传达VR和/或全向信息的预留元素(例如,<ProjectionInfo>元素),该预留元素在清单仅提供VR内容的情况下可以直接放置于MPD级,或者在清单提供VR内容和非VR内容这两者的情况下可以直接放置在一些适应集、表示和子表示级,该显式描述符是描述VR内容的适应集、表示或子表示的子项。表1a中的示例是DASH通用描述符<SupplementalProperty>的扩展的示例,该DASH通用描述符一方面具有新的schemeIdUri值以指示该描述符VR描述符,另一方面具有称为“panorama”的新元素以传达投影标识符、投影类型信息(在示例中为圆柱)、以及表示为参考点和圆柱的顶部之间的角度值(在该示例中为+60°)以及参考点和圆柱的底部之间的角度值(在该示例中为-60°)的垂直视野信息,由此提供垂直维度上的120°的视野。表7a是表1a的替代方案,其中表7a优选投影id、投影类型和视野信息的新属性。表7b是代替创建新属性而使用value属性的另一替代方案。应当注意,在使用EssentialProperty描述符或显式描述符的情况下,这些变体将同样适用。最后,除将视野值表示为分别提供水平视野和垂直视野的两个角度值180°和120°(从参考点看到的角度)外,表7c是与表7b相同的示例。
根据在MPD中描述数个替代全景的一些实施例,可以使用SupplementalProperty描述符和/或EssentialProperty描述符的现有@value属性来指代利用当前表示或适应集(或可能是子表示)来定址的数个替代全景其中之一。
优选使用该信令作为适应集级别的描述符,以指示适应集包含与全景数据有关的媒体数据,例如全景图像或视频。根据替代实施例,可以在表示或子表示级设置该描述符。在如图1c所示将全景进一步分割成多个全景区域以提供对全景区域中的部分、空间区域或子区域的访问时,可以在从要下载的大小、带宽和相应片段方面描述全景区域的表示或子表示中,设置VR描述符。
为了向不能解释VR描述符的客户端提供向后兼容性,使用SupplementalProperty描述符来用信号通知VR描述符与使用EssentialProperty描述符相比可能更适应。实际上,在清单中声明全景、全景区域或全景子区域(例如,与向立方体上的投影的一个面相对应的全景区域)时,内容作者可以让非VR感知流媒体客户端选择、下载并播放该全景、全景区域或全景子区域作为经典2D视频。相反,在捕获投影不能使非VR感知客户端播放任意的全景、全景区域或全景子区域时,将VR描述符放置在EssentialProperty描述符中,使得描述符加上关联内容(父适应集、表示或子表示)被忽略并且可以安全地从MPD中删除。
用信号通知虚拟现实媒体数据表示的SupplementalProperty描述符或EssentialProperty描述符可被称为VR SupplementalProperty或VR EssentialProperty。
根据特定实施例,可以利用新的元素/属性来实现用信号通知全景图像中所使用的投影的类型。例如,全景图像中所使用的投影的类型可以用信号以元素/属性“projection_type=‘cube’”或者用于通知使用立方体投影的“projection_type=‘cubical’”来进行通知,或者如附录的表1a所示用信号以用于通知使用圆柱投影、投影到圆柱上的“type=‘cylindrical’”或type=“cylinder”来进行通知。全景图像中所使用的投影的类型还可以通过使用以下内容来用信号进行通知:现有的@value属性,例如用于通知使用圆锥投影的“value=‘pyramid’”或“value=‘pyramidal’”;或者可能地,如表1b的媒体呈现描述所示,新的专用@schemeIdURI属性值,例如针对各投影类型的一个预留或特定URN,诸如“urn:mpeg:dash:VR:cylinder:2016”(用于通知使用圆柱投影)等,还用于通知VR媒体数据表示(代替不指示使用中的实际投影类型的通用“urn:mpeg:dash:VR:2016”)。在VR描述符中具有这种特定URN可以帮助MPD解析时的流媒体客户端更快地判断是否能够播放全景、全景区域或甚至全景子区域。
根据特定实施例,可以使用通用DASH描述符的现有@value属性来将特定于用信号通知的投影类型的参数表达为值的逗号隔开的列表(例如,表1a中的“value=“60,-60””),或者表达为特定于VR描述符的专用schemeIdUri的新属性(例如,表1b中的“top_pitch=”60”bottom_pitch=”-60”)。在该示例中,特定属性是与圆柱投影的顶部的投影和底部的投影相对应的俯仰角度值(以度为单位表示)。还可以提供附加属性,以提供诸如与min_yaw(向左的最大角度)角度和max_yaw(向右的最大角度)角度(例如,以度为单位)等有关以及与侧倾最小角度值和侧倾最大角度值(例如,以度为单位)等有关的参数。注意,将其它单位用于角度也是可以的,但这需要附加属性来提供角度单位(例如angle_unit=“radian”)。这种类型的参数也可用于例如squished_sphere那样的其它类型的投影。
投影的视点取向(即,参考视点)可以由横摆值、俯仰值和可选的可以以转动度数表示的侧倾值来定义。为了例示,可以通过使用诸如“ref_vp=‘180,0’”等的新元素/属性来用信号通知这些值,以在单个属性中或者在用于仅通知横摆值的“vp_yaw=‘180’”那样的单独属性中分别定义实际的横摆值和俯仰值。如果省略了一个或多个属性,则可以用相应的默认视点值(例如“0,0,0”)来替换这些缺失值。
用信号通知投影类型使DASH客户端能够根据该DASH客户端可以处理的投影类型来选择Representation(表示)、AdaptationSet(适应集)或SubRepresentation(子表示)。绝对取向的信号通知使得DASH客户端能够根据用户所请求的视点来选择Representation、AdaptationSet或SubRepresentation。例如,在用户移动头部或通过专用用户接口在全景中导航时,客户端的自适应逻辑(图3中的附图标记311)可以从MPD(图3中的附图标记305)识别内容的最适当版本。
根据特定实施例,全景描述符可以使用利用例如如表1b所示的@projection_id属性的投影标识符。这使得可以将投影的所有参数(例如,视点和特定参数)与该标识符相关联,并且使用相同投影来向客户端通知全景区域或全景子区域的替代版本。因此,使得可以避免重复捕获投影类型,仅在清单中提供对投影和相关全景表示的参考。
因此,如果在至少两个适应集内使用相同的投影标识符,则与同该投影标识符相关联的投影有关的所有参数可以在一个AdaptationSet中仅被声明一次,并且在这些参数被假定为相同的另一AdaptationSet中(或在另一Representation或SubRepresentation中)被省略。如果使用相同的投影和/或视点在AdaptationSets、Representations或SubRepresentations中复制参数,则推荐在所有这些AdaptationSets、Representations或SubRepresentations中使用投影参数和/或视点参数的相同值,使得客户端可以明确地关联这些参数作为同一全景的一部分。
可选地,全景描述符还可以使用@panorama_id属性与全景标识符相关联,从而在MPD中描述数个全景的情况下在不同的全景版本之间区分。特别地,共享相同全景标识符值的两个表示表明这些表示是彼此的替代。还可选地,如果在同一全景内使用数个全景图像,则全景描述符也可以使用@panorama_image_id与全景图像索引相关联。后者特别适用于在宽视图中沿着给定导航路径提供沉浸式环境的情况。在数个路径位置处生成数个全景图像。
如上所述,给定的全景图像可以包含特定于投影类型的数个区域。因此,应当提供与各全景区域有关的信息。这可以通过使用新的全景区域描述符来实现。
根据实施例,使用VR SupplementalProperty或VR EssentialProperty的Panorama元素中所包含的PanoramaRegion元素来进行全景区域的描述。替代实施例在于:将PanoramaRegion的该描述符声明为特定描述符,即作为专用于传达与全景区域有关的描述性信息的特定MPD元素,例如在MPD架构中继承于DescriptorType并且在适应集、表示或子表示级声明的<PanoramaRegion>。
根据实施例,在包含相应全景图像的描述的AdaptationSet、Representation或SubRepresentation中描述所有的全景区域。可选地,在描述全景图像但不包含该全景图像的任何媒体片段的空AdaptationSet、Representation或SubRepresentation中描述全景区域。然后,这种AdaptationSet、Representation或SubRepresentation的目的是详尽地声明可用区域的列表,使得实际包含媒体片段的其它AdaptationSet、Representation或SubRepresentation可以参考该列表以获得与可用的全景区域有关的信息。
还根据实施例,如果在MPD中不存在描述完整全景图像的AdaptationSet、Representation或SubRepresentation,则如附录的表4a所示,仍可以在包含一个(或多个)全景区域的视频的各AdaptationSet、Representation或SubRepresentation内描述全景区域。
还根据实施例,在描述元数据轨(例如使用全向媒体应用格式(OMAF)的元数据)的AdaptationSet、Representation或SubRepresentation中描述VR描述符和全景区域描述符。这要求图1a中的内容打包步骤141反映MPD清单中的OMAF轨和一个或多个视频轨之间所声明的关联。如附录的表8所示,这可以通过在分别指向MPD中的一个或多个视频轨的表示的、描述MPD中的OMAF轨的表示中声明associationId和associationType这两个属性来实现。associationType属性可以采用“cdsc”值来指示MPD中的OMAF轨的元数据向MPD中所声明的一个或多个视频表示提供附加描述内容。
在媒体打包步骤141期间,服务器例如通过检查供流传输用的要打包的视频轨的样本条目是否是类型“resv”,优选确认媒体文件的文件格式信息以判断是否存在一些解码器后要求信息。如果是这种情况,则媒体打包模块对可提供用于构建全景的捕获投影类型的信息的方案信息框进行解析。如果存在这样的信息(如可利用一个OMAF轨的情况那样),则媒体打包模块使用该信息来在描述全景的AdaptationSet、Representation或SubRepresentation中设置VR描述符的值。再次地,提取该信息并在流媒体清单中暴露该信息使得流媒体客户端可以通过它们的自适应逻辑快速识别视频AdaptationSet、Representation或SubRepresentation是否是供下载和播放的候选。在OMAF元数据轨的情况下,由于客户端必须跟随OMAF Representation的associationId来找到提供全景图像的描述的Representation,因此该操作不是那么直接。
根据实施例,在与全景描述相同的级用信号通知全景区域描述符(适应集、表示或子表示)。可选地,在与全景区域描述相同的级用信号通知全景区域描述符(适应集、表示或子表示)。第一个解决方案呈现了使得客户端能够在解析单个元素期间确定各区域大小和区域数量(即,不需要解析各全景区域描述)的优点。在客户端不使用一些全景区域的情况下,第二个解决方案需要更少的MPD解析操作。
在立体表示的情况下,如果各视图包含在不同的全景图像中(即,在不同的AdaptationSet中),则可以直接使用DASH多视图方案来利用应用于类型视频的ContentComponent元素或AdaptationSet元素的Role描述符来用信号通知各视图的作用。还可以通过使得能够将Role描述符应用于PanoramaRegion以支持左眼和右眼表示处于相同图像/视频内容的两个部分中的情况,来扩展DASH多视图方案。可选地,PanoramaRegion可能包含新的可选属性来定义立体信息(例如“stereo=‘left’”,“stereo=‘none’”[default])
附录的表2a、2b、2c和2d示出使用VR描述符的四个AdaptationSet描述符。
根据表2a中给出的示例,在全景区域描述符中,使用在全景图像的视频的参考中以像素表示的四个参数来用信号通知适应集级处所描述的视频中的区域的空间位置。这些参数包括(全景视频中的)区域的左上角的(x,y)坐标以及该区域的宽度和高度(或者可选地该区域的右下角的x、y坐标)。可以如表2a所示使用整数值的逗号隔开的列表(例如“position=‘0,200,200,200’”)在PanoramaRegion元素的新@position属性中描述这些参数。根据实施例,如果没有提供该区域的空间位置,则这意味着声明了该区域的适应集的视频完全被该区域覆盖。
可选地,在要定址特定全景图像的情况下,可以使用第五参数来指示全景图像索引(在全景包含多个全景图像并且没有提供第五参数的情况下,这意味着涉及所有的全景图像)。
各全景区域描述符与取决于参考全景图像的投影类型的区域类型相关联。各全景区域描述符如表2a所示由区域标识符的特定值(例如“front”、“top”、“right”等)指定,或者由使用数值(如例如在OMAF中提出的值的列表那样)的预定义区域索引指定。
根据实施例,可以将PanoramaRegion描述符声明为全景描述符的元素(如表2a所示)。可选地,可以在VR SupplementalProperty或VR EssentialProperty或任何显式描述符中直接声明PanoramaRegion。在这种情况下,利用属于PanoramaRegion的属性来标识参考全景图像。
如表2b所示,全景区域描述符可以通过使用其标识符(例如“projection_id=‘1’”)、或者可选地通过使用全景的标识符(在MPD中存在多于一个的全景的情况下)和全景图像的标识符(在该全景的图像多于一个的情况下)(例如“panorama_id=‘1’,panorama_image_id=‘0’”),来与参考全景投影相关联。可选地,如果将PanoramaRegion描述符声明为全景的子元素,则不需要投影标识符。然后,例如在表2a中所示,全景区域参考其嵌入的Panorama。
根据实施例,如果使用PanoramaRegion描述符但不可用Panorama的AdaptationSet表示,则如表2c所示,可以利用属于PanoramaRegion的属性来直接标识全景投影类型。如果如表2d所示使用专用于投影的方案,则不需要该操作。
同样,如果在各种AdaptationSets、Representations或SubRepresentations中使用PanoramaRegion描述符、但描述全景的AdaptationSet、Representation或SubRepresentation不可用,则例如在表2c和2d中所示,仍使用projection_id来指示全景区域正在参考同一全景图像。这使得可以将这些全景区域关联为与同一全景有关(即使在不可用的情况下)。还可以在所选择的描述符(DASH通用描述符或显式描述符)的新属性中、或者在作为连续值的列表的现有“value”属性中传达由表2a、2b和2c所示的新描述符带来的所有描述性信息。例如,表9a提供与表2a相同的信息,但具有全景区域的新属性“region_list”。替代方案将使用与区域数量一样多的DASH描述符,从而将区域描述信息放置在“value”属性中,使得描述符不能被视为等同,由此迫使播放器处理所有的这些描述符(而不是集合中的仅一个)。表9b提供这样的示例。
DASH标准引入了在适应集或子表示级处表达MPD中的媒体内容成分之间的空间关系的能力。其在于:使用@schemeIdURI等于“urn:mpeg:dash:srd:2014”的SupplementalProperty或EssentialProperty描述符。@value属性包括包含以下参数的SRD(空间关系描述)参数的值的逗号隔开列表:
-source_id提供媒体内容的来源的标识符。可以比较在Period内共享被称为“source_id值”的相同值的不同SRD中所使用的参数(object_x、object_y、object_width、object_height),以确定两个表示在空间上彼此相关;
-object_x:使用该描述符来提供AdaptationSets或SubRepresentations中描述的视频的左上角在该SRD描述符所定义的参考空间中的水平位置;
-object_y:使用该描述符来提供AdaptationSets或SubRepresentations中描述的视频的左上角在该SRD描述符所定义的参考空间中的垂直位置;
-object_width:使用该描述符来提供AdaptationSets或SubRepresentations中所描述的视频在该SRD描述符所定义的参考空间中的宽度;
-object_height:使用该描述符来提供AdaptationSets或SubRepresentations中所描述的视频在该SRD描述符所定义的参考空间中的高度;
-total_width:提供具有source_id值相同的SRD的AdaptationSets或SubRepresentations中所描述的视频的沿着x轴的最大范围。在不存在的情况下,将该值设置为具有相同source_id值的SRD注释的total_width值。对于给定的source_id值,应当指定至少一个total_width值;
-total_height:提供具有source_id值相同的SRD的AdaptationSets或SubRepresentations中所描述的视频的沿着y轴的最大范围。在不存在的情况下,将该值设置为具有相同source_id值的SRD注释的total_height值。对于给定的source_id值,应当指定至少一个total_height值;
-spatial_set_id:提供具有相同source_id值的一组AdaptationSets或SubRepresentations的标识符。spatial_set_id参数可用于指示一组AdaptationSets或SubRepresentations形成一组无间隙的非重叠或连续视频,或者是同一可分级层的一部分;
object_x和object_y参数(分别为object_width和object_height)表示利用source_id参数所标识的与来源相关联的坐标系中的关联AdaptationSets或SubRepresentations的2D位置(分别为2D大小)。该坐标系可以使用任意原点。根据特定实施例,x轴被定向成从左向右并且y轴被定向成从上向下。共享相同source_id值的所有SRD具有相同的原点和轴取向。
total_width和total_height值定义该坐标系中的参考空间。object_x、object_y、object_width和object_height参数的值与total_width和total_height参数的值有关。可以在考虑参考空间的大小之后,即在将object_x和object_width值除以各个描述符的total_width值、并且将object_y和object_height值除以各个描述符的total_height值之后,来对共享相同source_id值的SRD的位置(object_x,object_y)和大小(object_width,object_height)进行比较。
附录的表3给出SRD描述符的示例,其中视频包括具有任意单位的参考空间中的4个区块(AS1~AS4)。为了例示,仅示出了区块AS1和AS2的MPD描述。
第一适应集对应于区块AS1。该第一适应集包括分辨率为1920×1080个像素的一个视频表示。SRD描述符(使用SupplementalProperty描述符)指定出:该视频是source_id等于1的区块,并且该视频位于参考空间的左上角(坐标object_x=0和object_y=0)。视频的大小表示各方向上的参考空间的一半(object_width和object_height覆盖参考空间的total_width和total_height的200个任意单位中的100个任意单位)。可以从SRD描述符推断出整个参考空间确实代表4k2k视频(3840×2160个像素)。
根据SRD描述符,可以推断出第二适应集对应于区块AS2。这里使用EssentialProperty描述符来引入该SRD描述符,其中EssentialProperty描述符指定出:区块与同第一适应集相同的参考空间(相同的source_id=1)有关,并且该区块位于x轴的中点(整个200上的值100)和y轴的基部(值0)。
SupplementalProperty描述符和EssentialProperty描述符之间的区别在于:在SRD:“urn:mpeg:dash:srd:2014”的情况下,父元素(AdaptationSet、Representation或SubRepresentation)由不理解schemeIdURI属性的值的客户端处理。实际上,在EssentialProperty描述符的情况下,如果客户端不理解schemeIdUri,则客户端必须忽略schemeIdUri以及包含该描述符的父元素。在SupplementalProperty的情况下,客户端仅预期忽略描述符本身,但客户端仍可以使用父元素。
因此,在MPD中使用SRD描述符的情况下,推荐依赖于至少一个SupplementalProperty描述符以实现与不理解空间关系描述的客户端的向后兼容性。
附录中的表4示出可以如何将全景描述符和全景区域描述符与空间关系描述(SRD)组合到MPD中。如图所示,可以按关注区域(ROI)分割全景图像(例如,<SupplementalProperty schemeIdUri=“urn:mpeg:dash:srd:2014”value=“1,0,0,2120,1080,2120,1080”/>)或者可选地全景区域(例如,<SupplementalProperty schemeIdUri=“urn:mpeg:dash:srd:2014”value=“2,0,0,1920,1080,1920,1080”/>)。因此,可以使用SRD描述符来在全景图像(例如,<SupplementalProperty schemeIdUri=“urn:mpeg:dash:srd:2014”value=“1,200,0,1920,1080,2120,1080”/>)或者可选地在全景区域中(例如,<EssentialProperty schemeIdUri=“urn:mpeg:dash:srd:2014”value=“2,0,0,960,540,1920,1080”/>)指定ROI。应当注意,VR描述符不会影响或修改SRD描述符。两个描述符是正交的并且很好地组合以提供向全景区域或全景子区域的空间访问。表11是具有归一化坐标的来自立方体投影的全景区域的替代描述。投影ID隐含地是SRD source_id。经由VR描述符提供投影类型信息。
附录中的表5a和5b提供将VR描述符连同SRD一起使用的替代示例。
如表5a所示,呈现了与表4中所呈现的嵌套SRD使用相同的嵌套SRD使用。然而,嵌套SRD使用不包括全景内的区域的任何声明。在该示例中,不使用projection_id,而是可以使用SRD描述符的source_id来使全景区域与全景相关。在这样的实施例中,对于经典SRD,在object_width=total_width并且object_height=total_height的情况下,经由SRD参数值来标识全景。在本实施例中,VR描述符和经典SRD描述符组合,以提供对全景区域(或部分或空间部分)的空间访问并且还使全景与其全景区域相关联。
在表5b所示的替代实施例中,通过使用例如等于“urn:mpeg:dash:srd:2016”的新@shemeIdUri值来扩展SRD方案,以支持VR内容。在本实施例中,可以使用该新方案,使得SRD描述符处理空间关系描述以及VR或全向媒体的描述这两者。@value属性保持与2014SRD方案相同的格式化/参数,并且用于提取(可能对应于或不对应于全景区域或全景子区域的)关注全景区域。将与针对全景所描述的投影类型属性相同的投影类型属性例如作为新属性添加到该新SRD方案中。在该属性存在于MPD中的情况下,该属性用信号通知SRD与全景图像有关,否则SRD与经典2D视频有关。根据实施例,不添加@projection_id属性:而是使用SRD的标识符(@value的第一个参数)来标识全景。还使用SRD 2016方案但使用例如新@region_id属性来用信号通知区域,以指定哪个区域是投影的相关区域。
附录中的表6例示:如何使用嵌套SRD标识符(例如,0.1和0.2)来扩展新SRD方案以使得能够进行全景内的区域的前向声明;以及如何可将嵌套SRD标识符用于针对子区域描述的全景(例如,<SupplementalPropertyschemeIdUri=“urn:mpeg:dash:srd:2016”value=“0.1,320,0,320,270,1920,1080”/>)中的绝对坐标、或者用于与例如全景区域(例如,<SupplementalProperty schemeIdUri=“urn:mpeg:dash:srd:2016”value=“0.2,0,0,320,270,640,540”/>)有关的坐标。
如表10a的示例示出,用于虚拟现实的SRD描述符的另一可能扩展是在SRD内直接描述投影ID和/或投影的类型和/或找到全景区域的位置。根据投影的类型,如表10b的示例示出,位置应当被假定为像素或归一化像素(投影到立方体或锥体上或者未使用)、或被假定为squished_sphere(圆柱)的yaw_start、yaw_end、pitch_start、pitch_end角度。可选地,根据投影类型,可以提供区域标识信息作为最后值:对于全景为“all”,对于立方体的面为“front”或“top”或“bottom”。
根据用户视图或用户导航而从访问方面对PanoramaRegion的描述的另一替代方案涉及:代替具有或不具有SRD的空间坐标(例如,附录的表4的“position”属性),使用如附录的表10c所示表示为横摆角度、俯仰角度和可选的侧倾角度的范围值,并且(针对具有yaw=0、pitch=0和roll=0角度的宽视图中的参考点)如图1d那样描述视点。可以利用至少两个角度(横摆角度和俯仰角度)以及可选的给出图1d的灰色区域的中心点的位置的侧倾角度、给出图1d中的灰色区域的宽度和高度的Representation的宽度属性和高度属性,来给出当前视点。对于客户端而言,这将避免将通过头部运动产生的角度映射到空间坐标中以用于检索适当的全景区域。作为代替,客户端可以从开始显示媒体的参考视点来计算累积角度,并且使用yaw、pitch和可选的roll角度值来直接匹配该描述符所提供的角度值。这些描述符可以由媒体打包单元141在准备媒体以供流传输时通过解析OMAF轨的值来设置。
图5是用于实现本发明的一个或多个实施例的计算装置500的示意框图。计算装置500可以是诸如微计算机、工作站或轻型便携式装置等的装置。计算装置500包括通信总线,其中该通信总线连接有以下组件:
-诸如微处理器等的中央处理单元(CPU)501;
-随机存取存储器(RAM)502,用于存储本发明实施例的方法的可执行代码以及寄存器,其中这些寄存器被配置为记录实现用于读取和写入清单以及/或者对视频进行编码以及/或者读取或生成采用给定文件格式的数据的方法所需的变量和参数,其中RAM 502的存储器容量例如可以利用连接至扩展端口的可选RAM来扩展;
-只读存储器(ROM)503,用于存储实现本发明实施例所用的计算机程序;
-网络接口504,其通常连接至发送或接收要处理的数字数据所经由的通信网络。网络接口504可以是单个网络接口、或者包括不同的网络接口的集合(例如,有线接口和无线接口或者不同种类的有线接口或无线接口)。在CPU 501中运行的软件应用程序的控制下,将数据写入网络接口以供发送或者从网络接口读取数据以供接收;
-用户接口(UI)505,用于从用户接收输入或向用户显示信息;
-硬盘(HD)506;
-I/O模块507,用于相对于诸如视频源或显示器等的外部装置进行数据的接收/发送。
可执行代码可以存储在只读存储器503中、硬盘506上或者例如盘等的可移除数字介质上。根据变形例,程序的可执行代码可以在执行之前利用通信网络经由网络接口504来接收,从而存储在通信装置500的诸如硬盘506等的存储部件其中之一内。
中央处理单元501被配置为控制和引导根据本发明实施例的程序的指令或软件代码的一部分的执行,其中这些指令存储在上述存储部件其中之一内。在通电之后,CPU 501例如能够在从程序ROM 503或硬盘(HD)506加载了来自主RAM存储器502的与软件应用程序有关的指令之后,执行这些指令。这种软件应用程序在由CPU 501执行的情况下,使得进行上述附图所示的流程图的各步骤。
在本实施例中,该设备是使用软件来实现本发明的可编程设备。然而,可选地,本发明可以以硬件形式(例如,以专用集成电路或ASIC的形式)来实现。
尽管以上已经参考具体实施例说明了本发明,但本发明不限于这些具体实施例,并且本领域技术人员将明白存在于本发明的范围内的变形。
例如,本发明可以嵌入用作TV或多媒体显示器的远程控制器的如照相机、智能电话、头戴式显示器或平板终端那样的装置中,以例如放大到特定关注区域上。还可以从相同装置使用本发明,以通过选择特定关注区域来获得多媒体呈现的个性化浏览体验。用户根据这些装置和方法的另一用途是与其它所连接的装置共享他所喜好的视频中的一些选中的子部分。本发明还可用在智能电话或平板终端中以监视在处于监控下的建筑物的特定区域中发生了什么,只要监控照相机支持根据本发明的用于提供数据的方法即可。
在参考仅以示例方式给出且并不意图限制本发明范围的前述例示实施例的情况下,许多其它修改和改变对本领域普通技术人员是不言自明的,其中所述范围仅由所附权利要求书来确定。特别地,在适当情况下,可以互换来自不同实施例的不同特征。
附录
表1a
表1b
表2a
表2b
表2c
表2d
表3
表4
表5a
表5b
表6
表7a
表7b
表7c
表8
表9a
表9b
表10a
表10b
表10c
表11。
Claims (22)
1.一种用于接收符合全向媒体格式的媒体数据的方法,所述方法包括:
从服务器接收媒体呈现描述,所述媒体呈现描述符合MPEG-DASH标准并且包括:(i)媒体数据的一个或多个片段中的各片段的统一资源标识符;(ii)用于描述媒体数据的所述一个或多个片段中的各片段的媒体信息;以及(iii)用信号通知如所述媒体信息所描述的媒体数据是根据所述全向媒体格式的全向数据的至少一个描述符,所述描述符包括至少一个元素,所述至少一个元素用于提供宽视图到2D图像上的投影的信息以获得所述媒体数据;
将用以通过使用所述媒体呈现描述的所述统一资源标识符至少之一来请求媒体数据的至少一个片段的至少一个请求消息发送至所述服务器,所请求的至少一个片段是根据所述至少一个描述符来选择的;以及
根据所述至少一个请求消息,从所述服务器接收媒体数据的所述至少一个片段。
2.根据权利要求1所述的方法,其中,所述至少一个描述符包括“@schemeIdUri”属性,所述“@schemeIdUri”属性用信号通知所述媒体数据是全向数据。
3.根据权利要求1所述的方法,其中,所述至少一个元素包括投影类型信息,所述投影类型信息表示符合所述全向媒体格式的媒体数据的投影的类型。
4.根据权利要求3所述的方法,其中,利用所述投影类型信息所表示的类型包括立方体投影、圆柱投影和圆锥投影至少之一。
5.根据权利要求4所述的方法,其中,所述投影类型信息包括在具有特定“@schemeIdUri”属性的所述至少一个描述符中,所述至少一个描述符是EssentialProperty描述符。
6.根据权利要求1所述的方法,其中,符合所述全向媒体格式的媒体数据包括图像,所述图像至少之一是全景图像,所述全景图像包括单个全景区域或多个全景区域、或者是一组不同的全景区域。
7.一种用于提供符合全向媒体格式的媒体数据的方法,所述方法包括:
向客户端发送媒体呈现描述,所述媒体呈现描述符合MPEG-DASH标准并且包括:(i)媒体数据的一个或多个片段中的各片段的统一资源标识符;(ii)用于描述媒体数据的所述一个或多个片段中的各片段的媒体信息;以及(iii)用信号通知如所述媒体信息所描述的媒体数据是根据所述全向媒体格式的全向数据的至少一个描述符,所述描述符包括至少一个元素,所述至少一个元素用于提供宽视图到2D图像上的投影的信息以获得所述媒体数据;
从所述客户端接收用以基于所述媒体呈现描述的所述统一资源标识符至少之一来请求媒体数据的至少一个片段的至少一个请求消息,所请求的至少一个片段是通过所述客户端根据所述至少一个描述符来选择的;以及
根据所述至少一个请求消息,将媒体数据的所述至少一个片段提供至所述客户端。
8.根据权利要求7所述的方法,其中,所述至少一个元素包括投影类型信息,所述投影类型信息表示符合所述全向媒体格式的媒体数据的投影的类型。
9.根据权利要求8所述的方法,其中,利用所述投影类型信息所表示的类型包括立方体投影、圆柱投影和圆锥投影至少之一。
10.根据权利要求7所述的方法,其中,符合所述全向媒体格式的媒体数据包括图像,所述图像至少之一是全景图像,所述全景图像包括单个全景区域或多个全景区域、或者是一组不同的全景区域。
11.一种客户端装置,用于接收符合全向媒体格式的媒体数据,所述客户端装置包括:
硬件处理器;以及
存储器,用于存储一个或多个程序,所述一个或多个程序被配置成由所述硬件处理器执行,所述一个或多个程序包括用于进行以下操作的指令:
从服务器接收媒体呈现描述,所述媒体呈现描述符合MPEG-DASH标准并且包括:(i)媒体数据的一个或多个片段中的各片段的统一资源标识符;(ii)用于描述媒体数据的所述一个或多个片段中的各片段的媒体信息;以及(iii)用信号通知如所述媒体信息所描述的媒体数据是根据所述全向媒体格式的全向数据的至少一个描述符,所述描述符包括至少一个元素,所述至少一个元素用于提供宽视图到2D图像上的投影的信息以获得所述媒体数据;
将用以通过使用所述媒体呈现描述的所述统一资源标识符至少之一来请求媒体数据的至少一个片段的至少一个请求消息发送至所述服务器,所请求的至少一个片段是根据所述至少一个描述符来选择的;以及
根据所述至少一个请求消息,从所述服务器接收媒体数据的所述至少一个片段。
12.根据权利要求11所述的客户端装置,其中,所述至少一个元素包括投影类型信息,所述投影类型信息表示符合所述全向媒体格式的媒体数据的投影的类型。
13.根据权利要求12所述的客户端装置,其中,利用所述投影类型信息所表示的类型包括立方体投影、圆柱投影和圆锥投影至少之一。
14.一种服务器装置,用于提供符合全向媒体格式的媒体数据,所述服务器装置包括:
硬件处理器;以及
存储器,用于存储一个或多个程序,所述一个或多个程序被配置成由所述硬件处理器执行,所述一个或多个程序包括用于进行以下操作的指令:
向客户端发送媒体呈现描述,所述媒体呈现描述符合MPEG-DASH标准并且包括:(i)媒体数据的一个或多个片段中的各片段的统一资源标识符;(ii)用于描述媒体数据的所述一个或多个片段中的各片段的媒体信息;以及(iii)用信号通知如所述媒体信息所描述的媒体数据是根据所述全向媒体格式的全向数据的至少一个描述符,所述描述符包括至少一个元素,所述至少一个元素用于提供宽视图到2D图像上的投影的信息以获得所述媒体数据;
从所述客户端接收用以基于所述媒体呈现描述的所述统一资源标识符至少之一来请求媒体数据的至少一个片段的至少一个请求消息,所请求的至少一个片段是通过所述客户端根据所述至少一个描述符来选择的;以及
根据所述至少一个请求消息,将媒体数据的所述至少一个片段提供至所述客户端。
15.根据权利要求14所述的服务器装置,其中,所述至少一个元素包括投影类型信息,所述投影类型信息表示符合所述全向媒体格式的媒体数据的投影的类型。
16.根据权利要求15所述的服务器装置,其中,利用所述投影类型信息所表示的类型包括立方体投影、圆柱投影和圆锥投影至少之一。
17.一种非暂时性计算机可读存储介质,其存储程序,所述程序用于使计算机执行方法,所述方法包括:
从服务器接收媒体呈现描述,所述媒体呈现描述符合MPEG-DASH标准并且包括:(i)媒体数据的一个或多个片段中的各片段的统一资源标识符;(ii)用于描述媒体数据的所述一个或多个片段中的各片段的媒体信息;以及(iii)用信号通知如所述媒体信息所描述的媒体数据是根据全向媒体格式的全向数据的至少一个描述符,所述描述符包括至少一个元素,所述至少一个元素用于提供宽视图到2D图像上的投影的信息以获得所述媒体数据;
将用以通过使用所述媒体呈现描述的所述统一资源标识符至少之一来请求媒体数据的至少一个片段的至少一个请求消息发送至所述服务器,所请求的至少一个片段是根据所述至少一个描述符来选择的;以及
根据所述至少一个请求消息,从所述服务器接收媒体数据的所述至少一个片段。
18.根据权利要求17所述的非暂时性计算机可读存储介质,其中,所述至少一个元素包括投影类型信息,所述投影类型信息表示符合所述全向媒体格式的媒体数据的投影的类型。
19.根据权利要求18所述的非暂时性计算机可读存储介质,其中,利用所述投影类型信息所表示的类型包括立方体投影、圆柱投影和圆锥投影至少之一。
20.一种非暂时性计算机可读存储介质,其存储程序,所述程序用于使计算机执行方法,所述方法包括:
向客户端发送媒体呈现描述,所述媒体呈现描述符合MPEG-DASH标准并且包括:(i)媒体数据的一个或多个片段中的各片段的统一资源标识符;(ii)用于描述媒体数据的所述一个或多个片段中的各片段的媒体信息;以及(iii)用信号通知如所述媒体信息所描述的媒体数据是根据全向媒体格式的全向数据的至少一个描述符,所述描述符包括至少一个元素,所述至少一个元素用于提供宽视图到2D图像上的投影的信息以获得所述媒体数据;
从所述客户端接收用以基于所述媒体呈现描述的所述统一资源标识符至少之一来请求媒体数据的至少一个片段的至少一个请求消息,所请求的至少一个片段是通过所述客户端根据所述至少一个描述符来选择的;以及
根据所述至少一个请求消息,将媒体数据的所述至少一个片段提供至所述客户端。
21.根据权利要求20所述的非暂时性计算机可读存储介质,其中,所述至少一个元素包括投影类型信息,所述投影类型信息表示符合所述全向媒体格式的媒体数据的投影的类型。
22.根据权利要求21所述的非暂时性计算机可读存储介质,其中,利用所述投影类型信息所表示的类型包括立方体投影、圆柱投影和圆锥投影至少之一。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1609056.5A GB2550587B (en) | 2016-05-23 | 2016-05-23 | Method, device, and computer program for adaptive streaming of virtual reality media content |
GB1609056.5 | 2016-05-23 | ||
PCT/EP2017/062050 WO2017202699A1 (en) | 2016-05-23 | 2017-05-18 | Method, device, and computer program for adaptive streaming of virtual reality media content |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109155874A CN109155874A (zh) | 2019-01-04 |
CN109155874B true CN109155874B (zh) | 2022-01-11 |
Family
ID=56369829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780032219.1A Active CN109155874B (zh) | 2016-05-23 | 2017-05-18 | 虚拟现实媒体内容的自适应流传输的方法、装置和计算机程序 |
Country Status (8)
Country | Link |
---|---|
US (1) | US20190141359A1 (zh) |
EP (1) | EP3466093B1 (zh) |
JP (2) | JP2019519149A (zh) |
KR (1) | KR102247399B1 (zh) |
CN (1) | CN109155874B (zh) |
GB (3) | GB2550587B (zh) |
RU (1) | RU2711591C1 (zh) |
WO (1) | WO2017202699A1 (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2524531B (en) * | 2014-03-25 | 2018-02-07 | Canon Kk | Methods, devices, and computer programs for improving streaming of partitioned timed media data |
CN108028948B (zh) * | 2015-08-07 | 2021-05-07 | 联发科技股份有限公司 | 用于多媒体应用的比特流随机访问与同步的方法及装置 |
KR102170550B1 (ko) * | 2016-05-24 | 2020-10-29 | 노키아 테크놀로지스 오와이 | 미디어 콘텐츠를 인코딩하는 방법, 장치 및 컴퓨터 프로그램 |
US10587934B2 (en) * | 2016-05-24 | 2020-03-10 | Qualcomm Incorporated | Virtual reality video signaling in dynamic adaptive streaming over HTTP |
KR102358757B1 (ko) | 2016-08-25 | 2022-02-07 | 엘지전자 주식회사 | 전방향 비디오를 전송하는 방법, 전방향 비디오를 수신하는 방법, 전방향 비디오 전송 장치, 전방향 비디오 수신 장치 |
US11532128B2 (en) * | 2017-03-23 | 2022-12-20 | Qualcomm Incorporated | Advanced signaling of regions of interest in omnidirectional visual media |
US20190104326A1 (en) * | 2017-10-03 | 2019-04-04 | Qualcomm Incorporated | Content source description for immersive media data |
GB201717011D0 (en) * | 2017-10-17 | 2017-11-29 | Nokia Technologies Oy | An apparatus a method and a computer program for volumetric video |
WO2019107175A1 (ja) * | 2017-11-30 | 2019-06-06 | ソニー株式会社 | 送信装置、送信方法、受信装置および受信方法 |
EP3734982A4 (en) | 2018-01-12 | 2020-11-25 | Sony Corporation | INFORMATION PROCESSING DEVICE AND METHOD |
JP7401453B2 (ja) * | 2018-04-05 | 2023-12-19 | ヴィド スケール インコーポレイテッド | 全方位ビデオに対する視点メタデータ |
CN110956583B (zh) * | 2018-09-26 | 2022-05-10 | 华为技术有限公司 | 球面图像处理方法、装置及服务器 |
WO2020063850A1 (zh) * | 2018-09-27 | 2020-04-02 | 华为技术有限公司 | 一种处理媒体数据的方法、终端及服务器 |
CN111263191B (zh) * | 2018-11-30 | 2023-06-27 | 中兴通讯股份有限公司 | 视频数据的处理方法、装置、相关设备及存储介质 |
US11403784B2 (en) * | 2019-03-19 | 2022-08-02 | Tencent America LLC | Method and apparatus for tree-based point cloud compression (PCC) media stream using moving picture experts group (MPEG)-dynamic adaptive streaming over HTTP (DASH) |
GB2585052B (en) * | 2019-06-26 | 2023-07-26 | Canon Kk | Method and apparatus for encapsulating panorama images in a file |
US20220303331A1 (en) * | 2019-08-08 | 2022-09-22 | Intel Corporation | Link performance prediction and media streaming technologies |
WO2021130355A1 (en) * | 2019-12-24 | 2021-07-01 | Koninklijke Kpn N.V. | Video processing device and manifest file for video streaming |
CN113542907B (zh) * | 2020-04-16 | 2022-09-23 | 上海交通大学 | 多媒体数据收发方法、系统、处理器和播放器 |
US11895170B2 (en) * | 2021-03-09 | 2024-02-06 | Cisco Technology, Inc. | Synchronicity for virtual reality/augmented reality interactive sessions in wireless networks |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102217322A (zh) * | 2011-05-27 | 2011-10-12 | 华为技术有限公司 | 媒体发送方法、媒体接收方法和客户端及系统 |
WO2015197815A1 (en) * | 2014-06-27 | 2015-12-30 | Koninklijke Kpn N.V. | Determining a region of interest on the basis of a hevc-tiled video stream |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1093711C (zh) * | 1998-02-06 | 2002-10-30 | 财团法人工业技术研究院 | 全景图象式虚拟现实播放系统和方法 |
JP2001285832A (ja) * | 2000-01-24 | 2001-10-12 | Matsushita Electric Ind Co Ltd | データ受信装置,データ受信方法,データ伝送方法,およびデータ記憶媒体 |
JP2003141562A (ja) * | 2001-10-29 | 2003-05-16 | Sony Corp | 非平面画像の画像処理装置及び画像処理方法、記憶媒体、並びにコンピュータ・プログラム |
US7149367B2 (en) * | 2002-06-28 | 2006-12-12 | Microsoft Corp. | User interface for a system and method for head size equalization in 360 degree panoramic images |
JP5016541B2 (ja) * | 2008-04-01 | 2012-09-05 | 富士フイルム株式会社 | 画像処理装置および方法並びにプログラム |
CN102056015B (zh) * | 2009-11-04 | 2012-12-05 | 沈阳迅景科技有限公司 | 一种全景虚拟现实漫游中的流媒体应用方法 |
US9590814B2 (en) * | 2011-08-01 | 2017-03-07 | Qualcomm Incorporated | Method and apparatus for transport of dynamic adaptive streaming over HTTP (DASH) initialization segment description fragments as user service description fragments |
FR3004881B1 (fr) * | 2013-04-19 | 2015-04-17 | Kolor | Procede de generation d'un flux video de sortie a partir d'un flux video large champ |
EP2824885B1 (en) * | 2013-07-12 | 2019-01-23 | Provenance Asset Group LLC | A manifest file format supporting panoramic video |
US20150130814A1 (en) * | 2013-11-11 | 2015-05-14 | Amazon Technologies, Inc. | Data collection for multiple view generation |
GB2524531B (en) * | 2014-03-25 | 2018-02-07 | Canon Kk | Methods, devices, and computer programs for improving streaming of partitioned timed media data |
US10694192B2 (en) * | 2014-06-27 | 2020-06-23 | Koninklijke Kpn N.V. | HEVC-tiled video streaming |
US10230781B2 (en) * | 2014-07-01 | 2019-03-12 | Futurewei Technologies, Inc. | Client behavior control in adaptive streaming |
EP4020983A1 (en) * | 2014-12-31 | 2022-06-29 | Nokia Technologies Oy | An apparatus, a method and a computer program for video coding and decoding |
-
2016
- 2016-05-23 GB GB1609056.5A patent/GB2550587B/en active Active
- 2016-05-23 GB GBGB2108749.9A patent/GB202108749D0/en not_active Ceased
- 2016-05-23 GB GB1914981.4A patent/GB2578227B/en active Active
-
2017
- 2017-05-18 KR KR1020187036178A patent/KR102247399B1/ko active IP Right Grant
- 2017-05-18 CN CN201780032219.1A patent/CN109155874B/zh active Active
- 2017-05-18 EP EP17725564.3A patent/EP3466093B1/en active Active
- 2017-05-18 RU RU2018142793A patent/RU2711591C1/ru active
- 2017-05-18 WO PCT/EP2017/062050 patent/WO2017202699A1/en unknown
- 2017-05-18 JP JP2018559980A patent/JP2019519149A/ja active Pending
- 2017-05-18 US US16/099,325 patent/US20190141359A1/en not_active Abandoned
-
2021
- 2021-12-13 JP JP2021201712A patent/JP7223106B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102217322A (zh) * | 2011-05-27 | 2011-10-12 | 华为技术有限公司 | 媒体发送方法、媒体接收方法和客户端及系统 |
WO2015197815A1 (en) * | 2014-06-27 | 2015-12-30 | Koninklijke Kpn N.V. | Determining a region of interest on the basis of a hevc-tiled video stream |
Also Published As
Publication number | Publication date |
---|---|
KR20190008325A (ko) | 2019-01-23 |
GB2550587B (en) | 2020-05-20 |
WO2017202699A1 (en) | 2017-11-30 |
KR102247399B1 (ko) | 2021-05-03 |
GB201609056D0 (en) | 2016-07-06 |
RU2711591C1 (ru) | 2020-01-17 |
GB2550587A (en) | 2017-11-29 |
EP3466093B1 (en) | 2021-12-01 |
EP3466093A1 (en) | 2019-04-10 |
GB201914981D0 (en) | 2019-11-27 |
GB2578227B (en) | 2021-09-15 |
JP2022031346A (ja) | 2022-02-18 |
JP2019519149A (ja) | 2019-07-04 |
US20190141359A1 (en) | 2019-05-09 |
CN109155874A (zh) | 2019-01-04 |
GB202108749D0 (en) | 2021-08-04 |
GB2578227A (en) | 2020-04-22 |
JP7223106B2 (ja) | 2023-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109155874B (zh) | 虚拟现实媒体内容的自适应流传输的方法、装置和计算机程序 | |
KR102246002B1 (ko) | 가상 현실 미디어 콘텐트의 스트리밍을 개선하는 방법, 디바이스, 및 컴퓨터 프로그램 | |
JP6735415B2 (ja) | オーディオビジュアルコンテンツの観察点および観察向きの制御された選択のための方法および装置 | |
JP7472220B2 (ja) | 方法、プログラム、及びデバイス | |
US11272159B2 (en) | Method and device for transmitting stereo media content | |
JP7399224B2 (ja) | メディアコンテンツを送信するための方法、装置及びコンピュータプログラム | |
US11094130B2 (en) | Method, an apparatus and a computer program product for video encoding and video decoding | |
US20210176509A1 (en) | Method, device, and computer program for transmitting media content | |
US11438731B2 (en) | Method and apparatus for incorporating location awareness in media content | |
EP3939327A1 (en) | Method and apparatus for grouping entities in media content | |
CN114930869A (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 |