[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN110419224A - 用于封装和流传输虚拟现实媒体内容的方法和装置 - Google Patents

用于封装和流传输虚拟现实媒体内容的方法和装置 Download PDF

Info

Publication number
CN110419224A
CN110419224A CN201880018573.3A CN201880018573A CN110419224A CN 110419224 A CN110419224 A CN 110419224A CN 201880018573 A CN201880018573 A CN 201880018573A CN 110419224 A CN110419224 A CN 110419224A
Authority
CN
China
Prior art keywords
content
video
video content
resolution
subregion
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201880018573.3A
Other languages
English (en)
Other versions
CN110419224B (zh
Inventor
柳成浩
I.布亚齐兹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN110419224A publication Critical patent/CN110419224A/zh
Application granted granted Critical
Publication of CN110419224B publication Critical patent/CN110419224B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234363Processing 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 altering the spatial resolution, e.g. for clients with a lower screen resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21805Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing 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 for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23605Creation or processing of packetized elementary streams [PES]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4347Demultiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2628Alteration of picture size, shape, position or orientation, e.g. zooming, rotation, rolling, perspective, translation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Remote Sensing (AREA)
  • Computer Graphics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

公开了一种用于封装和消费视频内容的电子设备、服务器和方法。电子设备包括传感器、可操作地连接到传感器的至少一个处理器以及可操作地连接到至少一个处理器的收发器。至少一个处理器被配置为基于传感器的输出确定视频内容的当前视口。收发器被配置为请求和接收媒体流,媒体流包括(i)覆盖当前视口的视频内容的高分辨率视频分区和(ii)相对于视频内容旋转的视频内容的低分辨率版本。至少一个处理器还被配置为处理封装以渲染视频内容的高分辨率视频分区或视频内容的低分辨率版本中的至少一个。视频内容的高分辨率视频分区和低分辨率视频被封装在一起。

Description

用于封装和流传输虚拟现实媒体内容的方法和装置
技术领域
本公开一般地涉及虚拟现实。更具体地,本公开涉及封装虚拟现实内容以使得采用减小的带宽的更高渲染分辨率内容成为可能。
背景技术
虚拟现实体验正在变得突出。例如,由于诸如智能电话的强大的手持设备随时可用,360°视频作为体验沉浸式视频的新方式而出现。随着VR相关技术的发展,用户可以通过使用各种设备来观看360°内容。与观看平面图像时相比,用户观看诸如视频和图像的360°内容时更加沉浸。360°视频通过捕捉360°世界视图,使得为消费者提供沉浸式的“现实生活”、“在那里”体验成为可能。
用户可以交互式地改变他们的视点并且动态地观看他们期望的捕获场景的任何部分。显示和导航传感器实时跟踪头部运动以确定用户想要观看的360°视频的区域。
发明内容
技术问题
本公开提供了用于封装和流传输虚拟现实(VR)媒体内容的方法和装置。
技术方案
在一个实施例中,提供一种用于消费视频内容的电子设备。该电子设备包括传感器、可操作地连接到传感器的至少一个处理器以及可操作地连接到至少一个处理器的收发器。至少一个处理器被配置为基于传感器的输出确定视频内容的当前视口。收发器被配置为请求和接收媒体流,媒体流包括(i)覆盖当前视口的视频内容的高分辨率视频分区和(ii)相对于视频内容旋转的视频内容的低分辨率版本。至少一个处理器还被配置为处理媒体流以渲染视频内容的高分辨率视频分区或视频内容的低分辨率版本中的至少一个。
在另一实施例中,提供一种用于封装依赖于视口的内容的服务器。服务器包括:通信接口;以及可操作地连接到通信接口的至少一个处理器。至少一个处理器配置为:将高分辨率视频内容划分为多个重叠的高分辨率视频分区,每个分区覆盖视频内容的视口。至少一个处理器被配置为生成相对于视频内容旋转的视频内容的低分辨率版本。至少一个处理器被配置为通过将高分辨率视频分区中的一个和视频内容的旋转的低分辨率版封装在一起来生成媒体流。
在又一实施例中,提供一种在电子设备上消费视频内容的方法。方法包括基于电子设备的传感器的输出确定视频内容的当前视口。方法包括请求和接收媒体流,媒体流包括(i)覆盖当前视口的视频内容的高分辨率视频分区和(ii)相对于视频内容旋转的视频内容的低分辨率版本。另外,方法包括处理媒体流以渲染视频内容的高分辨率视频分区或视频内容的低分辨率版本中的至少一个,其中,视频内容的高分辨率视频分区和低分辨率版本被封装在一起。
根据以下附图、描述和权利要求,本领域技术人员可以容易地明白其他技术特征。
在进行下面的详细描述之前,阐述贯穿本专利文件中使用的特定词语和短语的定义可能是有利的。术语“耦合”及其衍生词指代两个或更多个元件之间的任何直接或间接通信,无论这些元件是否彼此物理接触。术语“发送”、“接收”和“通信”及其衍生词包含直接和间接通信。术语“包括”和“包含”及其衍生词意指包含但不限于此。术语“或”是包含性的,意思是和/或。短语“与...相关联”及其衍生词意指包括、包括在内、与之互连、包含、包含在内、连接到或与之连接、耦合到或与之耦合、与之通信、协作、交织、并置、接近于、被绑定到或与之绑定、具有、具有...属性、与之或和之有关等。术语“控制器”意指控制至少一个操作的任何设备、系统或其部分。这样的控制器可以实施为硬件或者硬件以及软件和/或固件的组合。与任何特定控制器相关联的功能可以是集中式的或分布式的,无论是本地地还是远程地。当与项目列表一起使用时,短语“至少一个”意指可以使用所列项目中的一个或多个的不同组合,并且可能仅需要列表中的一个项目。例如,“A、B和C中的至少一个”包括以下任何组合:A、B、C、A和B、A和C、B和C以及A和B和C。
此外,下面描述的各种功能可以由一个或多个计算机程序实施或支持,一个或多个计算机程序中的每个从计算机可读程序代码形成并且体现在计算机可读介质中。术语“应用”和“程序”是指适于在合适的计算机可读程序代码中实施的一个或多个计算机程序、软件组件、指令集、过程、功能、对象、类、实例、相关数据或其一部分。短语“计算机可读程序代码”包括任何类型的计算机代码,包括源代码、目标代码和可执行代码。短语“计算机可读介质”包括能够被计算机访问的任何类型的介质,诸如只读存储器(ROM)、随机存取存储器(RAM)、硬盘驱动器、压缩盘(CD)、数字视频盘(DVD)或任何其他类型的存储器。“非临时性”计算机可读介质不包括传输瞬时电信号或其他信号的有线的、无线的、光学的或其他通信链路。非临时性计算机可读介质包括可以永久存储数据的介质和可以存储并且稍后重写的数据的介质,诸如可重写光盘或可擦除存储器设备。
贯穿本专利文件中提供了其他特定词语和短语的定义。本领域普通技术人员应该理解,在许多情况下(如果不是大多数情况),这种定义适用于这样定义的词语和短语的先前以及将来的使用。
本发明的有益效果
本公开的各种实施例提供了一种用于有效地封装和流传输虚拟现实(VR)媒体内容的方法和装置。
附图说明
为了更完整地理解本公开及其优点,现在参考结合附图的以下描述,其中,相同的附图标记表示相同的部分:
图1示出根据本公开实施例的示例通信系统;
图2示出根据本公开的实施例的示例服务器;
图3示出根据本公开的实施例的示例电子设备;
图4示出根据本公开的实施例的示例框图;
图5A示出根据本公开的实施例的示例虚拟现实(VR)内容;
图5B和图5C示出根据本公开的实施例的用于划分视场VR内容的示例;
图6示出根据本公开的实施例的用于创建低分辨率VR内容的示例;
图7A和图7B示出根据本公开的实施例的用于封装划分的视场VR内容与低分辨率VR内容的示例;
图8A示出根据本公开的实施例的用于封装VR内容的示例流程图;
图8B示出根据本公开的实施例的用于发送单个视场VR流的示例流程图;
图9A示出根据本公开的实施例的用于渲染封装的VR内容的示例流程图;以及
图9B示出根据本公开的实施例的用于接收视场VR流的示例流程图。
具体实施方式
以下讨论的图1至图9B以及用于描述本专利文件中的本公开的原理的各种实施例仅是示例性的,并且不应以任何方式解释为限制本公开的范围。本领域技术人员将理解,本公开的原理可以实施在任何适当布置的系统或设备中。
虚拟现实(VR)是显示器或耳机上的视觉和音频场景的渲染版本。渲染被设计成在观察者或用户在应用定义的限制内移动时尽可能自然地向观察者或用户模仿现实世界的视觉和听觉感官刺激。例如,VR将用户置于与他们的头部运动交互的沉浸式世界中。在视频级别,通过提供尽可能多地覆盖视场(FOV)的视频体验以及所渲染的视频的视角与头部运动的同步来实现VR。虽然许多不同类型的设备能够提供这种体验,但是头戴式显示器是最受欢迎的。通常,头戴式显示器依赖于集成在设备中与外部计算机(系链的)一起运行的专用屏幕,或依赖于插入头戴式显示器的智能电话(不系链的)。第一种方法利用轻量级屏幕并且受益于高计算能力。相比之下,基于智能电话的系统利用更高的移动性,并且生产成本更低。在这两种情况下,视频体验是相同的。
VR内容可以包括高质量的全向360°媒体场景。例如,高质量可以包括1080p分辨率、4K分辨率或更高。全向360°媒体场景可以包括围绕用户的改变的、增强的或替代的环境的视听模拟的图像、视频和内容,从而允许用户在所有方向上环视(look around),就像就像人(和用户)在现实生活中可以做的一样。内容可以是实时的、先前捕获的视频以及计算机生成的内容。360°VR内容是映射到三维几何体(诸如球体)的沉浸式球形视频。VR视频使用户可以在播放期间环视。例如,用户可以通过专用VR头戴式显示器环视VR内容。
VR内容可以依赖于捕获系统的能力而以不同的格式表示,诸如全景图或球体。例如,内容可以是从现实生活捕获的或计算机生成的或者其组合。从现实世界捕获到视频的事件通常需要多个(两个或更多)相机来记录周围环境。虽然这种VR可以由多个使用大量相似相机的人操纵,但是需要每视图两个相机来创建景深。在另一示例中,内容可以由计算机生成,诸如计算机生成的图像(CGI)。在另一个示例中,现实世界内容与CGI的组合被称为增强现实。
许多系统捕获覆盖360°×180°视图、360°×360°视图等的球形视频。360°×180°视图表示为半球形视图。例如,360°×180°视图是球体上半部分的渲染视图,其中,观察者可以观看水平面中的360°和垂直视图平面中的180°。360°×360°视图表示为完整的球形渲染,覆盖整个球体。例如,可以通过将两个360°×180°视图拼接在一起以产生覆盖整个360°视图的单个视频或图像来生成360°×360°视图。360°×180°视图内捕获内容通常由多个相机执行。各种相机配置可以用于记录二维内容和三维内容。将从每个相机捕获的视图拼接在一起,以将全向相机系统的各个视图组合成单个全景或球体。拼接过程通常避免每个单个视图之间的视差错误和可见过渡。
如上所述,当在下文中使用时,VR内容和VR视频包括全向360°媒体场景。例如,VR内容和VR视频将观看者置于沉浸式环境中,其允许用户基于他们的头部运动来交互和查看环境的不同区域,如上所述。
等距矩形投影(Equirectangular projection,ERP)是一种常用于VR内容的图像投影技术。ERP可以对全景图像应用特定失真,使得图像在球体内投影时能够正确地显示图像。例如,在ERP投影期间,水平坐标和垂直坐标分别地简单地对应于经度和纬度,而不应用变换或缩放。在投影之后,可以将所获得的二维矩形图像划分成可以重新排列的区域以生成“封装”帧。
高分辨率和低分辨率可以通过显示器上使用的像素数量来区分。在标识显示器上的像素数量时,通常使用以下表示:“水平像素×垂直像素”。即,在显示器上,沿水平线的像素数量,但是垂直线的数量。例如,通过1,920×1,080(水平像素×垂直像素)的分辨率来标识高清晰度分辨率。通过3,840×2,160来标识超高清(UHD)的分辨率。通过4096×2160的分辨率来标识4K。可以实现更高的分辨率,诸如6K和8K等。应当注意,如本文所讨论的示例性分辨率仅用于示例且不旨在限制本公开。
为了提供更高渲染分辨率内容,需要封装实施方式来传输高质量内容,同时减少处理和缓冲延迟。由于通过有限的带宽传输高质量图像的挑战,与传统的二维显示器相比,VR内容传统上具有较低的分辨率。有限的带宽可能是由显示设备上的约束引起的,诸如无线VR头戴式显示器。例如,无线VR头戴式显示器可能具有比特率要求。目前4K视频分辨率被用作无线VR头戴式显示器的功能最小分辨率,而同时寻求更高的分辨率,诸如6K或更高。因此,将这种分辨率传输到无线VR头戴式显示器的带宽要求正在增加。为了提供更高渲染分辨率内容,提供了封装实施方法和装置以执行有效的VR流传输。例如,本公开的实施例提供依赖于FOV的VR递送。为了在降低整体带宽的同时提供沉浸式体验,由于更高分辨率的内容,利用了低运动到光子(motion-to-photon)延迟。
根据本公开的实施例,提供了用于流传输VR 360°视频或广角视频内容的封装技术。VR 360°视频或广角视频内容被划分为重叠分区。360°视频或广角视频可以是高质量的ERP,诸如4K分辨率。每个重叠分区称为区块(tile)。此后,高质量ERP被下采样到低质量ERP,覆盖整个360°视频或广角视频ERP表示。在特定实施例中,高质量ERP在空间上被下采样。为了有效地封装内容,当将高质量ERP下采样到低质量ERP时,低质量ERP被缩放,使得低质量ERP的水平分辨率类似于高质量ERP的垂直分辨率。此后,低质量ERP旋转90度。每个划分的高质量ERP与旋转的低质量ERP封装在一起。由此产生的封装是耦合有旋转的低质量ERP的高质量ERP的划分的片段。即,高质量ERP是360°视频或广角视频的片段,而低质量ERP是整个360°视频或广角视频。
根据本公开的实施例,对多个FOV视频序列进行编码以产生FOV视频流的多个版本。服务器根据用户在电子设备(诸如头戴式显示器)上的观看方向动态地发送FOV视频流。电子设备动态地接收FOV视频流。电子设备仅解码和播放一个FOV视频流,并且渲染与当前视口相对应的纹理部分。电子设备优先考虑来自高质量区块的渲染,并且仅使用低质量纹理来渲染未被接收的高质量区块纹理覆盖的区域。
根据本公开的实施例,通过划分高质量VR内容以及对VR内容进行下采样,传输利用比发送整个高质量VR内容更少的带宽。另外,通过仅发送高质量VR内容的单个分区,显示内容的电子设备可以避免解码和同步多个视频流。此外,服务器可以在一段时间内仅发送一个或多个FOV视频流,以提供定向的特定的观看,诸如FOV VR流传输。
图1示出根据本公开的示例计算系统100。图1中所示的系统100的实施例仅用于说明。在不脱离本公开的范围的情况下,可以使用系统100的其他实施例。
系统100包括促进系统100中的各种组件之间的通信的网络102。例如,网络102可以在网络地址之间传送(communicate)互联网协议(IP)分组、帧中继帧、异步传输模式(ATM)小区或其他信息。网络102包括一个或多个局域网(LAN)、城域网(MAN)、广域网(WAN),全球网络(诸如互联网)的全部或部分,或在一个或多个地点的任何其他一个或多个通信系统。
网络102促进服务器104和各种客户端设备106-115之间的通信。客户端设备106-115可以是例如智能电话、平板型计算机、膝上型计算机、个人计算机、可穿戴设备或头戴式显示器(HMD)。服务器104可以表示一个或多个服务器。每个服务器104包括可以为一个或多个客户端设备提供计算服务的任何合适的计算或处理设备。每个服务器104可以例如包括一个或多个处理设备、存储指令和数据的一个或多个存储器以及促进通过网络102进行通信的一个或多个网络接口。如下面更详细描述地,服务器104向一个或多个用户发送360°VR视频内容。
每个客户端设备106-115表示通过网络102与至少一个服务器或其他计算设备交互的任何合适的计算或处理设备。在该示例中,客户端设备106-115包括桌面型计算机106、移动电话或移动设备108(诸如智能电话)、个人数字助理(PDA)110、膝上型计算机112、平板型计算机114和HMD 115。然而,系统100中可以使用任何其他或额外的客户端设备。
在该示例中,一些客户端设备108-115与网络102间接地通信。例如,客户端设备108和110(分别是移动设备108和PDA 110)经由一个或多个基站116(诸如蜂窝基站或e节点B(eNB))进行通信。移动设备108包括智能电话。智能电话表示一类移动设备108,其是具有移动操作系统和集成移动宽带蜂窝网络连接的手持设备,以用于语音、短消息服务(SMS)和互联网数据通信。另外,客户端设备112、114和115(分别为膝上型计算机112,平板型计算机114和头戴式显示器(HMD)115)经由一个或多个无线接入点118(诸如IEEE 802.11无线接入点)进行通信。如下面更详细描述地,HMD 115可以向一个或多个用户显示360°视频。应当注意,这些仅用于说明,并且每个客户端设备106-115可以与网络102直接地通信或者通过任何合适的中间设备或网络与网络102间接通信。
在特定实施例中,移动设备108(或任何其他客户端设备106-115)可以安全地并且有效地向另一设备(诸如,例如服务器104)发送信息。移动设备108(或任何其他客户端设备106-115)当附接到耳机时可以用作VR显示器并且可以类似于HMD 115起作用。移动设备108(或任何其他客户端设备106-115)可以触发其自身与服务器104之间的信息传输。
尽管图1示出了系统100的一个示例,但是可以对图1进行各种改变。例如,系统100可以以任何合适的布置包括任何数量的每个组件。通常,计算和通信系统具有各种各样的配置,并且图1不将本公开的范围限制于任何特定配置。尽管图1示出了其中可以使用本专利文件中公开的各种特征的一个操作环境,这些特征可以用在任何其他合适的系统中。
本公开中提供的处理和系统允许客户端设备或服务器在360°VR环境内提供时控(timed)内容。在特定实施例中,客户端设备106-115以未失真的方式显示VR内容和视频。例如,服务器104封装VR内容。每个封装可以基于如由客户端设备106-115确定的用户的FOV。然后,服务器104可以将VR视频数据发送到客户端设备106-115。然后,客户端设备106-115渲染VR内容。
图2和图3示出根据本公开的实施例的计算系统中的示例设备。特别地,图2示出示例服务器200,而图3示出示例电子设备300。服务器200可以表示图1的服务器104,而电子设备300可以表示图1的客户端设备106-115中的一个或多个。
服务器200可以表示一个或多个本地服务器、一个或多个全向视频服务器、一个或多个VR流服务器等。如图2所示,服务器200包括总线系统205,其支持至少一个处理器210、至少一个存储设备215、至少一个通信接口220和至少一个输入/输出之间的通信(I/O)单元225之间的通信。
处理器210执行可以存储在存储器230中的指令。存储在存储器230中的指令可以包括用于对VR内容进行划分和下采样的指令。存储在存储器230中的指令还可以包括用于封装每个高质量划分片段与下采样(低质量)VR内容的指令。存储在存储器230中的指令还可以包括用于在客户端设备106-115上渲染360°场景的指令。例如,用于渲染360°场景的指令可以包括相较于低质量视频对于高质量片段给予优先级。例如,如果高质量段未覆盖用户的当前视口,则指令可以通知显示设备(诸如客户端设备106-115)在发送高质量片段的同时渲染低质量视频。处理器210可以以任何合适的布置包括任何合适数量和类型的处理器或其他设备。示例类型的处理器210包括微处理器、微控制器、数字信号处理器、现场可编程门阵列、专用集成电路和分立电路。
存储器230和永久存储装置235是存储设备215的示例,其表示能够存储和促进信息(诸如数据、程序代码或临时或永久的其他合适信息)的检索的任何结构。存储器230可以表示随机存取存储器或任何其他合适的易失性或非易失性存储设备。永久存储装置235可以包含支持数据的长期存储的一个或多个组件或设备,诸如只读存储器、硬盘驱动、闪速存储器或光盘。
通信接口220支持与其他系统或设备的通信。例如,通信接口220可以包括网络接口卡或无线收发器,其促进通过图1的网络102的通信。通信接口220可以通过任何合适的物理或无线通信链路支持通信。
I/O单元225允许输入和输出数据。例如,I/O单元225可以通过键盘、鼠标、小键盘、触摸屏、运动传感器或其他合适的输入设备为用户输入提供连接。I/O单元225还可以将输出发送到显示器、打印机或其他合适的输出设备。
在特定实施例中,服务器200实施VR内容的划分和封装。在特定实施例中,服务器200将高质量VR内容划分为多个重叠的片段。然后,服务器200可以对高质量VR内容(整个内容,而不是每个单独的片段)进行下采样(或压缩)。此后,服务器200然后将每个高质量VR内容片段与整个VR视频的下采样VR内容封装。然后,每个封装可以通过通信接口220发送到客户端设备,诸如客户端设备106-115,其中客户端设备渲染并且向用户显示VR内容以供观看。
应当注意,尽管图2描述为表示图1的服务器104,但是可以在各种客户端设备106-115中的一个或多个中使用相同或相似的结构。例如,桌面型计算机106或膝上型计算机112可以具有与图2所示相同或相似的结构。
图3示出根据本公开的实施例的电子设备300。图3中所示的电子设备300的实施例仅用于说明,并且在不脱离本公开的范围的情况下,可以使用其他实施例。电子设备300可以具有各种各样的配置,并且图3不将本公开的范围限制于电子设备的任何特定实施方式。在特定实施例中,图1的客户端设备106-115中的一个或多个可以包括与电子设备300相同或相似的配置。
在特定实施例中,电子设备300可用于数据传送和媒体播放应用。电子设备300可以是移动通信和显示设备,诸如,例如无线终端、桌面型计算机(类似于图1的桌面型计算机106)、移动设备(类似于图1的移动设备108)、PDA(类似于图1的PDA 110)、膝上型计算机(类似于图1的膝上型计算机112),平板型计算机(类似于图1的平板型计算机114)、头戴式显示器(类似于图1的HMD 115)等。
如图3所示,电子设备300包括天线305、射频(RF)收发器310、发送(TX)处理电路315、麦克风320和接收(RX)处理电路325。电子设备300还包括扬声器330、一个或多个处理器340、输入/输出(I/O)接口(IF)345、输入350、显示器355和存储器360。存储器360包括基本操作系统(OS)361和一个或多个应用程序362。
RF收发器310从天线305接收由系统上的另一组件发送的传入RF信号。例如,RF收发器310从网络102(诸如WI-FI、蓝牙、蜂窝、5G、LTE、LTE-A、WiMAX或任何其他类型的无线网络)的接入点(诸如基站、Wi-Fi路由器、蓝牙设备)接收通过蓝牙或WI-FI信号发送的RF信号。RF收发器310可以对传入RF信号进行下变频以生成中频或基带信号。中频或基带信号被发送到RX处理电路325,RX处理电路325通过对基带或中频信号或其组合进行滤波、解码或数字化来生成经处理的基带信号。RX处理电路325将经处理的基带信号发送到扬声器330(诸如对于语音数据)或发送到处理器340以进行进一步处理(诸如对于网络浏览数据)。
TX处理电路315从麦克风320接收模拟或数字语音数据或者从处理器340接收其他传出基带数据。传出基带数据可以包括网络数据、电子邮件或交互式视频游戏数据。TX处理电路315对传出基带数据进行编码、多路复用、数字化或其组合,以生成经处理的基带或中频信号。RF收发器310从TX处理电路315接收传出的经处理的基带或中频信号,并且将基带或中频信号上变频为经由天线305发送的RF信号。
处理器340可以包括一个或多个处理器或者其他处理设备,并且执行存储在存储器360中的OS 361,以便控制电子设备300的整体操作。例如,处理器340可以根据公知原理控制通过RF收发器310、RX处理电路325和TX处理电路315的前向信道信号的接收和反向信道信号的传输。处理器340还能够执行驻留在存储器360中的其他应用362,诸如划分VR内容、下采样VR内容、封装VR内容等。
处理器340可以执行存储在存储器360中的指令。处理器340可以以任何合适的布置包括任何合适数量和类型的处理器或其他设备。例如,在一些实施例中,处理器340包括至少一个微处理器或微控制器。处理器340的示例类型包括微处理器、微控制器、数字信号处理器、现场可编程门阵列、专用集成电路和分立电路。
处理器340还能够执行驻留在存储器360中的其他处理和程序,诸如通过提供图像捕获和处理来接收、存储和及时地(timely)指示的操作。处理器340可以根据执行处理的需要将数据移入或移出存储器360。在一些实施例中,处理器340被配置为基于OS 361或响应于从eNB或运营商接收的信号来执行多个应用362。处理器340还耦合到I/O接口345,I/O接口345为电子设备300提供连接到诸如客户端设备106-115、服务器104或服务器200的其他设备的能力。I/O接口345是这些附件与处理器340之间的通信路径。
处理器340还耦合到输入350。电子设备300的操作者可以使用输入350将数据键入或输入到电子设备300中。输入350可以是键盘、触摸屏、鼠标、轨迹球、语音输入或能够充当用户接口以允许用户与电子设备300交互的其他设备。例如,输入350可以包括语音识别处理,从而允许用户通过麦克风320输入语音命令。在另一示例中,输入350可以包括触摸板、(数字)笔传感器、键或超声输入设备。触摸面板可以识别例如以电容方案、压敏方案、红外方案或超声方案当中的至少一个方案的触摸输入。例如,在电容方案中,输入350可以识别触摸或接近。输入350还可以包括控制电路。输入350可以通过向处理器340提供额外的输入而与传感器365和/或相机相关联。例如,输入350可以与运动传感器(类似于传感器365)相关联,以基于电子设备300的运动来确定输入。如下面更详细讨论地,传感器365包括惯性传感器(诸如,加速度计、陀螺仪和磁力计)、光学传感器、运动传感器、相机、压力传感器、心率传感器、高度计等。
处理器340还耦合到显示器355。显示器355可以是液晶显示器(LCD)、发光二极管(LED)显示器、光学LED(OLED)、有源矩阵OLED(AMOLED)或其他能够渲染(诸如来自网站、视频、游戏、图像等的)文本和/或图形的显示器。显示器355可以被确定大小以适合在HMD内。显示器355可以是单个显示屏或能够创建立体显示器的多个显示屏。在特定实施例中,显示器355是抬头式显示器(HUD)。
存储器360耦合到处理器340。存储器360的一部分可以包括随机存取存储器(RAM),而存储器360的另一部分可以包括闪速存储器或其他只读存储器(ROM)。
存储器360可以包括永久存储器(未示出),表示能够存储和促进信息(诸如数据、程序代码和/或临时或永久的其他合适信息)的检索的任何结构。存储器360可以包含支持数据的长期存储的一个或多个组件或设备,诸如只读存储器、硬盘驱动、闪速存储器或光盘。
电子设备300还可以包括一个或多个传感器365,其计量物理量或检测电子设备300的激活状态并且将计量或检测到的信息转换成电信号。例如,传感器365可以包括用于触摸输入的一个或多个按钮(位于耳机或电子设备300上)、一个或多个相机、手势传感器、眼睛跟踪传感器、陀螺仪或陀螺仪传感器、气压传感器、磁传感器或磁力计、加速度传感器或加速度计、握持传感器、接近传感器、颜色传感器(诸如红绿蓝(RGB)传感器)、生物物理传感器、温度/湿度传感器、照度传感器、紫外线(UV)传感器、肌电图(EMG)传感器、脑电图(EEG)传感器、心电图(ECG)传感器、IR传感器、超声传感器、虹膜传感器、指纹传感器等。传感器365还可以包括用于控制其中包括的至少一个传感器的控制电路。如下面将更详细讨论地,这些传感器365中的一个或多个可用于控制用户界面(UI)、检测UI输入、确定用户的定向和面向方向以用于三维内容显示标识。这些传感器365中的任何一个可以位于电子设备300内,配置为保持电子设备300的耳机内,或者位于电子设备300包括耳机的单个设备中。
如下面将更详细讨论地,在该说明性实施例中,电子设备300接收包含全向360°VR视频数据的信号,该全向360°VR视频数据包括高质量和低质量内容。可以基于内容的分辨率来区分高质量和低质量内容。在特定实施例中,电子设备基于用户的当前FOV显示VR内容。在特定实施例中,当可用的高质量VR内容不可用于用户的当前FOV时,电子设备300可以相较于低质量VR内容对于高质量VR内容给予优先级。
尽管图2和图3示出了计算系统中的设备的示例,可以对图2和图3进行各种改变。例如,图2和图3中的各种组件可以组合、进一步细分或省略,并且可以根据特定需要添加额外的组件。作为特定示例,处理器340可以被划分为多个处理器,诸如一个或多个中央处理单元(CPU)和一个或多个图形处理单元(GPU)。另外,与计算和通信网络一样,电子设备和服务器可以具有各种各样的配置,并且图2和图3不将本公开限制于任何特定的电子设备或服务器。
图4示出根据本公开的实施例的通信系统的示例框图。通信系统400包括通过网络405进行通信的服务器410和头戴式显示器(HMD)420。通信系统400示出了可以封装VR内容(诸如全向360°视频)的服务器410的本公开的实施例的高级别概要,并且通过网络405将封装发送到HMD 420。HMD 420可以显示VR内容。图4中所示的通信系统400的实施例仅用于说明。在不脱离本公开的范围的情况下,可以使用其他实施例。
网络405可以被配置为类似于图1的网络102。服务器410可以被配置为类似于图1的服务器104,并且可以包括类似于图2的服务器200的内部组件的内部组件。HMD 420可以被配置为类似于图1的一个或多个客户端设备106-115中的任何一个,并且可以包括类似于图3的电子设备300的内部组件的内部组件。在特定实施例中,HMD 420不限于头戴式显示设备。例如,HMD 420可以是智能电话(类似于图1的移动设备108)、膝上型计算机(类似于图1的膝上型计算机112)、桌面型计算机(类似于图1的桌面型计算机106)、平板型计算机(类似于图1的平板型计算机114)等。
网络405用于提供服务器410与HMD 420之间的通信。网络405可以是个域网(PAN)、局域网(LAN)、无线局域网(WLAN)、互联网、公共交换电话网络(PSTN)以及其他无线网络。网络405还可以是表示使用传输控制协议/网际协议(TCP/IP)协议彼此通信的全球网络和网关集合的互联网。网络405包括电缆、路由器、交换机、防火墙或其组合。网络405可以包括各种连接,诸如有线、无线或光纤连接。
服务器410封装VR内容。在特定实施例中,服务器410可以与提供多媒体数据和时控文本数据的一个或多个服务器相关联。例如,服务器410接收包括高分辨率全向360°视频的VR内容。然后,服务器适配VR内容,以便当VR内容被渲染以显示给用户时,以需要显示设备的最少处理的方式使用最小带宽通过网络405发送内容。
服务器410可以是网络(web)服务器,诸如管理服务器的服务器计算机,或能够发送和接收数据的任何其他电子计算系统。在特定实施例中,服务器410是由一个或多个网络互连的计算机的“云”,其中,服务器410是利用群集计算机和组件的计算系统,当通过网络405访问时,充当单个无缝资源池。服务器410包括分区模块412、下采样模块414和封装程序416。在特定实施例中,分区模块412、下采样模块414和封装程序416是单个元件出于解释的目的,元件被分解为独立组件。
分区模块412将VR视频内容划分为多个重叠的片段。在特定实施例中,分区模块412划分高质量VR内容以产生多个重叠的分区。每个分区片段表示为区块。在特定实施例中,VR内容是360°视频的ERP。在特定实施例中,VR内容是广角视频。每个片段是特定观看方向。
分区模块412垂直地划分VR内容。在特定实施例中,VR内容被垂直地划分为相同大小的八个分区。每个分区与前一个和后一个划分的片段重叠。例如,对于给定的360°内容,每个片段的宽度为135°。每个135°的片段与相邻的片段重叠45°。即,每个分区覆盖VR内容的135°宽度,并且两个相邻的分区之间的间隙一起等于45°,并且FOV是90°。在另一个示例中,FOV是45°,并且每个分区是45°以产生135°的片段。每个135°的片段可以表示与特定VR内容相关联的八个视场图像之一。在特定实施例中,每个片段可以大于或小于135°。类似地,两个相邻分区之间的间隙可以大于或小于45°。下面参考图5A、图5B和图5C讨论与划分VR内容相关联的额外的描述。
下采样模块414对整个VR内容进行下采样。下采样是将视频图像的分辨率从其原始大小更改为较低分辨率的处理。下采样模块414将VR内容缩放到较低分辨率。执行下采样会减小内容的大小。依赖于下采样内容的分辨率降低的量,内容可以呈现像素化、块状、不那么多彩等。
在特定实施例中,下采样模块414在空间上将VR内容下采样为覆盖整个360°的低分辨率VR内容或广视图视频ERP。生成的内容是整个VR内容,但分辨率低于原始分辨率。即,下采样视频内容是由分区模块412划分的VR内容的较低分辨率版本。每个单独的分区片段未被下采样,而是整个VR内容被下采样。例如,如果原始分辨率是4K,则下采样版本可以是2K。在另一示例中,如果原始分辨率是4K,则下采样版本可以是1080p。
在特定实施例中,下采样模块414在对高分辨率VR内容进行下采样时不会将分辨率降低一定量。而是,下采样模块414在对高分辨率VR内容进行下采样时缩放基于原始高分辨率VR内容的分辨率大小的下采样。例如,当下采样模块414降低高分辨率VR内容的分辨率时,下采样可以将内容缩放和下采样到依赖于高分辨率内容的分辨率的分辨率。例如,如果高分辨率视频的分辨率是4096×2160(4K分辨率),则下采样模块414降低分辨率,使得水平分辨率与高分辨率内容的垂直分辨率大致相同。因此,如果高分辨率内容是4096×2160,则低分辨率内容是保持相似的宽高比2160×垂直分辨率。图像的宽高比描述了其宽度与其高度之间的比例关系。例如,无论图像有多大或多小,如果宽度被分成相等长度的x个单位并且使用该相同长度单位测量高度,则将高度测量为y个单位。
在特定实施例中,当下采样模块414下采样VR内容时,与VR内容的高分辨率版本相比,低分辨率版本是水平和垂直分辨率的一半。在特定实施例中,当下采样模块414下采样VR内容时,低分辨率版本的水平分辨率是与高分辨率VR内容的垂直分辨率的分辨率类似的分辨率。下面参考图6讨论与下采样VR内容相关联的额外的描述。
封装程序416将每个划分的片段(来自分区模块412)与下采样的VR内容(来自下采样模块414)封装。封装程序416将高分辨率视频分区与整个低分辨率视频封装,以创建面向观看方向的多个帧封装流。由封装程序416创建的每个单独的封装是耦合有下采样的整个VR内容的高质量VR内容的单个FOV。这样,多个帧封装的VR内容可以单独发送,其中每个封装用于特定观看方向。如果分区模块412将高分辨率VR内容划分为八个单独的分区,则封装程序416将八个片段中的每个与下采样的VR内容封装。当封装程序416将八个片段中的每个与下采样的VR内容封装时,为VR序列生成8个单独的高分辨率FOV。八个FOV封装中的每个被指定用于特定观看方向。在特定实施例中,每个FOV封装用索引号码标识。例如,索引号码的范围可以是0至7。
在特定实施例中,封装程序416将高分辨率VR内容的单个分区与下采样的VR内容封装,其中,下采样VR内容被旋转90度。将下采样VR内容旋转90度,使得低分辨率版本的水平分辨率是与高分辨率VR内容的垂直分辨率相似的分辨率。通过将低分辨率版本的水平分辨率与高分辨率的垂直分辨率的分辨率相匹配,在不浪费信息的情况下创建要发送的均匀高度和宽度的单个封装。当封装VR内容时,垂直分辨率由高质量VR内容定义。
在特定实施例中,封装程序416包括用于将低分辨率内容与高分辨率分段分隔的保护带。当在显示设备(诸如HMD 420)上渲染内容时,保护带可以是封装的未使用部分,其将两个部分分隔以防止高分辨率内容和低分辨率内容的干扰和交叉流出。在特定实施例中,保护带作为内容的一部分被信号发送,并且显示设备(诸如HMD 420)知道保护带的位置。
在特定实施例中,封装程序416对多个FOV视频序列进行编码以产生FOV视频流的多个版本。然后,服务器410可以根据从显示设备(诸如HMD 420)接收的请求来发送特定FOV视频流。下面参考图7A和图7B讨论与封装VR内容相关联的额外的描述。
一旦封装程序416封装并且编译各个FOV视频片段,就可以通过网络405将一个或多个FOV视频片段发送到HMD 420。在特定实施例中,全向360°视频可以从服务器410流传输到HMD 420。
在特定实施例中,封装程序416采用高级视频编码(AVC)、高效视频编码(HEVC)等对低分辨率和分段的高分辨率的每个封装进行编码。AVC是一种压缩数字视频的标准。AVC是MPEG的一部分,并且是一种基于面向块的运动补偿视频压缩标准。例如,AVC是下述编码标准:其能够以较低的比特率提供高质量视频,而不会增加设计的复杂性。HEVC也是视频压缩标准,用于MPEG视频格式化。HEVC以相同的视频质量水平提供大约两倍的数据压缩比,或者与AVC相比以相同的比特率显着地提高视频质量。例如,HEVC可以支持高达8912×4320的分辨率,并且可以包括8k分辨率。通常,AVC和HEVC编码比较视频帧的不同部分以找到冗余的区域,在单个帧以及后续帧两者内。然后可以用简短描述而不是原始像素来替换冗余区域。应当注意,封装程序416不限于AVC或HEVC,因为在此使用AVC和HEVC仅用于示例目的。
在特定实施例中,HMD 420是移动电话(类似于图1的移动设备108)。在特定实施例中,HMD 420是类似于桌面型计算机(类似于图1的桌面型计算机106)、膝上型计算机(类似于图1的膝上型计算机112)或平板型计算机(类似于图1的平板型计算机114)的计算机设备。在特定实施例中,HMD 420是头戴式显示器(类似于图1的HMD 115)并且由用户佩戴。
HMD 420将VR内容渲染并且显示在显示器上供用户观看。HMD 420是能够通过诸如显示器422的图形用户界面(GUI)显示内容(诸如图像、视频和文本)的设备。在特定实施例中,HMD 420能够向用户显示VR、增强现实(AR)和混合媒体现实。例如,HMD 420可以采用描绘接收的模拟视觉分量集合的显示来完全替换用户的FOV。头戴式显示器还可以包括耳机,以向用户提供伴随的音频。在特定实施例中,HMD 420是立体显示器。HMD 420包括显示器422、一个或多个传感器424和渲染引擎426。
显示器422类似于图3的显示器355。在特定实施例中,显示器422是单个显示器并且固定到HMD 420。例如,显示器422类似于移动设备上的显示屏,或者计算机或平板型计算机上的显示屏。在特定实施例中,显示器422是移动设备上的显示器,并且移动设备(包括显示器)固定到头戴式显示器。一旦固定到头戴式显示器,显示器422就可以投射VR、AR等。在特定实施例中,显示器422是立体显示器。立体显示器是能够向用户传达深度感知的显示器。
传感器424类似于图3的传感器365。传感器424基于头部的位置提供用户的头部和运动跟踪。通过跟踪用户头部的运动,允许渲染引擎426模拟视觉和音频分量,以便确保从用户的角度来看,项目和声源保持与用户的运动一致。
渲染引擎426与渲染程序46相关联。渲染引擎426使得能够在电子设备处执行单个流解析、解码和渲染处理,以支持视图相关的VR流传输。渲染引擎解码,仅播放一个FOV视频流以及在特定时刻仅渲染一个FOV视频纹理。例如,渲染引擎426分析所接收的VR内容,对内容进行解码。在特定实施例中,解码内容包括将高分辨率视频片段与低分辨率视频分离。一旦被解码,渲染引擎426就可以播放一个FOV视频流并且渲染与当前视口相对应的纹理部分。当前视口是用户正在观看的VR内容的位置。
在特定实施例中,渲染引擎426将高分辨率VR内容段优先于低分辨率VR内容渲染。渲染引擎426使用低分辨率VR内容纹理来渲染未被所接收的高分辨率纹理覆盖的区域。例如,如果当前视口不是高分辨率片段的一部分,则渲染并且显示低分辨率VR内容,同时HMD420请求由服务器410发送的并且由HMD 420接收的包含高分辨率VR内容片段的下一个封装。
图5示出根据本公开的实施例的示例高分辨率VR内容。图5B和图5C示出根据本公开的实施例的用于分区FOV VR内容的示例。图5B和图5C示出图5A的高分辨率VR内容的划分。图5B和图5C描绘了VR内容的划分的不同表示。例如,每个重叠的片段520、521、522、523、524、525、526和527被不同地示出以清楚地指示每个片段。图5A、图5B和图5C的实施例和描绘仅用于说明。在不脱离本公开的范围的情况下,可以使用其他实施例。
图5A示出VR内容505。VR内容505是以矩形形式呈现的全向360°球形内容。例如,VR内容505通过实时地改变显示给用户的图像(基于跟踪用户的头部移动的头戴式显示器中的传感器)允许用户感觉沉浸在内容中,从而允许用户观看用户想要观看的360°视频的任何部分。即,VR内容506是包含围绕用户的360°视图的多媒体内容,允许用户类似于现实生活体验在所有方向上观看。在特定实施例中,VR内容505是球形的。在特定实施例中,VR内容是矩形的,诸如球形内容的ERP。例如,VR内容505本质上是球形的,但是变换为平面坐标。VR内容505具有水平分辨率501和垂直分辨率502。如果VR内容505是4K分辨率,则水平分辨率501是大约4096像素并且垂直分辨率502是大约2160像素。
图5B和图5C描绘了将图5A的VR内容505划分成为VR内容506的分区模块412。VR内容506是VR内容505的划分的版本,因为如果VR内容506的每个分区被移除,则VR内容506和VR内容505是相同的。即,VR内容505和VR内容506以相同的分辨率包含相同的VR内容;然而,VR内容506被划分而VR内容505是原始VR内容。VR内容506和VR内容505具有相同的水平分辨率501和垂直分辨率502。
分区模块412将VR内容506划分为八个重叠的分区片段。八个重叠的分区片段中的每个表示VR内容506的特定FOV。VR内容506被垂直地划分为八个重叠的片段,其中,每个片段被表示为片段520、521、522、523、524、525、526以及527。每个片段表示360°内容的135°视图,其与前一个片段重叠45°并且与下一个片段重叠45°。每个片段由分区线530、531、532、533、534、535、536和537分隔。分区线530、531、532、533、534、535、536和537形成单独的部分510、511、512、513、514、515、516和517。每个部分(诸如部分510、511、512、513、514、515、516和517)是VR内容506的45°部分。部分510、511、512、513、514、515、516和517当组合时,是图5A的VR内容505。
部分510包含VR内容506的0°至45°。部分511包含VR内容506的45°至90°。部分512包含VR内容506的90°至135°。部分513包含VR内容506的135°至180°。部分514包含VR内容506的180°至225°。部分515包含VR内容506的225°至270°。部分516包含VR内容506的217°至315°。部分517包含VR内容506的315°至360°。
分区线530将段520和段525分隔。分区线531将段521和段526分隔。分区线532将段522和段527分隔。分区线533将段520和段523分隔。分区线534将段521和段524分隔。分区线535将段522和段525分隔。分区线536将段523和段526分隔。分区线537将段524和段527分隔。每个片段覆盖水平FOV的135°,并且与每个相邻部分重叠45°。发送的每个封装包括单个片段。因此,用户接收每发送封装的高分辨率VR内容的135°FOV。
分区线530还将部分510与部分517分隔。分区线531还将部分510与部分511分隔。分区线532还将部分511与部分512分隔。分区线533还将部分512与部分513分隔。分区线534还将部分513与部分514分隔。分区线535还将部分514与部分515分隔。分区线536还将部分515与部分516分隔。分区线537还将部分516与部分517分隔。
片段520包括部分510、511和512,并且覆盖0°至135°。片段521包括部分512、512和513,并且覆盖45°至180°。片段522包括部分512、513和514,并且覆盖90°至255°。片段523包括部分513、514和515,并且覆盖135°至270°。片段524包括部分514、515和516,并且覆盖180°至315°。片段525包括部分515、516和517,并且覆盖225°至360°。片段526包括部分516、517和510,并且覆盖225°至45°。片段527包括部分517、510和511,并且覆盖315°至90°。应当注意,片段526和527环绕VR内容506,以便与先前和后续部分重叠。
每个片段520、521、522、523、524、525、526和527是在HMD 420上观看VR内容时基于用户的当前视口被封装和发送的VR内容506的重叠的高分辨率FOV。在特定实施例中,ERP被转换为8个片段,每个片段以高分辨率覆盖VR内容的一部分。每个片段520-527覆盖135°,其中两个分区线之间移位45°。换句话说,每个片段520-527具有从VR内容506中提取的方位角范围。每个片段520-527包括与相邻片段重叠的部分。例如,每个片段520-527具有135°的方位角范围,并且相邻的片段通过45°偏航(yaw)偏移彼此分隔。
图6示出根据本公开的实施例的用于创建低分辨率VR内容的示例。例如,图6示出通过图4的下采样模块414对图5A的高分辨率VR内容505进行下采样。图6的实施例和描绘仅用于说明。在不脱离本公开的范围的情况下,可以使用其他实施例。
图4的下采样模块414将VR内容505缩小到较低分辨率。通过降低样本大小,对VR内容505进行下采样使得整体内容更小。可以垂直或水平或两个维度执行下采样。在特定实施例中,下采样模块414在垂直或水平维度两者上对VR内容505进行向下采样,同时保持与VR内容505的宽高比相似的宽高比。下采样被缩放使得水平分辨率501将产生与垂直分辨率502相同或相似的分辨率。
下采样模块414对VR内容505进行下采样并且生成下采样的VR内容550。下采样的VR内容550具有水平分辨率502D和垂直分辨率503。下采样的VR内容550的水平分辨率502D是类似于VR内容505的垂直分辨率502的分辨率。例如,如果VR内容505的分辨率是4096×2160(其中水平分辨率501是4096并且垂直分辨率502是2160),则下采样的VR内容550的水平分辨率502D是2160。下采样的VR内容550的垂直分辨率503被缩放以保持与VR内容505的宽高比相同或相似的宽高比。在另一示例中,如果VR内容505具有4000像素的水平分辨率501并且垂直分辨率502是2000像素,则下采样的VR内容550被缩放,使得水平分辨率502D是2000像素并且垂直分辨率503是1000像素。
然后将下采样的VR内容550旋转90度以变为旋转的下采样的VR内容550R。在特定实施例中,下采样的VR内容550顺时针旋转。在特定实施例中,下采样的VR内容550逆时针旋转。旋转的下采样的VR内容550R包括与VR内容505相同的VR内容,但是被下采样并且旋转90度。应当注意,旋转的下采样的VR内容550R的尺寸与下采样的VR内容550的尺寸相同。
图7A和图7B示出根据本公开的实施例的用于封装划分的视场VR内容与低分辨率VR内容的示例。例如,图7A和图7B示出封装如图5B和图5C所描绘的每个高分辨率FOV片段与图6的旋转的下采样VR内容550R。在特定实施例中,封装每个FOV片段与旋转的下采样VR内容550R由图4的封装程序416执行。图7A和图7B的实施例和描绘仅用于说明。在不脱离本公开的范围的情况下,可以使用其他实施例。
在特定实施例中,封装程序416将高分辨率VR内容506的划分的片段中的每个与空间下采样的VR内容550组合。下采样的VR内容550覆盖整个360°或广视图视频,而每个划分的片段覆盖高分辨率VR内容505的仅135°。在下采样的VR内容550旋转90°之后,旋转的下采样的VR内容550R与每个重叠的高分辨率片段封装在一个视频中,该视频表示视场的一部分并且可用于FOV流传输。例如,每个重叠的高分辨率片段与旋转的下采样的VR内容550R组合成一个FOV视频帧。FOV视频帧还可以被称为面向观看方向的视频帧,因为每个封装的帧具有有限的高分辨率视场。每个封装是耦合有表示整个视频的下采样VR内容的高质量VR内容的单个FOV。将每个高分辨率片段与旋转的下采样VR内容550R封装创建多个帧封装的VR内容,提供用户在显示设备上观看的特定观看方向和定向。
封装程序416可以创建8个单独的封装,表示为封装580、581、582、583、584、585、586和587。每个封装可以基于范围从0到7的索引值来区分。例如,封装580是索引0、封装581是索引1、封装582是索引2、封装583是索引3、封装584是索引4、封装585是索引5、封装586是索引6、以及封装587是索引7。
封装580将高分辨率FOV片段520与旋转的下采样VR内容550R组合。在特定实施例中,包括保护带560以将片段520与旋转的下采样VR内容550R分隔。封装580是VR内容505的0°至135°的高分辨率观看方向。
封装581将高分辨率FOV片段521与旋转的下采样VR内容550R组合。在特定实施例中,包括保护带560以将片段521与旋转的下采样VR内容550R分隔。封装581是VR内容505的45°至180°的高分辨率观看方向。
封装582将高分辨率FOV片段522与旋转的下采样VR内容550R组合。在特定实施例中,包括保护带560以将片段522与旋转的下采样VR内容550R分隔。封装582是VR内容505的90°至255°的高分辨率观看方向。
封装583将高分辨率FOV片段523与旋转的下采样VR内容550R组合。在特定实施例中,包括保护带560以将片段523与旋转的下采样VR内容550R分隔。封装583是VR内容505的135°至270°的高分辨率观看方向。
封装584将高分辨率FOV片段524与旋转的下采样VR内容550R组合。在特定实施例中,包括保护带560以将片段524与旋转的下采样VR内容550R分隔。封装584是VR内容505的180°至315°的高分辨率观看方向。
封装585将高分辨率FOV片段525与旋转的下采样VR内容550R组合。在特定实施例中,包括保护带560以将片段525与旋转的下采样VR内容550R分隔。封装585是VR内容505的225°至360°的高分辨率观看方向。
封装586将高分辨率FOV片段526与旋转的下采样VR内容550R组合。在特定实施例中,包括保护带560以将片段526与旋转的下采样VR内容550R分隔。封装586是VR内容505的270°至45°的高分辨率观看方向。
封装587将高分辨率FOV片段527与旋转的下采样VR内容550R组合。在特定实施例中,包括保护带560以将片段527与旋转的下采样VR内容550R分隔。封装587是VR内容505的315°至90°的高分辨率观看方向。
每个封装580-587可以响应于从显示设备接收的请求而单独发送。所接收的请求可以指示与特定封装、特定FOV或特定视场范围相关联的特定索引。例如,如果请求与特定封装相关联的特定索引,则服务器410发送所请求的封装。
在另一示例中,如果请求特定FOV或FOV范围,则服务器410可以基于所请求的FOV确定要发送的特定封装。例如,服务器410接收与VR内容的190°相对应的FOV的请求,然后服务器410可以确定发送封装582、583或584。封装582包括片段522,片段522包括90°至255°的FOV范围。封装583包括片段523,片段523包括135°至270°的FOV范围。封装584包括片段524,片段524包括180°至315°的FOV范围。在特定实施例中,服务器410基于当前视口标识要发送的特定封装。在标识要发送的特定封装时,服务器410可以选择包括FOV范围的封装,该FOV范围在阈值内覆盖所请求的FOV。在选择封装之后,服务器410将封装发送到诸如HMD 420的请求设备。
每个封装580-587包含高分辨率FOV片段和下采样VR内容550R两者。因此,当在显示器上显示高分辨率FOV片段并且当前视口达到阈值或超过与高分辨率片段相关联的FOV时,显示器渲染并且显示下采样VR内容550R,同时请求包括用户的当前视口的另一封装。例如,阈值可以是高分辨率FOV片段的边缘,诸如FOV范围内的0°至135°(封装580)或预定度数。
在特定实施例中,每个封装580-587被预先封装并且被存储在信息库中,直到接收到对特定封装的请求。在特定实施例中,服务器基于每个请求按需封装每个封装。例如,服务器可以维护下采样的VR内容550,并且信息库中的每个片段520-527根据需要将特定VR片段与下采样的VR内容550组合。在另一示例中,服务器可以根据需要对VR内容505进行划分,并且根据需要执行每请求的下采样。
当显示设备(诸如HMD 420)接收封装(诸如封装580-587)时,显示设备首先对封装进行解码并且渲染和显示所接收的高分辨率FOV内容。解码处理将高分辨率片段(诸如片段520-527)与下采样的VR内容550分开。解码处理还可以旋转下采样的VR内容550。在另一示例中,渲染处理的着色器可以将高分辨率片段(诸如片段520-527)与下采样的VR内容550分开,并且旋转下采样的VR内容550。在特定实施例中,如果保护带作为内容的一部分用信号发送,则渲染器知道保护带的位置。例如,渲染器可以接收指示信号传输的保护带的位置的消息。
当显示设备(诸如HMD 420)接收封装(诸如封装580-587)时,显示设备将渲染的内容显示给用户。显示设备跟踪用户头部移动并显示与用户的当前视口相关联的内容。即,响应于用户的头部向左转1°,显示的VR内容响应于该移动而移位。当用户达到所接收的封装的FOV内容的阈值(诸如封装584)时,显示器渲染并且显示低分辨率的下采样VR内容550。如果当前视口在封装的FOV范围内,则显示器还请求与用户的当前视口相对应的封装,诸如封装583或584。
图8A示出根据本公开的实施例的用于封装VR内容的示例流程图。图8A描绘了根据本公开的实施例的用于封装VR内容的流程图800。例如,图8A中描绘的处理被描述为由图2中的服务器200,或服务器410(关于诸如客户端设备106-115中的任何一个的电子设备),或HMD 420实施。
处理开始于服务器410生成两个版本的视频内容(802)。第一版本是视频内容的低分辨率版本。在特定实施例中,视频内容是360°场景的等距矩形投影(ERP)。在特定实施例中,视频内容是360°视频或广角视频被划分。
处理通过减少或下采样视频内容的分辨率来生成第一版本。在特定实施例中,视频内容的水平和垂直分辨率减半。在特定实施例中,处理缩放第一版本,使得第一版本的水平分辨率类似于第二版本的垂直分辨率。因此,当第一版本旋转90度时(一旦旋转,水平分辨率变为垂直分辨率),第一版本的垂直分辨率类似于第二版本的垂直分辨率。
处理通过将内容划分为多个重叠的视频片段来生成第二版本视频内容。在特定实施例中,第二版本将视频内容划分为多个135度重叠的片段。在特定实施例中,每个片段与相邻片段偏移45度。在特定实施例中,处理为每个片段提供135度的方位角范围,而每个片段偏移45度偏航偏移。这假定第二版本被划分为八个重叠的片段。
然后,处理将第一版本与第二版本的片段合并为单个封装(804)。当第一个版本与第二个版本的片段合并时,第一版本旋转90度。例如,处理可以生成八个单独的封装,其中,每个封装包括不同的高分辨率FOV内容。
在特定实施例中,处理可以编码每个封装。例如,每个封装可以采用高级视频编码(AVC)被编码。在另一示例中,每个封装可以采用高效视频编码(HEVC)被编码。
在特定实施例中,处理可以生成保护带。例如,保护带在每个封装中将第一版本和第二版本的片段分开。
图8B示出根据本公开的实施例的用于发送单个视场VR流的示例流程图。图8B描绘了根据本公开的实施例的用于发送和流传输VR内容的流程图850。例如,图8B中描绘的处理被描述为由图2中的服务器200,或服务器410(关于诸如客户端设备106-115中的任何一个的电子设备),或HMD 420实施。
处理开始于服务器410从索引#j向显示设备流传输FOV片段#i(852)。例如,服务器410将特定封装(诸如封装580(具有相对应的索引0))发送到显示设备。封装580从服务器410流传输到显示设备。封装580包括360°VR内容505的范围从0°到135°的FOV。当封装580流传输到显示设备时,片段#i表示范围从0°到135°的特定部分内容,诸如112°。片段#i对应于用户观看的当前视口。
然后,处理基于用户的头部移动确定FOV流是否需要从索引#j改变到索引#k(854)。即,如果用户移动他们的头部,则处理确定检测到的移动是否足够改变视场,使得需要新的封装来显示高分辨率FOV。如果确定需要新的封装,则处理从索引#k发送片段#i+1的FOV流(856)。索引#k可以是分别地对应于封装581-587的任何索引(诸如索引1-7)。例如,如果用户的头部移动到足以使达到指示需要新封装的阈值。然后,处理根据用户头部的移动方向从不同封装(诸如封装581至587)发送数据。在特定实施例中,当处理从索引#j切换到索引#k时,在显示设备上渲染并且显示低分辨率片段。
如果确定不需要新的封装,使得当前视口在当前封装内,则发送下一个片段,诸如片段#i+1(858)。例如,如果索引#k是对应于封装580的索引0,则FOV包括0°至135°。片段#i是用户的当前视口。例如,当用户的头部从112°移动到111°时,处理发送新的片段#i+1。
处理继续并且从相应的索引中流传输片段#i+1,并且对于用户头部的每次移动,片段增加1(860)。然后,处理确定流传输会话是否结束(862)。如果处理继续重复,直到流传输会话结束。
图9A示出根据本公开的实施例的用于渲染封装的VR内容的示例流程图900。例如,图9A中描绘的处理被描述为由一个或多个客户端设备(诸如图1中的客户端设备106-115中的任何一个),图3中的电子设备300或图4中的HMD 420实施。
处理开始于显示设备(诸如HMD 420)从服务器(诸如服务器410)接收封装(902)。所接收的封装包括视频内容的低分辨率版本和视频内容的片段。在特定实施例中,视频内容的分辨率版本的片段限于360°全向视频的135°FOV,而整个视频内容是低分辨率。即,多个重叠的视频片段中的每个片段可以是视频内容的135度部分并且与相邻的片段偏移45度。在特定实施例中,显示设备可以接收八个封装中的一个。
在接收到封装时,处理确定是渲染视频内容的低分辨率版本还是视频内容的片段(904)。为了确定是渲染视频内容的低分辨率版本还是视频内容的片段,处理根据视口确定第一版本和第二版本的优先顺序。例如,当视口对应于片段时,处理将视频内容的片段优先于视频内容的低分辨率版本。在另一示例中,当视口对应于不在片段内的内容时,处理将视频内容的低分辨率版本优先于视频内容的片段。即,基于电子设备上的内容的当前视口,处理可以确定是渲染段还是低分辨率版本。
此后,处理渲染所确定的视频内容的版本(906)。为了渲染所确定的视频内容版本,处理将视频内容的低分辨率版本与视频内容的片段分开。然后,处理可以将视频内容的低分辨率版本旋转90度。
如果用户的当前视口指向135°FOV内的内容,则处理渲染并显示该段。当用户的头部移动时,基于移动的幅度来调整当前视口。因此,当用户的头部移动到阈值或超过FOV时,处理可以从片段切换到低分辨率版本。从渲染段切换到低分辨率版本的确定可以基于阈值。在特定实施例中,阈值可以位于片段的边缘处。例如,如果接收的封装是封装580,则边缘为0°和135°。因此,如果用户的当前视口达到0°或135°,则处理切换到低分辨率视频,以及在用户的视口渲染并且显示当前内容。在特定实施例中,阈值是距高分辨率视频的边缘的预定距离。阈值可以是FOV范围之间的任何位置。例如,阈值可以设置为距边缘25°。如果所接收的封装是边缘为0°和135°的封装580,则阈值建立在25°和105°,产生25°至105°的FOV。因此,如果用户的当前视口达到25°或105°,则处理切换到低分辨率视频并在用户的视口渲染并显示当前内容。
图9B示出根据本公开的实施例的用于接收FOV流的示例流程图950。流程图950示出显示设备(诸如HMD 420)接收,渲染和解码单个FOV内容。例如,图9A中描绘的处理被描述为由一个或多个客户端设备(诸如图1中的客户端设备106-115中的任何一个),图3中的电子设备300或图4中的HMD 420实现。
处理开始于显示设备(诸如HMD 420)接收FOV流(952)。FOV流是来自索引#j的片段#i。接收的片段#i从服务器(诸如服务器410)流传输。接收的FOV流被解析、解码以及在显示器上播放。索引#j是对应于分别具有索引值0-7的580-587的封装。
处理继续并从索引#k接收片段#i+1的FOV流(954)。片段#i+1对应于用户的当前视口。片段#i+1来自与片段#i不同的索引。例如,用户的当前视口改变使得索引#j达到阈值或者不包括用户的当前视口的FOV。所接收的片段#i+1的FOV流被解析、解码以及在显示器上播放。
然后,处理确定视频元素的呈现时间是否大于或等于片段#i+1的最早呈现(956)。如果视频元素的呈现时间等于或大于片段#i+1的最早呈现,则处理在渲染处理的着色器中将视频纹理区域更新为索引#k(958)。当处理更新视频纹理区域或视频元素的呈现时间小于片段#i+1的最早呈现时,则处理基于来自索引#k的视频纹理索引的信息渲染视频纹理(960)。
尽管附图示出了用户设备的不同示例,但是可以对附图进行各种改变。例如,用户设备可以以任何合适的布置包括任何数量的每个组件。通常,附图不将本公开的范围限制于任何特定配置。此外,虽然附图示出了可以使用本专利文件中公开的各种用户设备特征的操作环境,但是这些特征可以用在任何其他合适的系统中。
本申请中的描述均不应理解为暗示任何特定元件,步骤或功能是必须包括在权利要求范围中的基本元件。专利主题的范围仅由权利要求限定。申请人理解的权利要求书中使用的任何其他术语,包括但不限于“机构”,“模块”,“设备”,“单元”,“组件”,“元件”,“成员”,“装置”,“机器”,“系统”,“处理器”或“控制器”是指相关领域技术人员已知的结构。
尽管已经利用示例性实施例描述了本公开,但是可以向本领域技术人员建议各种改变和修改。本公开旨在包含落入所附权利要求范围内的这些改变和修改。

Claims (15)

1.一种用于消费视频内容的电子设备,所述电子设备包括:
传感器;
可操作地连接到所述传感器的至少一个处理器,所述至少一个处理器被配置为基于所述传感器的输出来确定视频内容的当前视口;以及
可操作地连接到所述至少一个处理器的收发器,所述收发器被配置为请求和接收媒体流,所述媒体流包括(i)覆盖当前视口的视频内容的高分辨率视频分区和(ii)相对于视频内容旋转的视频内容的低分辨率版本,
其中,视频内容的高分辨率视频分区和低分辨率版本被封装在一起,以及
其中,所述至少一个处理器还被配置为处理所述媒体流以渲染视频内容的高分辨率视频分区或视频内容的低分辨率版本中的至少一个。
2.根据权利要求1所述的电子设备,其中,所述至少一个处理器被配置为检测视频内容的低分辨率版本被旋转预定度数并且与高分辨率视频分区封装在一起以产生2D矩形视频。
3.根据权利要求1所述的电子设备,其中:
在当前视口在视频内容的高分辨率视频分区的观看范围内时,所述至少一个处理器被配置为渲染视频内容的高分辨率视频分区;
在所述至少一个处理器基于来自所述传感器的输出确定当前视口已经改变并且不在高分辨率视频分区的观看范围内时,所述至少一个处理器被配置为:
使得所述收发器请求、接收和解码包括与改变的当前视口相对应的高分辨率分区的另一媒体流;以及
在请求、接收和解码所述另一媒体流的同时渲染视频内容的低分辨率版本。
4.一种用于封装虚拟现实内容的服务器,所述服务器包括:
通信接口;以及
可操作地连接到所述通信接口的至少一个处理器,所述至少一个处理器被配置为:
将高分辨率视频内容划分为多个重叠的高分辨率视频分区,每个分区覆盖视频内容的视口;
生成相对于视频内容旋转的视频内容的低分辨率版本;以及
通过封装高分辨率视频分区中的一个和视频内容的旋转的低分辨率版本来生成媒体流。
5.根据权利要求4所述的服务器,其中,为了将高分辨率视频内容划分为多个重叠的高分辨率视频分区,所述至少一个处理器被配置为将重叠的高分辨率视频分区划分为每个覆盖高分辨率视频内容的预定度数的宽度。
6.根据权利要求4所述的服务器,其中,为了将高分辨率视频内容划分为多个重叠的高分辨率视频分区,所述至少一个处理器被配置为将每个相邻分区移位预定度数。
7.根据权利要求4所述的服务器,其中,所述通信接口被配置为:
响应于接收到对于高分辨率视频内容的分区的请求,将生成的媒体流发送到电子设备,以及
其中,为了生成媒体流,所述至少一个处理器被配置为:
基于请求选择生成的视频内容的低分辨率版本和高分辨率视频内容分区,其中,视频内容的低分辨率版本包括视频内容并且高分辨率视频内容分区覆盖确定的视频内容的视口。
8.根据权利要求4所述的服务器,其中,为了生成视频内容的低分辨率版本,所述至少一个处理器被配置为对高分辨率视频内容进行下采样,使得低分辨率版本的水平分辨率和垂直分辨率是高分辨率视频内容的下采样版本。
9.根据权利要求4所述的服务器,其中,在生成低分辨率版本时,所述至少一个处理器被配置为将视频内容的低分辨率版本旋转90度并且将多个重叠的高分辨率视频分区中的一个封装到视频内容的旋转的低分辨率版本。
10.根据权利要求4所述的服务器,其中,所述至少一个处理器还被配置为:
编码每个媒体流,其中,采用高级视频编码(AVC)或高效视频编码(HEVC)中的至少一个来编码每个媒体流,以及
生产保护带,其中,保护带在一个高分辨率视频分区和视频内容的旋转的低分辨率版本封装在一起时将其分隔。
11.根据权利要求4所述的服务器,其中,视频内容是360度场景的等距矩形投影。
12.一种在电子设备上消费视频内容的方法,所述方法包括:
基于电子设备的传感器的输出确定视频内容的当前视口;
请求和接收媒体流,所述媒体流包括(i)覆盖当前视口的视频内容的高分辨率视频分区和(ii)相对于视频内容旋转的视频内容的低分辨率版本;以及
处理所述媒体流以渲染视频内容的高分辨率视频分区或视频内容的低分辨率版本中的至少一个,
其中,视频内容的高分辨率视频分区和低分辨率版本被封装在一起。
13.根据权利要求1所述的电子设备或权利要求12所述的方法,其中,视频内容的高分辨率视频分区是从视频内容的高分辨率版本生成的多个重叠的高分辨率视频分区中的一个。
14.根据权利要求1所述的电子设备或权利要求13所述的方法,其中:
视频内容是360度场景的等距矩形投影;
多个重叠的高分辨率视频分区每个覆盖高分辨率视频内容的第一预定度数的宽度;以及
多个重叠的高分辨率视频分区中的每个从多个重叠的高分辨率视频分区的相邻分区移位第二预定度数,其中,第二预定度数等于第一预定度数减去所显示的视频内容部分。
15.根据权利要求1所述的电子设备或权利要求13所述的方法,其中:
所述媒体流是预定数量的媒体流中的一个,其中,每个媒体流包括被封装在一起的多个重叠的高分辨率视频分区中的不同的一个和视频内容的旋转的低分辨率版本;以及
封装的视频内容包括一个或多个保护带,将封装在一起的高分辨率视频分区和视频内容的旋转的低分辨率版本分隔。
CN201880018573.3A 2017-03-17 2018-03-16 消费视频内容的方法、电子设备和服务器 Active CN110419224B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762473002P 2017-03-17 2017-03-17
US62/473,002 2017-03-17
US15/898,848 US10887600B2 (en) 2017-03-17 2018-02-19 Method and apparatus for packaging and streaming of virtual reality (VR) media content
US15/898,848 2018-02-19
PCT/KR2018/003130 WO2018169367A1 (en) 2017-03-17 2018-03-16 Method and apparatus for packaging and streaming of virtual reality media content

Publications (2)

Publication Number Publication Date
CN110419224A true CN110419224A (zh) 2019-11-05
CN110419224B CN110419224B (zh) 2022-06-03

Family

ID=63520419

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880018573.3A Active CN110419224B (zh) 2017-03-17 2018-03-16 消费视频内容的方法、电子设备和服务器

Country Status (5)

Country Link
US (1) US10887600B2 (zh)
EP (1) EP3596931B1 (zh)
KR (1) KR102492565B1 (zh)
CN (1) CN110419224B (zh)
WO (1) WO2018169367A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022017149A1 (zh) * 2020-07-20 2022-01-27 华为技术有限公司 一种虚拟现实vr场景的视频处理方法及相关设备
CN114257838A (zh) * 2021-11-29 2022-03-29 新奥特(北京)视频技术有限公司 一种视频数据处理方法、装置、电子设备和存储介质

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10469579B2 (en) * 2010-12-16 2019-11-05 General Electric Company Method and system for data processing in a vehicle group
US10587669B2 (en) * 2017-12-20 2020-03-10 Facebook, Inc. Visual quality metrics
US11050843B2 (en) * 2018-03-30 2021-06-29 Facebook, Inc. Systems and methods for prefetching content
US11184461B2 (en) * 2018-10-23 2021-11-23 At&T Intellectual Property I, L.P. VR video transmission with layered video by re-using existing network infrastructures
US11057605B2 (en) * 2018-11-05 2021-07-06 Korea Electronics Technology Institute 360-degree VR video segmentation transmission system and method
WO2022045717A1 (ko) * 2020-08-24 2022-03-03 현대자동차주식회사 Mpeg 몰입형 비디오 포맷에서의 프레임 패킹방법
US11743442B2 (en) * 2020-11-09 2023-08-29 Tencent America LLC Bitstream structure for immersive teleconferencing and telepresence for remote terminals
CN113891111B (zh) * 2021-09-29 2023-11-21 北京拙河科技有限公司 十亿像素视频的直播方法、装置、介质及设备
US11943501B2 (en) * 2022-01-07 2024-03-26 Qualcomm Incorporated Dynamic resolution change hints for adaptive streaming
CN116634177B (zh) * 2023-06-16 2024-02-20 北京行者无疆科技有限公司 一种基于hdmi通信设备的视频通信解码处理方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1864633A (zh) * 2005-05-19 2006-11-22 西门子公司 扩大对象区域的立体图像的显示范围的方法
US20060268130A1 (en) * 2005-05-26 2006-11-30 Williams Karen E In-camera panorama stitching method and apparatus
CN102724433A (zh) * 2012-06-18 2012-10-10 深圳锐取信息技术股份有限公司 一种实现多种视频信号画面合成的方法与装置
CN103534727A (zh) * 2011-05-17 2014-01-22 苹果公司 全景处理
WO2016191694A1 (en) * 2015-05-27 2016-12-01 Google Inc. Streaming spherical video
CN106254877A (zh) * 2015-06-11 2016-12-21 Arm有限公司 视频处理系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3483273B2 (ja) * 1993-05-28 2004-01-06 キヤノン株式会社 画像処理装置および画像処理方法
CA2411852A1 (en) * 2000-06-09 2001-12-13 Imove, Inc. Streaming panoramic video
JP5065051B2 (ja) 2005-02-18 2012-10-31 トムソン ライセンシング 低解像度画像から高解像度画像の符号化情報を導出する方法、並びに、係る方法を実現する符号化及び復号化装置
US8411758B2 (en) * 2006-01-13 2013-04-02 Yahoo! Inc. Method and system for online remixing of digital multimedia
US8667054B2 (en) 2010-07-12 2014-03-04 Opus Medicus, Inc. Systems and methods for networked, in-context, composed, high resolution image viewing
ES2675802T3 (es) 2011-02-18 2018-07-12 Alcatel Lucent Procedimiento y aparato para transmitir y recibir un flujo de video panorámico
EP3155812B1 (en) 2014-06-16 2023-04-05 QUALCOMM Incorporated Simplified shifting merge candidate and merge list derivation in 3d-hevc
GB2536025B (en) * 2015-03-05 2021-03-03 Nokia Technologies Oy Video streaming method
JP6359993B2 (ja) 2015-03-09 2018-07-18 日本電信電話株式会社 映像配信方法、映像配信装置及び映像配信プログラム
JP6454006B2 (ja) * 2015-04-28 2019-01-16 株式会社日立国際電気 映像監視システムおよび映像監視方法
US10319071B2 (en) * 2016-03-23 2019-06-11 Qualcomm Incorporated Truncated square pyramid geometry and frame packing structure for representing virtual reality video content
WO2018056002A1 (ja) * 2016-09-26 2018-03-29 株式会社日立国際電気 映像監視システム
US20180098131A1 (en) * 2016-09-30 2018-04-05 Avago Technologies General Ip (Singapore) Pte. Ltd. Apparatus and methods for adaptive bit-rate streaming of 360 video
US20180167634A1 (en) * 2016-12-09 2018-06-14 Nokia Technologies Oy Method and an apparatus and a computer program product for video encoding and decoding

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1864633A (zh) * 2005-05-19 2006-11-22 西门子公司 扩大对象区域的立体图像的显示范围的方法
US20060268130A1 (en) * 2005-05-26 2006-11-30 Williams Karen E In-camera panorama stitching method and apparatus
CN103534727A (zh) * 2011-05-17 2014-01-22 苹果公司 全景处理
CN102724433A (zh) * 2012-06-18 2012-10-10 深圳锐取信息技术股份有限公司 一种实现多种视频信号画面合成的方法与装置
WO2016191694A1 (en) * 2015-05-27 2016-12-01 Google Inc. Streaming spherical video
CN106254877A (zh) * 2015-06-11 2016-12-21 Arm有限公司 视频处理系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ALIREZA ZARE等: "HEVC-compliant Tile-based Streaming of Panoramic Video for Virtual Reality Applications", 《PROCEEDINGS OF THE 2016 ACM ON MULTIMEDIA CONFERENCE》 *
季平等: "对旋转和平移鲁棒的序列图像拼接算法", 《应用科学学报》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022017149A1 (zh) * 2020-07-20 2022-01-27 华为技术有限公司 一种虚拟现实vr场景的视频处理方法及相关设备
CN114035672A (zh) * 2020-07-20 2022-02-11 华为技术有限公司 一种虚拟现实vr场景的视频处理方法及相关设备
CN114257838A (zh) * 2021-11-29 2022-03-29 新奥特(北京)视频技术有限公司 一种视频数据处理方法、装置、电子设备和存储介质
CN114257838B (zh) * 2021-11-29 2024-04-16 新奥特(北京)视频技术有限公司 一种视频数据处理方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN110419224B (zh) 2022-06-03
US20180270486A1 (en) 2018-09-20
KR102492565B1 (ko) 2023-01-27
EP3596931A4 (en) 2020-01-22
US10887600B2 (en) 2021-01-05
EP3596931A1 (en) 2020-01-22
WO2018169367A1 (en) 2018-09-20
KR20190121867A (ko) 2019-10-28
EP3596931B1 (en) 2021-05-05

Similar Documents

Publication Publication Date Title
CN110419224A (zh) 用于封装和流传输虚拟现实媒体内容的方法和装置
US11228749B2 (en) Systems, methods and apparatus for compressing video content
CN110892453B (zh) 使用图像/视频编解码器的点云和网格压缩
CN109983757B (zh) 全景视频回放期间的视图相关操作
KR102458339B1 (ko) 360도 3d 입체 영상을 생성하는 전자 장치 및 이의 방법
CN112425177B (zh) 用于体积视频传输的方法和装置
CN107771395B (zh) 生成和发送用于虚拟现实的元数据的方法和装置
US20200221135A1 (en) Apparatus and methods for video compression
JP2021103327A (ja) コンテンツを提供及び表示するための装置及び方法
CN112204993B (zh) 使用重叠的被分区的分段的自适应全景视频流式传输
CN109983500B (zh) 重新投影全景视频图片的平板投影以通过应用进行渲染
US11450044B2 (en) Creating and displaying multi-layered augemented reality
US20190174125A1 (en) Positional zero latency
CN109845275B (zh) 用于视场虚拟现实流传输的会话控制支持的方法和装置
US20220094903A1 (en) Method, apparatus and stream for volumetric video format
WO2018044917A1 (en) Selective culling of multi-dimensional data sets
US20200401362A1 (en) Screen sharing for display in vr
US11310560B2 (en) Bitstream merger and extractor
EP3434021B1 (en) Method, apparatus and stream of formatting an immersive video for legacy and immersive rendering devices
CN115550565A (zh) 数据处理的方法、头戴设备、控制设备、电子设备及介质
JP2023507586A (ja) 3dof構成要素からの6dofコンテンツを符号化、復号化、及びレンダリングするための方法及び装置

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