CN109155873B - 改进虚拟现实媒体内容的流传输的方法、装置和计算机程序 - Google Patents
改进虚拟现实媒体内容的流传输的方法、装置和计算机程序 Download PDFInfo
- Publication number
- CN109155873B CN109155873B CN201780032232.7A CN201780032232A CN109155873B CN 109155873 B CN109155873 B CN 109155873B CN 201780032232 A CN201780032232 A CN 201780032232A CN 109155873 B CN109155873 B CN 109155873B
- Authority
- CN
- China
- Prior art keywords
- media
- media data
- regions
- client
- quality
- 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
- 238000000034 method Methods 0.000 title claims description 40
- 238000004590 computer program Methods 0.000 title description 4
- 230000006978 adaptation Effects 0.000 claims description 27
- 230000000153 supplemental effect Effects 0.000 claims description 13
- 230000011664 signaling Effects 0.000 claims description 12
- 238000005192 partition Methods 0.000 abstract description 34
- 238000009877 rendering Methods 0.000 abstract description 26
- 230000005540 biological transmission Effects 0.000 description 12
- 239000010410 layer Substances 0.000 description 12
- 238000004891 communication Methods 0.000 description 9
- 230000002123 temporal effect Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 8
- 230000003044 adaptive effect Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 208000013036 Dopa-responsive dystonia due to sepiapterin reductase deficiency Diseases 0.000 description 5
- 238000005538 encapsulation Methods 0.000 description 5
- 239000012092 media component Substances 0.000 description 5
- 201000001195 sepiapterin reductase deficiency Diseases 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004806 packaging method and process Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 238000000354 decomposition reaction Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002062 proliferating effect Effects 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
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
-
- 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/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/147—Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
-
- 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/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/643—Communication protocols
- H04N21/64322—IP
-
- 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/84—Generation or processing of descriptive data, e.g. 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/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
-
- 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/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8543—Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
-
- 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 or manipulating encoded video stream scene graphs
- H04N21/2343—Processing 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/234327—Processing 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及从服务器向客户端流传输表示场景的宽视图的捕获投影的媒体数据,流传输的媒体数据使得客户端能够在3D显示面上渲染宽视图、或者根据不同视点来在显示面上渲染宽视图,该渲染包括媒体数据的渲染投影。在将包括与媒体数据有关的信息的描述文件发送至客户端之后,从客户端接收用以基于该描述文件来请求媒体数据流的请求消息,并且将与所请求的媒体数据流相对应的媒体数据发送至客户端,其中该信息包括与用于产生媒体数据的宽视图的捕获有关的描述性信息和与该媒体数据的空间分区的质量级别有关的描述性信息。
Description
技术领域
本发明通常涉及经由通信网络(例如,符合因特网协议(IP)标准的通信网络)的定时媒体数据流传输的领域。更具体地,本发明涉及用于改进经由使用超文本传输协议(HTTP)的IP网络的虚拟现实或全向媒体数据的流传输的方法、装置和计算机程序。
背景技术
视频编码是将一系列视频图像变换成紧凑的数字化位流、使得可以发送或存储视频图像的方式。编码装置用于对视频图像进行编码,其中可利用关联的解码装置来重建位流以供显示和查看。一般目的是形成与原始视频信息相比具有较小大小的位流。这有利地减少了传输网络或存储装置发送或存储位流码所需的容量。为了进行发送,一般地根据通常添加报头和校验位的发送协议来对视频位流进行封装。
经由通信网络来流传输媒体数据通常意味着由被称为服务器的主机计算机经由通信网络向被称为客户端装置的重放装置提供表示媒体呈现的数据。客户端装置通常是被实现为诸如以下等的各种传统计算装置中的任何计算装置的媒体重放计算机:台式个人计算机(PC)、平板PC、笔记本或便携式计算机、蜂窝电话、无线手持装置、个人数字助理(PDA)、游戏机和头戴式装置等。客户端装置通常在从主机接收到流媒体内容(而不是等待传送整个文件)时渲染该流媒体内容。
媒体呈现通常包括可以从服务器发送至客户端装置以由客户端装置共同播放的诸如音频、视频、文本、元数据和/或字幕等的数个媒体成分。这些媒体成分通常被单独编码成单独媒体流,接着一起或单独地封装到多个媒体片段中,并且从服务器发送到客户端装置以由后者共同播放。
通常做法的目的在于访问相同媒体成分的数个版本,使得客户端装置可以根据其特性(例如,分辨率、计算能力和带宽)选择一个版本。根据现有的专有解决方案,描述了各个替代版本,并且将媒体数据分割成小的时间片段。片段可以是包含不同媒体的压缩或原始数据的媒体片段,或者可以是用于在客户端中设置、实例化并初始化媒体解码器的初始化片段。
在经由HTTP的动态和自适应流传输的上下文中,从MPEG标准化委员会(“ISO/IEC23009-1,经由HTTP的动态自适应流传输(DASH(经由HTTP的动态自适应流传输)),Part1:Media presentation description and segment formats”)出现了被称为DASH的标准。该标准使得能够将媒体呈现的媒体内容的紧凑描述与HTTP统一资源位置(URL)相关联。这种关联通常在被称为清单文件或描述文件的文件中描述。在DASH的上下文中,该清单文件是也称为MPD文件(媒体呈现描述)的XML文件。还存在其它的基于清单的流传输解决方案,如同样使用XML文件的平滑流传输(Smooth Streaming)或者如将纯文本文件用于清单(还称为播放列表)的HTTP实时流传输。作为优选实施例,DASH用作流传输协议,然而添加在清单中的描述性信息将在这些其它解决方案中提供相同的效果。
清单文件收集用于指定与清单中描述的媒体样本有关的描述性信息的一组描述符。描述符可以是例如XML节点(元素和/或属性)那样的结构化元素,或者可以用JSON(JavaScript对象表示法)或者甚至采用纯文本格式来描述,只要关键字或注释专用于传达这些描述符即可。
通过接收清单文件,客户端装置获得各媒体内容成分的描述。因此,客户端装置获知在媒体呈现中提出的媒体内容成分的种类,并且获知要用于下载关联的初始化和/或媒体片段的HTTP URL。因此,客户端装置可以决定(经由HTTP请求)下载和播放(即,在接收到媒体片段之后解码并播放)哪些媒体内容成分。
除这种关联之外,DASH标准还提出根据时间段来对各媒体内容进行分割。在MPD文件中描述时间分解。因而,该时间分解用于定义在各时间段内HTTP URL和来自媒体内容的各成分的紧凑描述之间的关联。可以将各媒体内容成分封装到与这些时间段相对应的多个独立媒体片段中。
该标准允许客户端在期望时间段内下载媒体呈现的期望媒体内容成分。
MPEG DASH中用于流传输媒体片段内的媒体内容成分的封装文件格式可以符合在MPEG标准化活动的上下文中所定义的ISO基媒体文件格式。特别地,封装文件格式可以与高效率视频编码(HEVC)的封装的标准化及其在ISO基媒体文件格式(ISO/IEC 14496第15部分)中的可分级扩展有关。应注意,DASH对封装文件格式是不可知的。例如,可以使用MPEG-2传输流或者WebM或公共媒体应用格式来对媒体流进行封装。
应注意,依赖于区块组成的关注区域的提取/流传输和显示对于以下特别有用:例如通过使得用户能够点击视频序列中的特定区域以访问特定选择区域的更高分辨率视频或者在视频序列中从一个空间区域(区块)导航/平移到另一空间区域(区块),使得能够在流传输期间实现交互式高质量放大功能。
值得一提的是,视频分辨率不断提高,从标清(SD)到高清(HD)再到超高清(例如,4K2K或8K4K)。可以使用单层(例如,HEVC)或多层(例如,可分级HEVC)编码标准来对视频序列进行编码。在多层编码格式的情况下,给定层可以用作一个或多个其它层的参考数据。可以使用多个依赖媒体内容成分来高效地表示分层视频组织,其中各成分表示处于可分级性的不同级别处的视频层。为了对给定媒体内容成分进行解码,客户端装置必须访问媒体内容成分本身,而且还必须访问所依赖的所有媒体内容成分。
还值得一提的是,具有视频流传输功能的移动和连接装置的数量激增。因此,如果移动装置的用户想要通过保持或甚至提高质量来显示或关注视频序列的子部分,则将视频序列分割成多个区块变得重要。通过使用区块,用户因此可以交互地请求视频序列的空间子部分(或部分或区域)。在可分级视频编码格式(例如,可分级HEVC或多视图HEVC)的情况下,除在增强层的区块和基本层的一个或多个区块之间可能存在编码依赖性外,还可以将各视频层组织成多个独立空间子部分。
另外,宽屏幕以及诸如护目镜等的头戴式装置的使用正在迅速增长并且为用户提供沉浸式体验。此外,为了在传统的2D屏幕上提供沉浸式体验,一些媒体播放器提供特定的用户接口,从而使得客户端可以经由导航菜单平移到视频中。当前可用数个装置以使用户浸入虚拟现实(VR)环境中。通常利用安装有用于拍摄宽区域的至少一个广角物镜的一个照相机或者还利用用于沿各方向捕获视频和音频数据的数个同步照相机,来捕获VR视频序列或全向视频序列。在后者情况下,然后变换如此得到的多个视频序列以形成通常被称为全景视频序列的单个视频序列。考虑例如具有4K分辨率的各照相机,如此得到的全景视频序列可以具有大于10K的分辨率,这会使(计算、存储器存储、传输和甚至网络传输方面的)处理复杂化。
采用文件格式封装这种视频序列可以例如基于全向文件格式规范或者利用ISO基媒体文件格式来进行。
具有不同处理和显示能力的各种显示装置(例如,大屏幕或头戴式显示器(HMD))创建了特别是在经由HTTP的自适应流传输的上下文中可以适用于所有装置的流传输解决方案的需求。特别地,HMD的显示大小通常低于宽的大屏幕的显示大小。结果,对全景视频序列的子部(或部分或区域)的空间访问避免了发送整个全景视频序列以供利用HMD装置进行显示。
因此,需要根据客户端需求和特性来优化虚拟现实或全向媒体数据的流传输。
发明内容
本发明是为了解决前述担心中的一个或多个而设计的。
在该上下文中,提供了用于例如经由诸如使用http协议的因特网等的IP网络的虚拟现实媒体内容的自适应流传输的解决方案。
根据本发明的第一目的,提供一种用于从服务器接收表示场景的宽视图的捕获投影的媒体数据的方法,所接收到的媒体数据使得能够在3D几何显示面上渲染所述宽视图的至少一部分、或者根据至少两个不同视点在显示面上渲染所述宽视图的至少一部分,所述渲染包括表示所述宽视图的至少一部分的捕获投影的媒体数据的至少一个渲染投影,所述方法在客户端中进行,并且包括:
从所述服务器接收包括与表示所述宽视图的捕获投影的媒体数据有关的信息的描述文件,所述信息包括与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息和与表示所述宽视图的捕获投影的媒体数据的至少一个空间分区的质量级别有关的描述性信息;
将用以基于所述描述文件来请求至少一个媒体数据流的至少一个请求消息发送至所述服务器;以及
响应于所述至少一个请求消息,从所述服务器接收与所请求的至少一个媒体数据流相对应的媒体数据。
因此,本发明的方法使得可以由于仅发送所需数据因而优化虚拟现实媒体数据的发送,由于可以处理高分辨率图像因而提高质量,并且由于利用客户端进行要发送的数据的控制因而保持服务器端处的可分级性。此外,根据本发明的方法,客户端需要较少的资源。
在实施例中,与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息与所述捕获投影有关。
在实施例中,表示所述宽视图的捕获投影的媒体数据的至少一个空间分区的质量级别根据相应空间分区的在显示面上进行渲染时的期望质量级别来确定。
在实施例中,所述描述性信息至少部分地设置在至少一个描述符内。
在实施例中,所述至少一个描述符包括所述媒体数据的空间分区的至少一个版本的描述性信息,所述描述性信息包括所述至少一个描述符中至少部分描述的空间分区以及关联的质量级别的定义。
在实施例中,所述至少一个描述符中至少部分描述的空间分区根据通过所述捕获投影所产生的区域来定义。
在实施例中,所述至少一个描述符包括包含所述媒体数据的不同空间分区的描述性信息的描述符的列表,并且至少一个其它描述符包括与所述媒体数据的不同空间分区相关联的至少一个或多个不同的质量级别。
在实施例中,所述描述性信息包括用于标识与要接收的媒体数据有关的资源的信息。
在实施例中,所述质量级别包括根据框架参考所定义的视野,所述视野与所述空间部分或者优选渲染视野相对应。
在实施例中,所述视野由多个值定义,所述多个值中的至少一个值是根据所述质量级别的项并且根据所述客户端的至少一个特性来计算的。
在实施例中,所述质量级别包括根据框架参考所定义的视点,所述视点与所述空间部分或者优选渲染视点有关。
在实施例中,所述描述性信息还包括框架参考的标识符。
在实施例中,所述质量级别包括质量等级。
在实施例中,所述描述符与信令信息相关联,所述信令信息用信号通知在能够渲染所接收到的媒体数据的情况下所述客户端是否能够丢弃与所述描述符内的描述性信息相对应的媒体数据。
根据本发明的第二目的,提供一种用于从服务器向客户端流传输表示场景的宽视图的捕获投影的媒体数据的方法,流传输的媒体数据使得所述客户端能够在3D几何显示面上渲染所述宽视图的至少一部分、或者根据至少两个不同视点在显示面上渲染所述宽视图的至少一部分,所述渲染包括表示所述宽视图的至少一部分的捕获投影的媒体数据的至少一个渲染投影,所述方法在所述服务器中进行,并且包括:
向所述客户端发送包括与表示所述宽视图的捕获投影的媒体数据有关的信息的描述文件,所述信息包括与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息和与表示所述宽视图的捕获投影的媒体数据的至少一个空间分区的质量级别有关的描述性信息;
从所述客户端接收用以基于所述描述文件来请求至少一个媒体数据流的至少一个请求消息;以及
响应于所述至少一个请求消息,将与所请求的至少一个媒体数据流相对应的媒体数据发送至所述客户端。
因此,本发明的方法使得可以由于仅发送所需数据因而优化虚拟现实媒体数据的发送,由于可以处理高分辨率图像因而提高质量,并且由于利用客户端进行要发送的数据的控制因而保持服务器端处的可分级性。此外,根据本发明的方法,客户端需要较少的资源。
在实施例中,与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息与所述捕获投影有关。
在实施例中,表示所述宽视图的捕获投影的媒体数据的至少一个空间分区的质量级别根据相应空间分区的在显示面上进行渲染时的期望质量级别来确定。
在实施例中,所述描述性信息至少部分地设置在至少一个描述符内。
在实施例中,所述至少一个描述符包括所述媒体数据的空间分区的至少一个版本的描述性信息,所述描述性信息包括所述至少一个描述符中至少部分描述的空间分区以及关联的质量级别的定义。
在实施例中,所述至少一个描述符中至少部分描述的空间分区根据通过所述捕获投影所产生的区域来定义。
在实施例中,所述至少一个描述符包括包含所述媒体数据的不同空间分区的描述性信息的描述符的列表,并且至少一个其它描述符包括与所述媒体数据的不同空间分区相关联的至少一个或多个不同的质量级别。
在实施例中,所述描述性信息包括用于标识与要接收的媒体数据有关的资源的信息。
在实施例中,所述质量级别包括根据框架参考所定义的视野,所述视野与所述空间部分或者优选渲染视野相对应。
在实施例中,所述视野由多个值定义,所述多个值中的至少一个值是根据所述质量级别的项并且根据所述客户端的至少一个特性来计算的。
在实施例中,所述质量级别包括根据框架参考所定义的视点,所述视点与所述空间部分或者优选渲染视点有关。
在实施例中,所述描述性信息还包括框架参考的标识符。
在实施例中,所述质量级别包括质量等级。
在实施例中,所述描述符与信令信息相关联,所述信令信息用信号通知在能够渲染所接收到的媒体数据的情况下所述客户端是否能够丢弃与所述描述符内的描述性信息相对应的媒体数据。
根据本发明的第三目的,提供一种用于客户端的装置,所述装置用于从服务器接收表示场景的宽视图的捕获投影的媒体数据,所接收到的媒体数据使得能够在3D几何显示面上渲染所述宽视图的至少一部分、或者根据至少两个不同视点在显示面上渲染所述宽视图的至少一部分,所述渲染包括表示所述宽视图的至少一部分的捕获投影的媒体数据的至少一个渲染投影,所述装置包括微处理器,所述微处理器用于执行以下步骤:
从所述服务器接收包括与表示所述宽视图的捕获投影的媒体数据有关的信息的描述文件,所述信息包括与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息和与表示所述宽视图的捕获投影的媒体数据的至少一个空间分区的质量级别有关的描述性信息;
将用以基于所述描述文件来请求至少一个媒体数据流的至少一个请求消息发送至所述服务器;以及
响应于所述至少一个请求消息,从所述服务器接收与所请求的至少一个媒体数据流相对应的媒体数据。
因此,本发明的装置使得可以由于仅发送所需数据因而优化虚拟现实媒体数据的发送,由于可以处理高分辨率图像因而提高质量,并且由于利用客户端进行要发送的数据的控制因而保持服务器端处的可分级性。此外,根据本发明的装置,客户端需要较少的资源。
在实施例中,所述微处理器还被配置成:与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息与所述捕获投影有关。
在实施例中,所述微处理器还被配置成:表示所述宽视图的捕获投影的媒体数据的至少一个空间分区的质量级别根据相应空间分区的在显示面上进行渲染时的期望质量级别来确定。
在实施例中,所述微处理器还被配置成:所述描述性信息至少部分地设置在至少一个描述符内。
在实施例中,所述微处理器还被配置成:所述至少一个描述符包括所述媒体数据的空间分区的至少一个版本的描述性信息,所述描述性信息包括所述至少一个描述符中至少部分描述的空间分区以及关联的质量级别的定义。
在实施例中,所述微处理器还被配置成:所述至少一个描述符中至少部分描述的空间分区根据通过所述捕获投影所产生的区域来定义。
在实施例中,所述微处理器还被配置成:所述至少一个描述符包括包含所述媒体数据的不同空间分区的描述性信息的描述符的列表,以及至少一个其它描述符包括与所述媒体数据的不同空间分区相关联的至少一个或多个不同的质量级别。
在实施例中,所述微处理器还被配置成:所述描述性信息包括用于标识与要接收的媒体数据有关的资源的信息。
在实施例中,所述微处理器还被配置成:所述质量级别包括根据框架参考所定义的视野,所述视野与所述空间部分或者优选渲染视野相对应。
在实施例中,所述微处理器还被配置成:所述视野由多个值定义,所述多个值中的至少一个值是根据所述质量级别的项并且根据所述客户端的至少一个特性来计算的。
在实施例中,所述微处理器还被配置成:所述质量级别包括根据框架参考所定义的视点,所述视点与所述空间部分或者优选渲染视点有关。
在实施例中,所述微处理器还被配置成:所述描述性信息还包括框架参考的标识符。
在实施例中,所述微处理器还被配置成:所述质量级别包括质量等级。
在实施例中,所述微处理器还被配置成:所述描述符与信令信息相关联,所述信令信息用信号通知在能够渲染所接收到的媒体数据的情况下所述客户端是否能够丢弃与所述描述符内的描述性信息相对应的媒体数据。
根据本发明的第四目的,提供一种用于服务器的装置,所述装置用于从服务器向客户端流传输表示场景的宽视图的捕获投影的媒体数据,流传输的媒体数据使得所述客户端能够在3D几何显示面上渲染所述宽视图的至少一部分、或者根据至少两个不同视点在显示面上渲染所述宽视图的至少一部分,所述渲染包括表示所述宽视图的至少一部分的捕获投影的媒体数据的至少一个渲染投影,所述装置包括微处理器,所述微处理器被配置为执行以下步骤:
向所述客户端发送包括与表示所述宽视图的捕获投影的媒体数据有关的信息的描述文件,所述信息包括与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息和与表示所述宽视图的捕获投影的媒体数据的至少一个空间分区的质量级别有关的描述性信息;
从所述客户端接收用以基于所述描述文件来请求至少一个媒体数据流的至少一个请求消息;以及
响应于所述至少一个请求消息,将与所请求的至少一个媒体数据流相对应的媒体数据发送至所述客户端。
因此,本发明的装置使得可以由于仅发送所需数据因而优化虚拟现实媒体数据的发送,由于可以处理高分辨率图像因而提高质量,并且由于利用客户端进行要发送的数据的控制因而保持服务器端处的可分级性。此外,根据本发明的装置,客户端需要较少的资源。
在实施例中,所述微处理器还被配置成:与用于产生所述媒体数据的所述宽视图的捕获有关的描述性信息与所述捕获投影有关。
在实施例中,所述微处理器还被配置成:表示所述宽视图的捕获投影的媒体数据的至少一个空间分区的质量级别根据相应空间分区的在显示面上进行渲染时的期望质量级别来确定。
在实施例中,所述微处理器还被配置成:所述描述性信息至少部分地设置在至少一个描述符内。
在实施例中,所述微处理器还被配置成:所述至少一个描述符包括所述媒体数据的空间分区的至少一个版本的描述性信息,所述描述性信息包括所述至少一个描述符中至少部分描述的空间分区以及关联的质量级别的定义。
在实施例中,所述微处理器还被配置成:所述至少一个描述符中至少部分描述的空间分区根据通过所述捕获投影所产生的区域来定义。
在实施例中,所述微处理器还被配置成:所述至少一个描述符包括包含所述媒体数据的不同空间分区的描述性信息的描述符的列表,以及至少一个其它描述符包括与所述媒体数据的不同空间分区相关联的至少一个或多个不同的质量级别。
在实施例中,所述微处理器还被配置成:所述描述性信息包括用于标识与要接收的媒体数据有关的资源的信息。
在实施例中,所述微处理器还被配置成:所述质量级别包括根据框架参考所定义的视野,所述视野与所述空间部分或者优选渲染视野相对应。
在实施例中,所述微处理器还被配置成:所述视野由多个值定义,所述多个值中的至少一个值是根据所述质量级别的项并且根据所述客户端的至少一个特性来计算的。
在实施例中,所述微处理器还被配置成:所述质量级别包括根据框架参考所定义的视点,所述视点与所述空间部分或者优选渲染视点有关。
在实施例中,所述微处理器还被配置成:所述描述性信息还包括框架参考的标识符。
在实施例中,所述微处理器还被配置成:所述质量级别包括质量等级。
在实施例中,所述微处理器还被配置成:所述描述符与信令信息相关联,所述信令信息用信号通知在能够渲染所接收到的媒体数据的情况下所述客户端是否能够丢弃与所述描述符内的描述性信息相对应的媒体数据。
由于本发明可以以软件来实现,因此本发明可以体现为计算机可读代码以提供至可编程设备的任何适当载体介质并且特别是适当有形载体介质或适当暂时性载体介质上。有形载体介质可以包括诸如软盘、CD-ROM、硬盘驱动器、磁带装置或固态存储器装置等的存储介质。暂时性载体介质可以包括诸如电气信号、电子信号、光学信号、声学信号、磁信号或者例如微波或RF信号的电磁信号等的信号。
附图说明
在研究附图和具体实施方式时,本领域技术人员将明白本发明的更多优点。意图这里还包含了任何附加优点。
现在将仅通过示例方式并且参考以下附图来说明本发明的实施例,其中:
包括图1a、1b和1c的图1示意性示出全景视频序列的特征;
图2示出本发明的实施例基于的经由HTTP的媒体流传输的一般原则;
图3a示出用于生成媒体呈现和相应的清单文件的步骤;
图3b示出用于接收清单文件并选择媒体流的步骤;
图4示出DASH上下文中的清单文件的结构的示例;以及
图5是用于实现本发明的一个或多个实施例的计算装置的示意框图。
具体实施方式
根据实施例,本发明使得可以在流媒体清单或流媒体播放列表中提供虚拟现实或全向媒体内容的片段的描述,从而可以请求具有与客户端所需的特性相对应的特性的片段。这些特性特别地可以包括视野、视点和相对质量信息,以允许动态自适应。
在DASH的上下文中,并且作为优选实施例,使用ISO BMFF标准来将媒体内容封装到媒体数据片段中,以形成流媒体清单:媒体呈现描述(MPD)。通常,使用DASH,在清单中将各轨描述为独立媒体内容。
然而,已经观察到,为了(例如,经由作为元数据轨的OMAF定义)确定在MPD中描述的VR视频序列的特定编码配置,用户必须(除下载清单外还)下载第一初始化片段。接着,用户必须至少下载各视频内容的各第一媒体数据片段的开头以检索VR视频内容的编码配置,并且还下载用于指定VR内容特性的包含元数据样本的元数据轨。该初始化信息的下载导致延迟和附加的HTTP往返。由于这些延迟,用户在开始观看媒体呈现之前不得不等待。
为了解决这些问题,在清单中以紧凑方式来描述在质量方面具有各种配置的所有虚拟现实媒体内容成分。以这种方式,可以建立特定编码配置和/或特定质量级别与HTTPURL之间的关联,并且关于所有的视频片段替代例最佳地执行视频片段的下载。换句话说,本发明的实施例使得可以精确地表达在清单或播放列表中描述的不同媒体流内的编码配置(以及质量),并且向流媒体客户端指示在选择视频版本时必须下载什么以及可以可选地下载什么。
如上所述,存在为了向最终用户提供沉浸式体验所生成的新种类的视频序列。可以通过使用“鱼眼”物镜或者使用放置在特殊装备上以根据数个方向获取图像的数个照相机来捕获这样的视频序列。根据后者配置,拼接所获得的图像以形成宽场景的全景图像(在使用“鱼眼”物镜时直接获得这些全景图像)。
包括图1a、1b和1c的图1示意性示出全景视频序列(还被称为多方向、多向、全向、360°或虚拟现实视频序列)的特性。
在下文中,认为宽视图是获取图像的场景的视图,该宽视图对应于比常用大的光学角度(广角)。为了例示,将180度全景视为宽视图。另一示例是形成拍摄场景的沉浸式视图的沿着水平轴的360°宽视图(并且可能地在垂直轴上也为360°)。与这种宽视图相对应的图像通常用于虚拟现实。注意,360°视图也可以是计算机生成的合成序列。
考虑到广角,全景视频序列在被显示之前通常需要几何投影以保持适当比例。要注意,已使用的投影可能没有反映现实,而可能是宽视图的艺术表现(即,基于立体投影https://en.wikipedia.org/wiki/Stereographic_projection的小星球摄影效果)。
来自宽视图的捕获(或计算)图像和图像序列分别形成全景图像和全景图像序列。
例如,图1a的视频100包括一系列全景图像105-1~105-n。这些全景图像是通过将宽视图投影到图像的2D平面上得到的。
因而,各全景视频或全景图像与特定几何投影或全景投影相关联,该特定几何投影或全景投影是围绕参考点的3D球体场景(或其一部分)向2D地图的几何变换。存在(作为非限制性列表的)数个类型的投影,其中:
-球体投影;
-扁球体投影;
-圆柱投影;
-立方体投影;
-圆锥投影;和
-未使用投影。
这里注意,存在可以生成非连续像素图的投影。为了例示,立方体投影整体上在于各自与立方体的一个面相对应的六个投影区域。
全景区域是全景图像的可以是矩形或者可以不是矩形的像素子集。各全景区域是由特定类型的全景投影类型产生的。例如,考虑立方体投影,全景图像的每个区域可以对应于立方体的一个面。
返回图1a,从立方体投影发出全景图像105-1。因而将全景图像105-1分割成六个区域R1~R6。这些区域各自均是与立方体的一个面相对应的通常标记为110的全景区域。
如图1b所示,在显示器上渲染360°全景图像整体上在于:通过显示器上的投影变换全景图像,以允许可以表示为球体115的3D宽视图的沉浸式观察。
如图1c所示,根据显示器的特性,可以仅观看表示3D宽视图的3D球体的部分120。该部分由显示器的视野(FOV)确定。通过该部分的两个观察角度(例如,利用水平FOV角度125和垂直FOV角度130)来用参数表示该FOV。另一参数表示是水平FOV和对角FOV角度。
在预定3D框架参考(例如,图1b中的3D框架参考135)中将宽视图的版本投影到球面的观察方向被表示为视点。视口140是与根据特定视点和特定FOV的全景图像的投影相对应的(投影在3D球体上的)2D图像。
图2示出本发明的实施例所基于的经由HTTP的媒体流传输的一般原则。
如图所示,媒体服务器200包括媒体呈现,其中特别是包含不同的媒体内容成分(例如,音频和视频数据流)的媒体呈现205。音频和视频流可以交错或独立地存储。媒体呈现可以提出媒体内容成分的(具有不同的位率、质量、分辨率、采样率等的)替代版本。
例如,根据ISO基媒体文件格式和DASH推荐来封装该媒体呈现的媒体内容成分。作为封装步骤的结果,将各替代版本(或者在DASH上下文中的表示(Representation),例如表示1和表示2)在时间上分割成可以单独进行寻址并下载的小的独立且连续的时间媒体片段(例如,分别为时间媒体片段210-1~210-3和211-1~211-3)(例如,符合MPF标准(ISO/IEC14496-14)的媒体片段)。各媒体片段可以包含一个或多个媒体内容成分。地址(即,在例示示例中为HTTP URL地址)由服务器200针对所有的媒体片段设置,并且如本文中以下参考图3所述创建清单。
清单(例如,MPD)是用于描述针对给定媒体呈现可访问的所有媒体内容成分的通常为XML文件(或者对于HTTP实时流传输而言甚至为纯文本文件)的文档。这种描述可以包括媒体内容成分的类型(例如,音频、视频、音频-视频、元数据或文本)、媒体片段的持续时间以及与媒体片段相关联的地址(例如,URL)(也就是说,可以获得媒体内容成分的地址)。
通常,MPD基于如图4所示的层级数据模型。MPD包括一个或多个时间段(图4中的附图标记400),其中各时间段具有开始时间和持续时间并且包括一个或多个适应集(图4中的附图标记401)。适应集提供与一个或多个媒体内容成分及其各种编码替代方案有关的信息(图4中的附图标记402),其中相同媒体内容成分的各编码替代方案被称为表示。反过来,各表示通常包括一个或多个媒体和/或初始化片段(图4中的附图标记403)。
为了例示,媒体呈现205的音频和视频流被认为是交错存在的。提出这些交错存在的音频和视频数据流作为两个替代版本,其中将各版本分割成连续的时间媒体片段,例如分割成与三个连续时间段相对应的三个连续时间媒体片段210-1~210-3和211-1~211-3。清单文件将媒体呈现描述为包括至少一个适应集(未示出),该适应集包括包含数个媒体片段的至少两个版本。这些片段的地址由服务器200设置。这些地址以及与媒体内容成分及媒体片段210-1~210-3和211-1~211-3有关的其它信息项在与媒体呈现205相对应的清单215中是可访问的。
将该清单文件发送到客户端220(步骤225)。在接收到该清单文件之后,客户端220分析清单文件215以确定哪些呈现可用以及媒体呈现205的媒体片段210-1~210-3和211-1~211-3中的哪些媒体片段可访问。清单文件215还用于确定这些媒体片段的http地址以及这些媒体片段之间的关系。此外,清单文件215给出与媒体呈现的内容(即,在给定示例中为交织存在的音频和视频)有关的信息项。这些信息项可以包括分辨率、位率和相似信息。
考虑到该信息,客户端220的自适应逻辑模块250因此可以从适当版本中选择媒体片段以发出用于下载这些媒体片段的相应http请求(步骤230)。作为响应,服务器200发送所请求的时间媒体片段(步骤235)。可以解析(解封装)、然后在适当的媒体解码器240(通常针对各媒体类型存在一个解码器)中解码并在显示器245上显示http响应235中所接收到的这些时间媒体片段。特别地,显示可以包括例如变换处理以将全景图像投影到新框架参考(显示框架参考)中。
注意,服务器200可以包括在单独的服务器或装置中,其各自进行以下步骤中的一个或多个:
-生成媒体内容,
-以文件格式封装媒体流,
-生成流媒体清单或播放列表文件,
-发送媒体呈现,以及
-将媒体内容最经常作为内容片段来发送。
因而,客户端可以向第一服务器(例如,应用服务器)发出对清单的请求,并且向一个或多个其它服务器(例如,媒体服务器或流媒体服务器)发出对媒体内容的请求。例如在经由CDN(内容分发网络)分发媒体的情况下,发送媒体样本的服务器也可以是不同的。
图3a示出用于生成媒体呈现和相应的清单文件的步骤。这些步骤通常由诸如图2的服务器200等的服务器执行。
可以例如经由通信网络从外部源(诸如连接至执行图3所示的步骤的服务器的数据存储服务器等)获得分别表示为300和305的音频数据和视频数据。
如图所示,可以拼接原始视频数据301以生成虚拟现实视频(步骤302)。这种步骤可以在服务器内进行或者例如在视频源中远程地进行。
在考虑场景的宽视图(例如,水平维度和垂直维度这两者上的360°视图)时,如利用图1b的附图标记180所示,该宽视图的全景图像对应于利用一个图像传感器或一组图像传感器捕获到的该宽视图向2D图像的投影(表示为捕获投影)。因此,捕获投影方案与各全景图像相关联,例如以保存所记录的场景中的适当比例。
在步骤310期间对音频数据进行压缩。这种压缩例如可以基于MP3标准(MPEG-1/2音频层3)。并行地(或者在之前或之后),在步骤315期间对视频数据进行压缩。为此,可以使用诸如MPEG4、MPEG/AVC、SVC、HEVC或可分级HEVC等的视频数据压缩算法。
如分别利用附图标记320和325所示,将音频数据和视频数据压缩为数据基本流。在处理了音频数据和视频数据之后(步骤326),在步骤330期间对压缩后的基本流进行封装以创建整体媒体呈现335。
例如,可以使用ISO BMFF标准(或者还为了例示,该ISO BMFF标准向AVC、SVC、HEVC或可分级HEVC的延伸)来将编码后的音频基本流和视频基本流的内容描述为整体媒体呈现。因此,使用封装后的媒体呈现作为用于清单(例如,XML清单345)生成(步骤340)的输入。
还可以使用用于提供媒体数据流的描述性元数据和定时信息的任何封装格式,诸如MPEG-2传输流、公共媒体应用格式和WebM等。封装格式应当提供可以由服务器提取并设置在清单文件中的描述性信息,以帮助流媒体客户端选择媒体数据的最合适版本。
图3b示出用于从清单文件中选择媒体呈现的步骤。这些步骤通常由诸如图2的客户端220等的流媒体客户端执行。响应于初始客户端的请求350,客户端接收到清单文件345。在步骤360中解析清单文件以确定应当下载哪个媒体流。
接着,媒体流的选择步骤365的目的在于确定与客户端(例如在带宽、编解码方式、分辨率、VR支持等方面)的特性匹配的媒体片段的列表。这可以由诸如图2所示的客户端220的自适应逻辑250等的自适应逻辑来处理。例如,客户端从MPD文件中选择包含步骤370中利用HTTP URL地址所请求的媒体片段的列表的表示。
作为响应,接收到媒体呈现文件。该媒体呈现文件包括封装的媒体流。然后,在步骤380中对媒体流进行解码之前,从封装格式提取媒体数据基本流。例如,在ISO BMFF文件的情况下,基本流的提取通常由mp4读取器或mp4解析器来处理。因此,利用适当的解码器对各基本流进行解码,然后在步骤390期间在VR渲染器上渲染各基本流。
渲染处理特别包括解码样本的渲染投影步骤以提供沉浸式体验。在流传输会话期间,客户端的自适应逻辑监视发送(步骤385)并且(例如,在客户端缓冲器冒溢出或下溢的风险的情况下或者在用户经由用户接口的选择或动作之后)可以切换到媒体的另一版本。在这种情况下,算法返回到步骤365。在没有进行切换的情况下,在步骤370中请求相同版本中的下一媒体片段。
图4示出DASH清单文件的层级内容的示例。更精确地,图4示出在服务器处可用的媒体呈现的内容以及各媒体成分(还称为媒体数据)与HTTP地址之间的关系。
为了例示,可以将媒体呈现从时间上分割成被称为“时间段(period)”的粗粒时间段(任意内容的拼接)。
MPD级的“时间段”描述了在一段时间(如果仅存在一个时间段,则可以是媒体呈现的完整持续时间)内可利用的所有媒体成分。在该时间段内,媒体内容成分可以包括与前面提到的小段时间相对应的数个数据片段,以使得能够容易地进行流传输、随机访问和切换。
MPD(例如,XML MPD)包含与各时间段有关的所有数据。因此,在接收到该信息时,客户端获知各段时间的内容。例如,媒体呈现400被分割成各自与一个时间段相对应的数个元素。还为了例示,第二个时间段包括在100s和294s中。
各媒体呈现的时间段包含用于描述相应一段时间内的可用媒体内容成分的数据。更详细地例示媒体呈现的表示为401的一个时间段。
另外,并入了数个“适应集”元素:用于视频描述的一个“适应集”元素和用于音频描述的一个“适应集”元素。使各适应集与给定轨相关联。在该示例中,使第一适应集与视频轨相关联,并且使第二适应集与同所考虑的时间段的视频轨相对应的音频轨相关联。
如图所示,适应集结构402包含与在服务器处可利用的编码视频的可能的不同表示(即,版本)有关的信息。在该示例中,第一个表示是以位率500kbit/s进行编码后的空间分辨率为640×480的视频。通过字段“Segment Info(片段信息)”403给出更多参数。
第二个表示是以250kbit/s进行编码后的相同视频。例如,相比第一个表示,该第二个表示可能表示质量下降。客户端将能够根据网络上的可用带宽来在这些表示之间切换。
如果客户端得知与视频有关的HTTP地址,则可以利用HTTP请求来下载这些表示中的各表示。通过使用附加时间子层来进行各表示的内容和HTTP地址之间的关联。
如利用附图标记403所示,将视频表示402分割成时间片段(在该示例中为10秒)。
各时间片段403是经由HTTP地址可访问的服务器中所存储的内容。另外,可利用初始化片段。该初始化片段包含(在通过使用ISO BMFF或扩展已对视频进行了封装的情况下)描述封装后的视频的MP4内容的MP4初始化信息。例如,帮助客户端实例化与视频有关的解码算法。在以下更详细地例示的MPD(或描述)文件中给出了初始化片段和媒体片段的HTTP地址。
注意,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)进行比较。
如上所述,虚拟现实视频服务器必须应对多种客户端,这些客户端可能具有不同的处理能力和不同的显示配置,例如从窄角度显示(通常为护目镜所用的40-120°FOV)直到非常宽的角度(高达多投影仪显示器和/或壁式屏幕所用的360°FOV)。因此,在自适应流传输上下文中,视频服务器必须生成许多视频序列的编码版本,以确保各特定客户端能够找到满足其处理约束的适当媒体流(以避免在发送期间针对客户端不能正确渲染的样本消耗带宽)。
根据本发明的实施例,视频服务器生成特定于VR内容的使用的虚拟现实媒体数据的新组合。这些新组合为VR客户端添加选择备选方案,从而使得可以根据VR客户端的需求选择最佳VR流。特别地,视频服务器可以生成具有不同视野(FOV)的视频序列。服务器还可以在全景图像的特定区域中使用不同的编码质量,使得客户端可以在给定视点的情况下选择最佳质量。
质量的差异可能是由于以下项其中之一或这两者引起的:
-特定区域的不同编码质量(QP);以及
-在特定视点中可能得到更高的像素分辨率的不同的全景投影;
例如,视频服务器可以使用圆锥投影。在该投影模型中,锥体基面与锥体的其它4个面相比具有更高的像素分辨率。结果,从锥体基部上表示为球体的3D宽视图的一个视点所投影的样本的质量具有与根据相反方向所投影的样本相比更好的质量。因而,视频服务器使用不同的投影方向(例如,在各取向中通过对表示3D宽视图的球体进行常规采样)来计算数个(例如,30个)流。
然后,使用文件格式(通常为ISO BMFF)将在编码处理循环(例如,参考图3所述的步骤300~326)结束时获得的一组流封装在不同的媒体流中。注意,通过针对各流使用不同的封装轨,可以将该组流封装在相同的媒体流中。这特别适用于可以将各编码层封装在单个媒体流的不同轨中的可分级视频流。
根据附录的表1所示的第一实施例,视频服务器生成清单文件(例如,用于DASH上下文的MPD),该清单文件包括用于指定一个媒体流的至少一个片段的视野的信息。该信息对应于在表示3D宽视图的球体的3D框架参考(例如,图1b中的3D框架参考315)中利用所关注的片段可观看到的最大视野。
根据第一替代方案,利用单个值来用参数表示FOV,该单个值分别对应于水平角度、垂直角度或对角线角度,诸如图1c所示的水平角度125和垂直角度130等。该FOV值可以在0~360内改变并且对应于以度为单位测量到的角度。
在MPD文件中,可以在MPD的数个级处在专用描述符中定义该新参数。
特别地,该新描述符可被定义为片段的描述中的XML节点(属性或元素):对于水平FOV角度为@HFOV,对于垂直FOV角度为@VFOV,或者对于对角线FOV为@DFOV。该新描述符还可以在适应集、表示或子表示级处的属性或元素中定义。这里例如提供名称,可以使用任何预留名称并且将该预留名称作为RepresentationBaseType元素、AdaptationSetType、RepresentationType或SubRepresentationType的新属性在MPD的XML架构中声明。
可以在专用描述符中、例如可以在子表示级、表示级或适应集级定义的专用于VR内容(例如,利用如schemeIdUri属性中的“urn:mpeg:dash:VR:2016”那样的特定URN来用信号通知)的描述符中定义该新描述符。该新描述符在不支持VR的schemeIdUri属性的客户端可以处理父AdapatationSet、Representation或SubRepresentation的情况下可被定义为SupplementalProperty描述符,并且在不支持VR的schemeIdUri属性的客户端应当丢弃父AdapatationSet、Representation或SubRepresentation的情况下可被定义为EssentialProperty描述符。
然后,使用MPD所提供的角度值以及相应媒体样本的大小或高宽比来计算(利用两个角度值用参数表示的)要使用的FOV。为了例示,如果MPD所提供的FOV信息是水平FOV角度,则通过将该FOV信息值除以高宽比来计算垂直FOV角。因此,作为示例,如果MPD指示等于180(默认为度)的HFOV值并且高宽比为16/9,则垂直值等于180*9/16=101°。
根据第二替代方案,使用相同描述符利用至少两个角度值在清单文件中指定FOV。无需计算第二FOV,并且客户端处的清单的处理时间略有改善。
注意,在清单文件中定义FOV参数的优点在于:客户端仅需要解析清单文件以根据FOV参数来识别要选择的适当版本。在清单中不存在该附加信息的情况下,客户端必须下载所有版本的初始化片段以解析与流的FOV有关的采用文件格式的信息。
因此,客户端解析清单文件并针对各媒体流替代例提取FOV的信息。客户端选择具有与其FOV最接近的FOV的媒体流。在FOV比显示器的FOV窄的情况下,在渲染之前拉伸解码图像以确保VR内容的正确观看。
在替代方案中,客户端在预备步骤中丢弃FOV值比该客户端的FOV窄的媒体流。
然后,选择FOV最接近客户端的显示器FOV的媒体流。这确保了仅选择具有足够FOV的媒体流。
根据另一实施例,视频服务器指定清单中的用于指定与媒体片段相关联的目标显示器的配置的其它信息。例如,在MPD中,这可以在适应集级、在表示级或甚至在子表示级实现。
例如,这种信息可以涉及显示器的目标FOV。因此,可以对流进行编码以瞄准具有90°的水平FOV的HMD,而可以对另一流进行编码以瞄准210°的水平FOV。观察到,由于目标(或优选)FOV可能比媒体流的FOV窄,因此目标(或优选)FOV不同于先前描述的FOV信息。特别地,一些捕获投影在全景图的特定部分上提供更多像素的分辨率。例如,圆锥投影在其基部上产生更高的质量。锥体基部的相应FOV是投影的一个参数,因此可能针对各VR流而不同。例如,如此得到的流可以提供360°的FOV、以及与3D框架参考(例如,图1b中的3D框架参考135)中的锥体基部的大小相对应的120°的优选(或目标)FOV。
附录的表2的伪清单是在专用描述符中指示适应集级处的优选(或目标)FOV值(这里是180,假定以度为单位)的清单的示例。注意,可以将通过SupplementalProperty通用DASH描述符的新属性所传达的信息放置在该DASH通用描述符的值属性中。
结果,属于该适应集的所有表示都适合于以180°的FOV显示。可以类似于先前实施例的FOV参数来定义优选(或目标)FOV参数的句法。特别地,该句法可以经由具有分别与水平或垂直或对角线优选FOV值相对应的多个值的单个参数、或者通过来自三个可能FOV值的两个值来指定。在使用单个FOV角度值时,默认使用HFOV。在使用两个值时,默认使用HFOV和VFOV。在替代方案中,优选FOV描述符包括用于指定使用哪些角度以及这些角度的值的信息来定义FOV。
在客户端,在接收到清单时并且在解析了清单之后,可以获得优选FOV参数。结果,客户端可以选择优选(或目标)FOV大于或等于并且还最接近预定义的显示器的FOV的版本。结果,客户端能够请求将在渲染装置上提供最佳渲染质量的媒体片段。
在清单中可以指定的第二个参数是最佳视点(即,应当用于观看一个版本的观看方向)。该参数描述用于指定宽视图表示的框架参考(例如,图1b中的框架参考135)中的观看方向的一组值。
附录的表3是如下的伪清单的示例,该伪清单例示了如何通过在版本级的SupplementalProperty描述符中添加这种参数来向客户端提供最佳视点。根据该示例,该参数由4个值optimalViewpoint=“refID,yaw,pitch,roll”来定义,其中:
-refID是目的是选择公共框架参考的框架参考的标识符;
-yaw是与框架参考标识符值相关联的框架参考中的Yaw(横摆)角度值;
-pitch是与框架参考标识符值相关联的框架参考中的Pitch(俯仰)角度值;以及
-roll是与框架参考标识符值相关联的框架参考中的Roll(侧倾)角度值。
通常,对于HMD系统,横摆角对应于头部的从左向右或从右向左的转动,俯仰角对应于从顶部向底部或从底部向顶部的转动,并且侧倾角对应于头部绕观看方向轴的转动(倾斜)。
框架参考的标识符优选是对于在同一框架参考中定义最佳观看方向坐标的版本而言相同的唯一标识符值。框架参考的原点应当是客户端(经由例如在DASH上下文中具有“main”值的Role(角色)描述符,或者经由具有特定名称和为了提供默认视点信息所定义的schemeIdUri的专用DASH描述符)所选择的默认或初始版本,并且对于该表示,Yaw、Pitch、Roll应当等于0。
根据替代方案,仅定义Yaw值,并且其余两个值(Pitch和Roll)是可选的(并且默认设置为0)。例如,value=“0,180,0”意味着横摆角的值为0、俯仰角的值为180°并且侧倾角的值为0。另一示例是value=“120”。在这种情况下,仅指定横摆值(等于120)并且推断出俯仰和侧倾等于默认值0。在默认情况下,角度值以度为单位表示,在优选其它单位的情况下,需要附加属性来在FOV描述符中提供angle_unit(例如,angle_unit=“radian”)或第四个可选参数。
根据替代方案,Yaw、Pitch和Roll都是可选的(默认设置为0)。在这种情况下,描述符明确指定了定义哪个角度。例如,先前描述的值属性是两个成分参数的列表。第一个成分是用于指定角度类型(例如,等于“yaw”、“pitch”或“roll”)或者关联至各角度类型的预定义整数值的字符串。第二个成分是利用第一个成分值指定的角度的相应值。
再次地,在客户端,在接收到清单时并且在解析了清单之后,可以获得最佳视点参数。结果,客户端可以选择具有最接近视点条件的最佳视点的版本。例如,如果在媒体流选择处理(例如,图3b的步骤365)期间确定了用户的当前观看方向(视点),则使用该观察视点作为将与各版本的最佳视点信息进行比较的参考值。选择使与观察视点的差最小的版本(即,DASH上下文中的AdaptationSet、Representation或SubRepresentation)。结果,客户端能够请求应当为当前客户端的观看条件提供最佳质量的媒体片段。
观察到,在附录的表2和3所示的示例中,在SupplementalProperty描述符中指定优选FOV和/或最佳视点,以使得清单解析器在不支持时能够忽略该描述符。实际上,即使忽略任何的最佳视点或优选FOV,这些表示仍可播放。
根据替代方案,视频服务器在EssentialProperty描述符中指定除一个特定表示或适应集外的这些参数,以强制非VR客户端忽略可能不会有用的替代表示并选择默认表示(具有SupplementalProperty描述符的表示)。优选地,在RepresentationBaseType级提供参数,使得可以在适应集级、在表示级或者在子表示级使用这些参数。
根据另一替代方案,在适应集级(或者在表示或子表示级)在一个专用XML节点(其名称在MPD架构中声明)内指定优选FOV和/或最佳视点,以进一步简化与VR内容有关的信息的解析。然后,可以将VR信息参数指定为子元素或者MPD的任何XML元素的属性。在这种情况下,VR信息不仅适用于利用指定该VR信息的XML元素所描述的媒体流(在存在的情况下),而且还适用于该媒体流的所有子媒体流。
还根据另一实施例,视频服务器可以生成清单文件,该清单文件帮助客户端根据与全景图像的子部分相关联的不同质量级别来选择适当版本。例如,视频服务器可以使用立方体投影来对一个全景视频序列的多个媒体数据流进行编码。可以利用不同的质量级别对立方体投影的各面进行编码。因此,视频服务器生成六个不同的流,使得在各流内,(针对各流不同的)一个全景区域处于高质量,而其它全景区域处于中等或低质量。相似的流配置可以用于其它类型的全景投影。
在这种情况下,客户端不能根据用户观看方向(或视点)确定要选择的版本。因此,视频服务器优选在清单文件中添加新信息,以提供帮助客户端根据用户视点选择适当版本的提示。
根据本实施例,服务器在全景流中定义优选与全景区域相对应的一组质量区域。质量区域的位置可以是在清单的作为质量区域的描述的新信息字段中预先确定或指定的。这种qualityRegion参数包含用以定位各全景图像中的区域和全景区域的大小(宽度和高度)的x轴坐标和y轴坐标。这四个值形成用于标识全景区域的qualityRegion参数的第一组值。
除了全景区域的位置外,还可以使用可选参数来指定与全景区域有关的更多信息。为了例示,该可选参数可以指定用于指示立方体投影的全景区域正对应的面的标识符。标识符可以是与前面、后面、顶面、底面、左面或右面相对应的预定义的整数值。例如,该可选参数可以是在OMAF中提出的面标识符值其中之一。标识符也可被定义为直接作为先前列表中的面的名称的字符串元素。相似的方法可以用于其它投影类型。
另一字段可以与第一组值相关联,以提供与区域相关联的质量等级。这样的质量等级可以是整数值,该质量等级在等于零时指示最高质量。在质量等级增加时,质量下降。可选地,可以在诸如“高、低、中、最高和最低”等的一组预定值内选择质量等级。
附录的表4a示出具有以下句法qualityRegion=“qRegId,x,y,w,h”的质量区域描述符的示例,其中:
-qRegId是质量区域的唯一标识符,
-(x,y)是质量区域的坐标,以及
-(w,h)分别是质量区域的宽度和高度。
在该示例中,将qualityRegion表示为DASH通用描述符的新元素。这些qualityRegion也可以表示为一个新属性中的列表,并且在DASH的情况下由任何XML结构表示,从而提供所选择的描述符(DASH通用描述符或显式描述符)内的这五个参数。
在全景视频序列框架参考中定义qualityRegion坐标。在全景视频序列的所有不同版本共通的描述符中定义qualityRegion。通常,如表4a的示例所示,MPD文件包括针对各Panorama版本具有多个表示的AdaptationSet。因而,在AdaptationSet级处,定义QualityRegion描述符。在不同版本的全景视频序列具有不同的大小时,在使用qualityRegion坐标的width(宽度)和height(高度)属性的AdaptativeSet参考中,定义qualityRegion坐标。通过应用AdaptationSet的宽度(或高度)和全景视频序列的宽度(或高度)的比率来确定全景中的qualityRegion的相应位置。质量等级信息是利用qualityRegionDescriptor在各全景版本级处指定的,其中第一个参数是在qualityRegion描述符中描述的区域的唯一标识符qRegId。qualityRegionDescriptor的第二个参数是qualityRank的值。
在替代方案中,根据空间关系描述符来指定全景区域的位置。例如,在DASH上下文中,将SRD描述符用于与各质量区域相对应的各媒体流。在这种情况下,SRD描述符包含值与相应质量区域的唯一标识符相对应的spatial_set_id。表4b示出具有使用SRD描述符指定qualityRegion信息的信息的清单文件。在第一个AdaptationSet中的两个Representation内描述序列的两个全景版本。另外,在该第一个AdaptationSet中使用SRD描述符来指示在质量区域中对全景视频序列进行进一步分割。然后,在不同的AdaptationSet中(例如在第二个和第三个AdaptationSet中)描述(例如,两个)质量区域中的各质量区域。将与质量区域相对应的AdaptationSet的SRD描述符中所使用的spatial_set_id值用作qRegId质量区域的唯一标识符。然后,将与先前实施例中相同的qualityRegionDescriptor用在与一个全景视频序列版本相对应的各Representation中。
根据另一实施例,在宽视图版本的框架参考(例如,图1b的框架参考135)中定义质量区域。在这种情况下,在与视点和FOV相关联的框架参考(如参考图1c所述)中确定使得可以定位质量区域的第一组值。
如以上通过参考优选视点所述,质量区域的视点可被定义为与横摆、俯仰和侧倾值相对应的一组三个矢量成分。在替代方案中,提供三个成分至少之一,并且推断出其它成分等于0。
同样,可以通过通常为水平FOV角度的单个FOV值或者通过两个FOV值(例如,水平FOV角度和垂直FOV角度)来表示质量区域的FOV。
最后一个实施例所提供的优点在于如下事实:可以独立于全景投影来定义质量区域。
附录的表4c示出涉及与全景序列的两个版本相对应的两个表示的伪清单的示例。根据第一表示,使用高质量级别(“r0”)来对120°的水平FOV和90°的垂直FOV的(0,0,0)视点方向上的质量区域进行编码。使用较低质量级别对全景图像的其余区域进行编码。根据第二表示,使用高质量来对120°的水平FOV和90°的垂直FOV的(180,0,0)视点方向上的质量区域进行编码,而仍使用较低质量级别对全景图像的其余区域进行编码。
根据特定实施例,服务器200生成MPD文件,该MPD文件包括适应集、表示或子表示级处的专用SupplementalProperty描述符中的qualityRegionDescription参数。
此参数的句法可能如下:
qualityRegionDescription=“pitch,yaw,roll,h_fov,v_fov,qualityRank[,regionld]”
其中:
-pitch、yaw和roll是框架参考中的视点方向;
-h_fov和v_fov分别是水平FOV角度和垂直FOV角度;
-qualityRank是质量等级;以及
-可选的regionId值指示(在适用情况下)质量区域对应于的全景区域。
在接收到这种清单时,客户端确定其观看方向和当前FOV,以将这两者与各质量区域描述中所述的相应值进行比较。客户端可以选择向包括当前显示的全景图像的区域的质量区域提供最高质量等级的表示。
为了简化清单(例如,客户端处的MPD)的解析,视频服务器可以生成在MPD中所指定的质量区域的列表。可以在MPD的任何级(顶级、时间段、适应集、表示或子表示)定义质量区域的列表,其约束是该列表对于区域列表的级别的任何子级别均有效。优选地,在时间段级定义质量区域的列表。
如以上参考先前实施例所述,可以在宽视图表示的框架参考(例如,图1b的框架参考135)中根据视点和FOV来确定质量区域的列表的质量区域。可以利用值qualityRegion=“qRegId,pitch,yaw,roll,h_fov,v_fov”定义一个qualityRegion参数,其中:qRegId是质量区域的唯一标识符,(pitch,yaw,roll)表示视点值,并且(h_fov,v_fov)表示水平FOV角度和垂直FOV角度。
质量区域的列表是与质量区域中的宽视图的采样相对应的多个质量区域的列表。
如附录的表5所示,伪清单文件在专用描述符中定义n个质量区域的列表(其中n是大于4的整数值),其中在时间段级定义VR schemeIdUri属性。
各表示参考质量区域标识符,以在包括质量等级值之后为质量区域标识符的qualityRegionDescription属性中指定与各区域相关联的qualityRank属性。
为了避免针对n个质量区域各自指定qualityRank值,特殊质量区域标识符(通常等于“默认”字符串或-1)指示未指定区域的默认qualityRank值。
在表5所示的示例中,第一表示包括用于指示出质量区域的默认qualityRank值为5、而与质量区域标识符0相对应的qualityRegion具有质量等级0的两个质量区域描述参数。
在客户端,在接收到清单时,解析清单以确定用户要显示的质量区域的标识符。然后,客户端针对如此确定的质量区域标识符来选择具有最低qualityRank值的表示。因此,在该最后实施例中,减少了客户端侧的解析处理。
注意,在前面所述的实施例中,可以在MPD的任何级别定义VR相关参数。特别地,根据服务器和客户端之间的流传输上下文,新参数的任何组合都是可以的。另外,应当在专用描述符(通常为SchemeIdUri属性等于“urn:mpeg:dash:VR:2016”的SupplementalProperty描述符(或EssentialProperty描述符))中定义VR相关参数。可以将VR相关参数定义为新的XML节点(元素或属性)。在替代方案中,可以直接引入这些参数作为任何RepresentationBaseType兼容XML元素的新元素(或属性)。在这种情况下,VR相关参数对于包含VR相关参数及其子项的最顶层XML元素有效。
根据特定实施例,服务器通过选择可播放的VR内容的默认表示来向不支持新VR描述符的客户端提供向后兼容性。所选择的表示例如可以对应于即使在显示器端没有应用投影处理的情况下也可以在不存在过多失真的情况下显示的全景视图或全景视图的默认全景区域。
为此,服务器可以将SupplementalProperty描述符类型用于与该所选择的表示相关联的新VR描述符,并且将EssentialProperty描述符类型用于其它表示。这确保了不支持新VR描述符的客户端仍能够对清单文件中的一个视图进行解码。在另一替代方案中,通过具有例如“main”值的Role描述符将所选择的表示定义为默认视图。
图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或多媒体显示器的远程控制器的如照相机、智能电话、头戴式显示器或平板终端那样的装置中,以例如放大到特定关注区域上。还可以从相同装置使用本发明,以通过选择特定关注区域来获得多媒体呈现的个性化浏览体验。用户根据这些装置和方法的另一用途是与其它所连接的装置共享他所喜好的视频中的一些选中的子部分。本发明还可用在智能电话或平板终端中以监视在处于监控下的建筑物的特定区域中发生了什么,只要监控照相机支持根据本发明的用于提供数据的方法即可。
在参考仅以示例方式给出且并不意图限制本发明范围的前述例示实施例的情况下,许多其它修改和改变对本领域普通技术人员是不言自明的,其中所述范围仅由所附权利要求书来确定。特别地,在适当情况下,可以互换来自不同实施例的不同特征。
附录
表1:具有指定视野的信息的伪清单
表2:具有指定优选视野的信息的伪清单
表3:具有指定最佳视点的信息的伪清单
表4a:具有基于SRD描述符来指定与质量等级值相关联的质量区域的信息的伪清
单
表4b:具有基于SRD描述符来指定与质量等级值相关联的质量区域的信息的伪清
单
表4c:具有指定与质量等级值相关联的质量区域的信息的伪清单
表5:具有指定与质量等级值相关联的质量区域的信息的伪清单
Claims (25)
1.一种用于接收符合全向媒体格式的媒体数据的方法,所述方法包括:
从服务器接收媒体呈现描述,所述媒体呈现描述符合MPEG-DASH标准并且包括:(i)若干个区域的媒体数据的统一资源标识符;(ii)用于描述所述若干个区域中的各区域的媒体数据的媒体信息;以及(iii)用信号通知所述若干个区域至少之一的质量等级的质量信息;
根据质量等级来选择所述若干个区域中的一个或多个区域;
将用以通过使用所述媒体呈现描述的至少一个统一资源标识符来请求与所选择的一个或多个区域相对应的媒体数据的至少一个请求消息发送至所述服务器;以及
根据所述至少一个请求消息,从所述服务器接收与所述一个或多个区域相对应的媒体数据。
2.根据权利要求1所述的方法,其中,所述质量信息是在具有特定@shemeIdUri的SupplementalProperty元素中描述的。
3.根据权利要求1所述的方法,其中,所述质量信息存在于适应集级或表现级。
4.根据权利要求1所述的方法,其中,所述区域是2D区域。
5.根据权利要求1所述的方法,其中,所述区域表示所述媒体数据在3D几何显示器上的几何投影。
6.根据权利要求5所述的方法,其中,所述区域表示所述媒体数据在球体的至少部分上的几何投影。
7.根据权利要求6所述的方法,其中,所述球体的该部分由俯仰值、横摆值、侧倾值、水平视野角和垂直视野角来表征。
8.根据权利要求1所述的方法,其中,所述媒体呈现描述还包括视野信息。
9.一种用于提供符合全向媒体格式的媒体数据的方法,所述方法包括:
向客户端发送媒体呈现描述,所述媒体呈现描述符合MPEG-DASH标准并且包括:(i)若干个区域的媒体数据的统一资源标识符;(ii)用于描述所述若干个区域中的各区域的媒体数据的媒体信息;以及(iii)用信号通知所述若干个区域至少之一的质量等级的质量信息;
从所述客户端接收用以通过使用所述媒体呈现描述的至少一个统一资源标识符来请求与用户根据质量等级所选择的一个或多个区域相对应的媒体数据的至少一个请求消息;以及
根据所述至少一个请求消息,将与所述一个或多个区域相对应的媒体数据提供至所述客户端。
10.根据权利要求9所述的方法,其中,所述质量信息是在具有特定@shemeIdUri的SupplementalProperty元素中描述的。
11.根据权利要求9所述的方法,其中,所述区域是2D区域。
12.根据权利要求9所述的方法,其中,所述区域表示所述媒体数据在3D几何显示器上的几何投影。
13.根据权利要求12所述的方法,其中,所述区域表示所述媒体数据在球体的至少部分上的几何投影。
14.根据权利要求13所述的方法,其中,所述球体的该部分由俯仰值、横摆值、侧倾值、水平视野角和垂直视野角来表征。
15.一种客户端装置,用于接收符合全向媒体格式的媒体数据,所述客户端装置包括:
硬件处理器;以及
存储器,用于存储一个或多个程序,所述一个或多个程序被配置成由所述硬件处理器执行,并且所述一个或多个程序包括用于进行以下操作的指令:
从服务器接收媒体呈现描述,所述媒体呈现描述符合MPEG-DASH标准并且包括:(i)若干个区域的媒体数据的统一资源标识符;(ii)用于描述所述若干个区域中的各区域的媒体数据的媒体信息;以及(iii)用信号通知所述若干个区域至少之一的质量等级的质量信息;
根据质量等级来选择所述若干个区域中的一个或多个区域;
将用以通过使用所述媒体呈现描述的至少一个统一资源标识符来请求与所选择的一个或多个区域相对应的媒体数据的至少一个请求消息发送至所述服务器;以及
根据所述至少一个请求消息,从所述服务器接收与所述一个或多个区域相对应的媒体数据。
16.根据权利要求15所述的客户端装置,其中,所述质量信息是在具有特定@shemeIdUri的SupplementalProperty元素中描述的。
17.根据权利要求15所述的客户端装置,其中,所述区域是2D区域。
18.一种服务器装置,用于提供符合全向媒体格式的媒体数据,所述服务器装置包括:
硬件处理器;以及
存储器,用于存储一个或多个程序,所述一个或多个程序被配置成由所述硬件处理器执行,并且所述一个或多个程序包括用于进行以下操作的指令:
向客户端发送媒体呈现描述,所述媒体呈现描述符合MPEG-DASH标准并且包括:(i)若干个区域的媒体数据的统一资源标识符;(ii)所述若干个区域中的各区域的媒体数据的媒体信息;以及(iii)用信号通知所述若干个区域至少之一的质量等级的质量信息;
从所述客户端接收用以通过使用所述媒体呈现描述的至少一个统一资源标识符来请求与用户根据质量等级所选择的一个或多个区域相对应的媒体数据的至少一个请求消息;以及
根据所述至少一个请求消息,将与所述一个或多个区域相对应的媒体数据提供至所述客户端。
19.根据权利要求18所述的服务器装置,其中,所述质量信息是在具有特定@shemeIdUri的SupplementalProperty元素中描述的。
20.根据权利要求18所述的服务器装置,其中,所述区域是2D区域。
21.一种非暂时性计算机可读存储介质,用于存储程序,所述程序用于使计算机执行方法,所述方法包括:
从服务器接收媒体呈现描述,所述媒体呈现描述符合MPEG-DASH标准并且包括:(i)若干个区域的媒体数据的统一资源标识符;(ii)用于描述所述若干个区域中的各区域的媒体数据的媒体信息;以及(iii)用信号通知所述若干个区域至少之一的质量等级的质量信息;
根据质量等级来选择所述若干个区域中的一个或多个区域;
将用以通过使用所述媒体呈现描述的至少一个统一资源标识符来请求与所选择的一个或多个区域相对应的媒体数据的至少一个请求消息发送至所述服务器;以及
根据所述至少一个请求消息,从所述服务器接收与所述一个或多个区域相对应的媒体数据。
22.根据权利要求21所述的非暂时性计算机可读存储介质,其中,所述质量信息是在具有特定@shemeIdUri的SupplementalProperty元素中描述的。
23.根据权利要求21所述的非暂时性计算机可读存储介质,其中,所述区域是2D区域。
24.一种非暂时性计算机可读存储介质,用于存储程序,所述程序用于使计算机执行方法,所述方法包括:
向客户端发送媒体呈现描述,所述媒体呈现描述符合MPEG-DASH标准并且包括:(i)若干个区域的媒体数据的统一资源标识符;(ii)用于描述所述若干个区域中的各区域的媒体数据的媒体信息;以及(iii)用信号通知所述若干个区域至少之一的质量等级的质量信息;
从所述客户端接收用以通过使用所述媒体呈现描述的至少一个统一资源标识符来请求与用户根据质量等级所选择的一个或多个区域相对应的媒体数据的至少一个请求消息;以及
根据所述至少一个请求消息,将与所述一个或多个区域相对应的媒体数据提供至所述客户端。
25.根据权利要求24所述的非暂时性计算机可读存储介质,其中,所述质量信息是在具有特定@shemeIdUri的SupplementalProperty元素中描述的。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1609058.1A GB2550589B (en) | 2016-05-23 | 2016-05-23 | Method, device, and computer program for improving streaming of virtual reality media content |
GB1609058.1 | 2016-05-23 | ||
PCT/EP2017/062051 WO2017202700A1 (en) | 2016-05-23 | 2017-05-18 | Method, device, and computer program for improving streaming of virtual reality media content |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109155873A CN109155873A (zh) | 2019-01-04 |
CN109155873B true CN109155873B (zh) | 2021-09-17 |
Family
ID=56369831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780032232.7A Active CN109155873B (zh) | 2016-05-23 | 2017-05-18 | 改进虚拟现实媒体内容的流传输的方法、装置和计算机程序 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20190158933A1 (zh) |
EP (1) | EP3466091B1 (zh) |
JP (1) | JP6979035B2 (zh) |
KR (1) | KR102246002B1 (zh) |
CN (1) | CN109155873B (zh) |
GB (1) | GB2550589B (zh) |
WO (1) | WO2017202700A1 (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6485865B2 (ja) * | 2015-05-15 | 2019-03-20 | 日本電気株式会社 | 配信制御装置、中継装置、配信システム、配信制御方法、及びプログラム |
US10587934B2 (en) * | 2016-05-24 | 2020-03-10 | Qualcomm Incorporated | Virtual reality video signaling in dynamic adaptive streaming over HTTP |
EP3466079B1 (en) * | 2016-05-24 | 2023-07-12 | Nokia Technologies Oy | Method and an apparatus and a computer program for encoding media content |
CN114928736B (zh) * | 2016-10-12 | 2024-04-19 | 弗劳恩霍夫应用研究促进协会 | 空间不均等流媒体化 |
KR102633595B1 (ko) * | 2016-11-21 | 2024-02-05 | 삼성전자주식회사 | 디스플레이장치 및 그 제어방법 |
US10560660B2 (en) | 2017-01-04 | 2020-02-11 | Intel Corporation | Rectilinear viewport extraction from a region of a wide field of view using messaging in video transmission |
US20190104326A1 (en) * | 2017-10-03 | 2019-04-04 | Qualcomm Incorporated | Content source description for immersive media data |
JP2019118026A (ja) * | 2017-12-27 | 2019-07-18 | キヤノン株式会社 | 情報処理装置、情報処理方法、及びプログラム |
US11463681B2 (en) | 2018-02-23 | 2022-10-04 | Nokia Technologies Oy | Encoding and decoding of volumetric video |
EP3741130B1 (en) * | 2018-04-05 | 2023-11-22 | Huawei Technologies Co., Ltd. | Efficient association between dash objects |
CN110519652B (zh) * | 2018-05-22 | 2021-05-18 | 华为软件技术有限公司 | Vr视频播放方法、终端及服务器 |
US10779014B2 (en) | 2018-10-18 | 2020-09-15 | At&T Intellectual Property I, L.P. | Tile scheduler for viewport-adaptive panoramic video streaming |
WO2020116154A1 (ja) * | 2018-12-03 | 2020-06-11 | ソニー株式会社 | 情報処理装置および方法 |
WO2020190270A1 (en) * | 2019-03-15 | 2020-09-24 | STX Financing, LLC | Systems and methods for compressing and decompressing a sequence of images |
WO2020198164A1 (en) | 2019-03-26 | 2020-10-01 | Pcms Holdings, Inc. | System and method for multiplexed rendering of light fields |
WO2020234373A1 (en) * | 2019-05-20 | 2020-11-26 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Immersive media content presentation and interactive 360° video communication |
CN112150603B (zh) * | 2019-06-28 | 2023-03-28 | 上海交通大学 | 基于三维点云的初始视角控制和呈现方法及系统 |
CN110619669B (zh) * | 2019-09-19 | 2023-03-28 | 深圳市富视康智能股份有限公司 | 一种支持多种图形样式的鱼眼图像渲染系统及方法 |
CN113766272B (zh) * | 2020-06-04 | 2023-02-10 | 腾讯科技(深圳)有限公司 | 一种沉浸媒体的数据处理方法 |
CN115004716A (zh) | 2020-06-24 | 2022-09-02 | 中兴通讯股份有限公司 | 容积媒体处理方法和装置 |
US20220103655A1 (en) * | 2020-09-29 | 2022-03-31 | International Business Machines Corporation | Proactively selecting virtual reality content contexts |
US11922561B2 (en) * | 2020-10-06 | 2024-03-05 | Mediatek Singapore Pte. Ltd. | Methods and systems for implementing scene descriptions using derived visual tracks |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103583050A (zh) * | 2011-06-08 | 2014-02-12 | 皇家Kpn公司 | 空间分段的内容的递送 |
EP2824885A1 (en) * | 2013-07-12 | 2015-01-14 | Alcatel Lucent | A manifest file format supporting panoramic video |
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 (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001285832A (ja) * | 2000-01-24 | 2001-10-12 | Matsushita Electric Ind Co Ltd | データ受信装置,データ受信方法,データ伝送方法,およびデータ記憶媒体 |
CN102056015B (zh) * | 2009-11-04 | 2012-12-05 | 沈阳迅景科技有限公司 | 一种全景虚拟现实漫游中的流媒体应用方法 |
EP2973228B1 (en) * | 2013-07-26 | 2019-08-28 | Huawei Technologies Co., Ltd. | Spatial adaptation in adaptive streaming |
US20150130814A1 (en) * | 2013-11-11 | 2015-05-14 | Amazon Technologies, Inc. | Data collection for multiple view generation |
EP3162075B1 (en) * | 2014-06-27 | 2020-04-08 | Koninklijke KPN N.V. | Hevc-tiled video streaming |
-
2016
- 2016-05-23 GB GB1609058.1A patent/GB2550589B/en active Active
-
2017
- 2017-05-18 EP EP17724354.0A patent/EP3466091B1/en active Active
- 2017-05-18 KR KR1020187036347A patent/KR102246002B1/ko active IP Right Grant
- 2017-05-18 JP JP2018560004A patent/JP6979035B2/ja active Active
- 2017-05-18 CN CN201780032232.7A patent/CN109155873B/zh active Active
- 2017-05-18 WO PCT/EP2017/062051 patent/WO2017202700A1/en unknown
- 2017-05-18 US US16/099,395 patent/US20190158933A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103583050A (zh) * | 2011-06-08 | 2014-02-12 | 皇家Kpn公司 | 空间分段的内容的递送 |
EP2824885A1 (en) * | 2013-07-12 | 2015-01-14 | Alcatel Lucent | A manifest file format supporting panoramic video |
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 |
---|---|
GB2550589B (en) | 2019-12-04 |
JP2019524004A (ja) | 2019-08-29 |
CN109155873A (zh) | 2019-01-04 |
GB2550589A (en) | 2017-11-29 |
US20190158933A1 (en) | 2019-05-23 |
JP6979035B2 (ja) | 2021-12-08 |
EP3466091A1 (en) | 2019-04-10 |
EP3466091B1 (en) | 2022-05-04 |
WO2017202700A1 (en) | 2017-11-30 |
KR102246002B1 (ko) | 2021-04-29 |
KR20190008901A (ko) | 2019-01-25 |
GB201609058D0 (en) | 2016-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109155873B (zh) | 改进虚拟现实媒体内容的流传输的方法、装置和计算机程序 | |
CN109155874B (zh) | 虚拟现实媒体内容的自适应流传输的方法、装置和计算机程序 | |
JP6735415B2 (ja) | オーディオビジュアルコンテンツの観察点および観察向きの制御された選択のための方法および装置 | |
JP6516766B2 (ja) | 分割タイムドメディアデータのストリーミングを改善するための方法、デバイス、およびコンピュータプログラム | |
EP3782368A1 (en) | Processing video patches for three-dimensional content | |
JP2022133439A (ja) | メディアコンテンツを送信するための方法、装置及びコンピュータプログラム | |
US20200145736A1 (en) | Media data processing method and apparatus | |
JP7035088B2 (ja) | 魚眼ビデオデータのための高レベルシグナリング | |
US11438731B2 (en) | Method and apparatus for incorporating location awareness in media content | |
US20220038791A1 (en) | Method and apparatus for storage and signaling of media segment sizes and priority ranks | |
EP3939327A1 (en) | Method and apparatus for grouping entities in media content | |
EP4128808A1 (en) | An apparatus, a method and a computer program for video coding and decoding | |
CN114930869A (zh) | 用于视频编码和视频解码的方法、装置和计算机程序产品 | |
WO2023194648A1 (en) | A method, an apparatus and a computer program product for media streaming of immersive media |
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 |