CN109792544A - 用于流传输全景视频的方法和装置 - Google Patents

用于流传输全景视频的方法和装置 Download PDF

Info

Publication number
CN109792544A
CN109792544A CN201780045984.7A CN201780045984A CN109792544A CN 109792544 A CN109792544 A CN 109792544A CN 201780045984 A CN201780045984 A CN 201780045984A CN 109792544 A CN109792544 A CN 109792544A
Authority
CN
China
Prior art keywords
stream
framing
interest
video
area
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.)
Pending
Application number
CN201780045984.7A
Other languages
English (en)
Inventor
瓦莱里·B·基罗科夫
弗拉迪米尔·E·科尔图诺夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Comet Technology Co Ltd
Original Assignee
Comet Technology 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 Comet Technology Co Ltd filed Critical Comet Technology Co Ltd
Publication of CN109792544A publication Critical patent/CN109792544A/zh
Pending legal-status Critical Current

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/234345Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • 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/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
    • 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/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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4728End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for selecting a Region Of Interest [ROI], e.g. for requesting a higher resolution version of a selected region

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

提供了一种流式传输全景视频的方法。在一个实施方式中,方法包括接收由一系列拼接的全景帧形成的全景视频流,每个拼接的全景帧表示相对于中央观看点水平和垂直维度定义的全景图;将拼接的全景帧分成片段以形成分帧和分帧流;以多个比特率对每个分帧流的分帧进行编码以为每个分帧流形成多个分辨率质量;以及将分帧流组合以形成视频束帧流。还提供了一种用于流式球形投影视频的装置。还提供了一种存储程序指令的非易失性计算机可读介质。当由计算机或处理器执行时,程序指令使得装置执行该方法。

Description

用于流传输全景视频的方法和装置
相关申请的交叉引证
本申请要求于2016年6月2日提交的题为METHOD AND APPARATUS FOR STREAMINGEQUIRECTANGULAR VIDEO的美国临时专利申请序列号62/344,543的优先权和权益,通过引证将其全部内容结合于本文中。
技术领域
本公开涉及提供一种用于虚拟现实环境的视觉模拟。公开了用于捕获或上传、拼接、编码、和流传输形态化为球形(全景)用以呈现的单视场和立体全景视频的方法、过程和系统的各种实施方式。该呈现在虚拟现实中模拟适合用于其他设备的环境。
背景技术
VR内容可以包括视频和音频数据。VR内容可以包括电影胶片。VR内容的消费者(在下文中,“观看者”)可以在不同的方向上观看并体验不同的对象、解说和/或声音。VR内容允许观看者在三个和六个方向和/或自由度之间感知。当体验VR内容时,所显示的视频内容可以响应于观看者向上、向下及侧向(俯仰、偏转和滚动)观看而转移。当体验VR内容时,所显示的视频内容可以响应于观看者在一方向上的移动而转移。体验VR内容通常需要专用设备提供所希望的体验。这种专用设备可以包括可佩带的耳机和/或专用处理器。
通常预先获得VR内容的本地复制,即,容易到达观看者设备。通常,存储VR内容的电子数据文件大。例如,观看VR内容可能需要每分钟750兆字节至1千兆字节的视频数据。
“在体验之前下载”VR模型存在一些缺点。观看者在其能够观看之前可能需要下载整个文件。VR数据文件大并且可能花费相对较长的时间下载。由于互联网服务供应商(ISP)为较大的文件分配较低的传输优先级,下载时间可能进一步减慢。
此外,观看者必须具有可用的存储容量以存储VR内容。所存储的VR数据甚至在VR数据已观看之后仍可以保留在观看设备上,致使观看者的其他需求的可用存储容量较少。能够进行VR内容播放的设备的销售已增加。VR耳机越来越多地与其他常见移动设备一起工作。例如,当前的VR耳机利用观看者的智能电话或其他移动设备的屏幕和处理能力。VR耳机和移动设备通常以电池功率进行操作。观看VR内容可能需要集中的图像处理能力,其降低了移动观看设备的电池寿命预测。
对访问VR内容的需求已增加。期望观看者增加对实时和点播高质量VR内容的需求。进一步预期观看者需要可在他们选择的硬件设备上观看的大范围、良好组织的高质量VR内容。
因此,期望提供用于以为观看者提供沉浸式实时或点播VR体验的方式观看VR内容的装置和方法。进一步期望以实时或点播模式为观看者提供高效、标准化处理的VR内容。
发明内容
在各种实施方式中,方法、过程、和系统可以包括实时捕获或接收多个单视场或立体视频帧馈送;将多个视频馈送拼接到单个全景视频帧流中;将全景帧编码并转换为由以比特率的形式定量表示的多个分辨率质量的多个视频帧组成的视频束(video bunch,视频聚束)帧流或文件,以及将束帧流式传输至如由观看者客户端设备的感兴趣区域确定的观看者客户端设备。
在一个方面中,提供了一种流式传输全景视频的方法。在一个实施方式中,方法包括:在编码设备处接收由一系列拼接全景帧形成的全景视频流,其中,每个拼接全景帧表示由相对于中央观看点的水平维度和垂直维度定义的全景图;将拼接的全景帧划分为片段以形成与全景视频流的分帧部分有关的多个分帧和相应多个分帧流;以多个比特率为每个分帧流编码多个分帧以形成每个分帧流的多个分辨率质量,其中,多个分辨率质量的范围为从最高的分辨率质量到最低的分辨率质量;以及组合多个分辨率质量中的每一个的多个分帧流以形成视频束帧流。
在另一方面中,提供一种用于流传输全景视频的装置。在一个实施方式中,装置包括:编码设备,被配置为接收由一系列拼接全景帧形成的全景视频流,其中,每个拼接全景帧表示由相对于中央观看点水平和垂直维度的全景图;其中编码设备被配置为将拼接的全景帧分成片段以形成多个分帧和与全景视频流的分帧部分有关的相应多个分帧流;其中,编码设备被配置为以多个比特率对每个分帧流的多个分帧进行编码以形成每个分帧流的多个分辨率质量,其中,多个分辨率质量的范围为从最高的分辨率质量到最低的分辨率质量;其中,编码设备被构造为组合多个分辨率质量中的每一个的多个分帧流以形成视频束帧流。
在又一方面中,提供了一种非易失性计算机可读介质。存储程序指令的非易失性计算机可读介质,当由一个或者多个计算系统或处理器执行程序指令时,使得计算机控制的系统执行流式全景视频的方法。在一个实施方式中,方法包括:在编码设备处接收由一系列拼接全景帧形成的全景视频流,其中,每个拼接全景帧由相对于中央观看点水平和垂直维度定义的全景图;将拼接的全景帧分为片段以形成多个分帧和与全景视频流的分帧部分有关的相应多个分帧流;以多个比特率为每个分帧流的多个分帧进行编码以形成每个分帧流的多个分辨率质量,其中,多个分辨率质量的范围为从最高的分辨率质量到最低的分辨率质量;并且组合多个分辨率质量中的每一个的多个分帧流以形成视频束帧流。
另外的优势和实施方式将在接下来的描述中部分阐述或者可以通过实践而学习。应当理解,以上小结和以下详细说明是出于说明性的目的的示例性实施方式而并非限制性的。
本发明的适用性的进一步范围将从以下提供的详细说明显而易见。然而,应当理解的是,虽然详细描述和具体实例表明了本发明的优选实施方式,但所述详细描述和具体实例仅以示例的方式给出,因此,通过所述详细描述,对于本领域技术人员来说,落入本发明的精神和范围内的各种改变和变型是显而易见的。
附图说明
本发明反应在设备的各个部分的构造、布置和组合,及方法的步骤,借此,如在下文中更完整地阐述、在权利要求中具体指出并在附图中示出的,达到了预料的目的,在附图中:
图1示出了用于流传输单视场或立体全景视频的方法、过程、和系统的示例性硬件和软件环境;
图2示出了利用自定义、第三方、或定制第三方拼接过程流传输单视场或立体全景视频的示例性方法、过程、和系统;
图3示出了利用照相机组并在生产水平处从不同的照相机组手动切换视频馈送来流传输单视场或立体全景视频的示例性方法、过程、和系统;
图4示出了利用多个照相机组并在播放水平处在视频馈送之间手动切换来流传输单视场或立体全景视频的示例性方法、过程、和系统,每个照相机组均具有所指定的生产站;
图5示出了用于流传输先前拼接的单视场或立体全景视频流的示例性方法、过程、和系统;
图6示出了用于上传并流传输先前产生的单视场或立体全景视频文件的示例性方法、过程、和系统;
图7是用于拼接和编码完整的单视场或立体全景视频帧从而将视频帧转换为束帧集合的示例性方法和过程的流程图;
图8是用于识别、流传输、和显示单视场或立体全景视频束帧的示例性方法和过程的流程图,单视场或立体全景视频束帧由如由观看者客户端设备选择的或者单独显示在观看者客户端设备中的感兴趣区域(ROI)确定的内帧(关键帧)和预测帧(△帧)组成;
图9是当利用M水平的束帧时用于流传输和显示单视场或立体全景视频束帧的示例性方法、过程、和系统的流程图;
图10是用于识别和流传输单视场或立体全景视频束帧集合的示例性方法、过程、和系统的流程图,单视场或立体全景视频束帧集合由如由观看者客户端设备选择的感兴趣区域确定的内帧(关键帧)和预测帧(△帧)的特定组合组成;
图11是用于将完整的帧单视场或立体全景视频文件划分为束帧片段的示例性方法的示意图,束帧片段的尺寸和数量可基于应用变化;
图12是用于流传输全景视频的过程的示例性实施方式的流程图;
图13结合图12提供用于流传输全景视频的过程的另一示例性实施方式的流程图;
图14结合图12提供用于流传输全景视频的过程的又一示例性实施方式的流程图;
图15结合图12提供用于流传输全景视频的过程的又一示例性实施方式的流程图;
图16结合图12提供用于流传输全景视频的过程的又一示例性实施方式的流程图;
图17结合图12提供用于流传输全景视频的过程的另一示例性实施方式的流程图;
图18A和图18B结合图12提供用于流传输全景视频的过程的又一示例性实施方式的流程图;
图19是被配置为流传输全景视频的系统的示例性实施方式的框图。
具体实施方式
在公开和描述本方法、过程、和系统之前,要理解的是,方法、过程、和系统不限于具体的合成方法、具体的组件或特定的组合物。例如,本文中公开的各种特征和组件可以任何合适的方式组合以形成其他实施方式。也应当理解的是本文所使用的术语是用于描述具体实施方式的目的,而不是旨在限制本发明。
除非上下文中另有明确规定,否则在示图和说明书中使用的单数形式的“一个”、“一种”和“所述”包括复数对象。
如在本文中使用的“示例性”是指“...的实例”并非意味着传达理想或优选的实施方式的感觉。
“可选的”或“可选地”是指随后描述的事件或情况可以发生或可以不发生,并且该描述包括所述事件或状况发生的情况和不发生的情况。
本发明可以通过参考本文中提供的各种实施方式的描述、附图、和本文中提供的附图的描述更容易地理解。
本发明涉及用于捕获或上传、拼接、编码、和流传输形态化为球形(全景)用以呈现的单视场和立体全景视频的方法、过程和系统。在一个实施方式中,方法、过程、和系统可以包括实况捕获或接收多个单视场或立体视频帧馈送;将多个视频馈送拼接到单个全景视频帧流中;将全景帧流编码并转换为视频束帧流或文件,视频束帧流或文件由以比特率的形式定量表示的多个分辨率质量的多个视频帧的片段组成,以及将束帧流传输至如通过观看者客户端设备的感兴趣区域确定的观看者客户端设备。
图1示出了根据用于流传输单视场或立体全景视频的方法、过程、和系统的一些实施方式实现的示例性硬件和软件环境。如所示出的,示例性硬件和软件环境包括照相机系统101;生产站102,由视频捕获模块103、拼接模块104、编码模块105、和广播模块106组成;存储设备组件107;流式服务器组件108;通信网络109,和观看者客户端设备110。连接照相机系统101、生产站102、存储设备组件107、流式服务器组件108、通信网络109、和观看者客户端设备110的网络可以部分或完全经由例如由局域网(LAN)、无线LAN(WLAN)、城域网(MAN)、通用串行总线(USB)、混合光纤-同轴(HFC)网络、卫星网、以太网网络、无线MAN(WMAN)、广域网(WAN)、无线WAN(WWAN)、个人局域网(PAN)、无线PAN(WPAN)、互联网、和/或无线标准诸如EEE 802.11标准、WiFi、蓝牙、红外线、WiMax、长期演进(LTE)、或任何合适的组合的任何合适的通信网络组成的网络相互连接。由这些组件形成的示例性硬件和软件环境还可以包括任何其他合适的元件以便于捕获或上传、拼接、编码、和流传输单视场和立体全景视频用以观看。
照相机系统101由多个照相机组组成,多个照相机组由编号2至N的独立照相机组成并且支持单视场或立体视频。根据本发明的特殊实现方式,照相机组中的照相机的数量的范围可以为从2至N,且总记录视野至多达360度。包括照相机系统的照相机组中的每个照相机向视频捕获模块103发送视频馈送。当给定的照相机组中的照相机布置为提供至多360度×180度的总记录视野,从拼接的视频馈送中得到的全景视频流可以称为球形投影(equirectangular)视频流。
由视频捕获模块103、拼接模块104、编码模块105、和广播模块106组成的生产站102可以是一个计算设备或者每个模块均可以在单独的计算设备上实现。
视频捕获模块103由多个内部或外部视频捕获设备组成。需要视频捕获设备从照相机组中的每个照相机捕获视频。视频捕获设备的数量取决于每个视频捕获设备输入的数量和照相机组中照相机的数量。在发送至拼接模块104之前,视频捕获模块捕获并临时存储来自照相机系统101的视频馈送。
拼接模块104是经由视频捕获模块103将来自照相机组中的每个照相机的单独的视频馈送转换为一个单视场或立体全景视频流的计算设备操作软件。
编码模块105由将从拼接模块104接收的单视场或立体全景视频流转换为视频束帧流或文件的多个计算机CPU和/或GPU组成。编码模块通过将单视场或立体视频流划分为多个片段并对以比特率的形式定量表示的多个分辨率质量的每个片段进行编码产生视频束帧流。每个分片段的数量和形状均基于所希望的配置而变化。编码模块可以利用任何合适的编码解码器,包含任何当前或未来的标准编码解码器(例如,H.264、H.265等)。
存储设备组件107由多个存储设备组成,多个存储设备可以可选地接收并保存来自编码模块105的视频束帧流。多个存储设备可以包括内部硬盘驱动器、外部硬盘驱动器、固态驱动器(SSD)、VRAM、DRAM、网络附接存储器(NAS)设备、USB拇指驱动器、闪存驱动器、存储卡、光驱动器(例如,CD驱动器、DVD驱动器等)、云存储器(例如,亚马逊S3、Google驱动器、Sky驱动器等)、以及任何合适的组合的其他合适的存储设备。
广播模块106从编码模块105接收并临时存储来自编码模块105的视频束帧流。基于由观看者客户端设备110识别并从流式服务器组件108接收的感兴趣区域(ROI),广播模块向流式服务器组件108发送视频束帧流的段。
流式服务器组件108由多个流式服务器组成,多个流式服务器从广播模块106接收视频束帧流片段或基于如由观看者客户端设备110确定的感兴趣区域(ROI)从存储设备组件107进行读取。流式服务器组件经由通信网络109向观看者客户端设备发送如通过ROI确定的视频束帧流片段。
观看者客户端设备110将ROI传送至流式服务器组件108,并且显示经由通信网络109从流式服务器组件108接收的视频束帧流片段。观看者客户端设备110在多个观看者设备上操作,每个观看者设备传送唯一的ROI并从流式服务器组件108接收一组特有的视频束帧流片段。观看者客户端设备110可以在能够接收和播放单视场或立体全景视频的任何用户设备(例如,个人计算设备、智能电话、虚拟现实耳机等)上操作。
图2示出了利用自定义、第三方、或定制第三方拼接过程流传输单视场或立体全景视频的示例性方法、过程、和系统。图2示出了图1的另一实施方式,其中拼接模块104利用自定义、第三方、或定制的第三方拼接软件111。
图3示出了利用照相机组并在生产水平处从不同的照相机组手动切换视频馈送来流传输单视场或立体全景视频的示例性方法、过程、和系统。图3示出了图1的另一实施方式,其中照相机系统112由多个照相机组组成,每个照相机组均由编号2至N并且支持捕获单视场或立体视频的独立照相机组成。在这个实施方式中,每个照相机组向生产者子系统113发送视频流。生产者子系统允许手动选择单个照相机组。只有由生产者子系统主动选择的照相机组向视频捕获模块发送包括所选择的照相机组的照相机的视频馈送用以在观看者客户端设备中进行处理和最终的播放。
图4示出了利用多个照相机组并在播放水平处在视频馈送之间手动切换115来流传输单视场或立体全景视频的示例性方法、过程、和系统,每个照相机组均具有指定的生产站114。图4示出了图1的另一实施方式,其中多个照相机组各自具有专用生产站114。在这个实施方式中,每个照相机组和专用生产站产生唯一的视频束帧流。观看者客户端设备117将手动照相机组选择传送到流式服务器组件116,其在仅有的视频束帧流115之间进行切换并将视频束帧流从所选择的照相机组发送至观看者客户端设备117进行播放。
图5示出了用于流传输先前拼接的单视场或立体全景视频流的示例性方法、过程、和系统。图5示出了图1中的生产站的另一实施方式,其中生产站118由输入流119、编码模块120、和广播模块121组成。在这个实施方式中,输入流由在进入本系统之前的原点处拼接的单视场或立体全景视频流组成,从而消除了对拼接模块的需要。
图6示出了用于上传并流传输先前产生的单视场或立体全景视频文件的示例性方法、过程、和系统。图6示出了图1中的生产站的另一实施方式,其中生产站122由文件上传模块123和编码模块124组成。在这个实施方式中,将先前产生并拼接的单视场或立体全景视频文件上传至文件上传模块123。编码模块124由将从文件上传模块123接收的单视场或立体全景视频流转换为视频束帧流或文件的多个计算机CPU和/或GPU组成。编码模块通过将单视场或立体全景视频流划分为多个片段并对以比特率的形式定量表示的多个分辨率质量的每个片段进行编码产生视频束帧流。每个分片段的数量和形状均基于所希望的配置而变化。编码模块可以利用任何合适的编码解码器,包含任何当前或未来的标准编码解码器(例如,H.264、H.265等)。
存储设备组件125由多个存储设备组成,多个存储设备可以可选地接收并保存来自编码模块124的视频束帧流。多个存储设备可以包括内部硬盘驱动器、外部硬盘驱动器、固态驱动器(SSD)、VRAM、DRAM、网络附接存储器(NAS)设备、USB拇指驱动器、闪存驱动器、存储卡、光驱动器(例如,CD驱动器、DVD驱动器等)、云存储器(例如,亚马逊S3、Google驱动器、Sky驱动器等)、以及任何合适的组合的其他合适的存储设备。
流式服务器组件126由多个流式服务器组成,多个流式服务器读取基于如由观看者客户端设备127确定的感兴趣区域(ROI)从存储设备组件125进行读取的视频束帧流的片段。流式服务器组件向观看者客户端设备127发送如通过ROI确定的视频束帧流的片段。
图7是用于拼接和编码完整的单视场或立体全景视频帧从而将视频帧转换为束帧集合的示例性方法和过程的流程图。图7示出了编码模块200使用的方法和过程的实施方式。拼接模块201将来自每个视频捕获设备的单独的视频馈送转换为一个单视场或立体全景视频流(全帧)。每个视频捕获设备与照相机组的相应照相机相关联。编码模块200将全帧分成多个片段203,片段的形状和数量基于所希望的配置而变化。全帧的每个分片段被临时记录在存储设备组件204中。在并行过程中,多个编码器对以比特率的形成定量表示的分辨率质量[(QL1)...(QLM)]205的全帧的每个分片段进行编码。在编码205之后,每个分片段的多个分辨率质量(以比特率的形式定量表示的)组合成视频聚束帧集合206。聚束帧集合由两种类型的分帧、内帧(关键帧)和预测帧(△帧)组成。视频束帧流由内帧和预测帧的组合(IPPPIPPPI...)组成。
图8是用于识别、流传输、和显示单视场或立体视频束帧的示例性方法和过程的流程图,单视场或立体视频束帧由如由观看者客户端设备选择的或者单独显示在观看者客户端设备中的关注区域(ROI)确定的内帧(关键帧)和预测帧(△帧)组成。在这个实施方式中,单视场或立体全景视频束帧从存储设备组件300或广播模块301流传输。存储器和广播模块包含视频束帧集合,其包括用于每个分帧片段的多个分辨率质量。图8中的实施方式仅示出两种分辨率质量,低质量(LQ)和高质量(HQ),而其他实施方式利用以比特率的形式定量表示的多个分辨率质量[(QL1)...(QLM)]。束帧集合由两种类型的分帧、内帧(关键帧)和预测帧(△帧)组成。视频束帧流由内帧和预测帧的组合(IPPPIPPPI...)组成。
流式服务器组件302从存储器300和广播模块301接收视频束帧流。观看者客户端设备304连接至流式服务器组件302并且在建立连接之后将ROI坐标发送至流式服务器组件。ROI坐标基于放置在观看者客户端设备303的感兴趣区域中的内帧。基于从观看者客户端设备接收的ROI坐标和当前帧状态(内帧或预测帧),流式服务器组件选择并组装特有的所需分辨率质量(以比特率的形式定量表示的)的片段集合以形成对应的唯一视频束帧流,该唯一视频束帧流被发送至观看者客户端设备进行显示304。该过程导致高质量帧片段被显示在观看者客户端设备的感兴趣区域,而低质量的帧片段被发送至感兴趣区域之外的区域。当感兴趣区域在全帧内移动时,流式服务器组件时实基于新的ROI坐标和当前帧状态调整被发送至观看者客户端设备的唯一的视频束帧流。
在这个实施方式中,帧片段基于应用被显示在观看者客户端设备中。帧片段可以组装成完整的单视场或立体全景视频305或者可以彼此单独显示306。在不需要拼接并且从每个源照相机产生单独的视频流的应用中可以使用单独的显示器306。
图9是当利用(QL1)...(QLM)质量水平的束帧时用于流传输和显示单视场或立体全景视频束帧的示例性方法、过程、和系统的流程图。图9示出了图8的实施方式,其示出了包含以每个分帧的比特率形式定量表示的多个分辨率质量的视频束帧流。
图10是用于识别和流传输单视场或立体视频束帧集合的示例性方法、过程、和系统的流程图,单视场或立体视频束帧集合由如由观看者客户端设备选择的感兴趣区域确定的内帧(关键帧)和预测帧(△帧)的特定组合组成。当前实施方式说明了阐述包含观看者客户端设备的唯一的视频束帧流的帧片段的分辨率质量(以比特率的形式定量表示的)的变化的过程,即当观看者客户端设备的感兴趣区域变化时,包含唯一的视频束帧流的帧片段的组合基于新的ROI坐标和当前内帧(关键帧)变化使得高质量帧片段显示在观看者客户端设备的感兴趣区域上。
虽然流传输单视场或立体视频,但流式服务器组件从广播模块400接收新的帧束数据。当接收新的帧数据时,流式服务器组件查看是否接收到内帧(关键帧)401。流式服务器组件跳过新的帧数据直至接收到内帧(关键帧)401。如果接收到内帧(关键帧)并且观看者客户端设备的ROI坐标不改变,则帧质量输出不改变402。如果接收内帧(关键帧)并且从观看者客户端设备接收的ROI坐标已改变,则通过流式服务器组件改变帧质量输出403。检查视频帧束中的每个分帧片段404。如果分帧片段位于ROI内部,则输出到观看者客户端设备的视频束帧流是分帧片段的高比特率版本405。如果分帧片段位于ROI外部,则输出到观看者客户端设备的视频束帧流是分帧片段的低比特率版本406。
图11是用于将完整的帧单视场或立体全景视频文件划分为分帧片段的示例性方法的示意图,分帧片段的尺寸和数量可基于应用而变化。图11提供了在编码过程期间单视场或立体全景视频流如何被划分为分帧片段的实例。用于包含编码过程期间最后的视频束帧的片段的形状和数量是可变的并且基于应用,例如,预期为观看者客户端设备形成细长的、从左到右的ROI的视频内容可以以水平线段进行分割。
参照图12,用于流传输全景视频的过程1200的示例性实施方式开始于1202,其中在编码设备处接收由一系列拼接的全景帧形成的全景视频流。每个拼接的全景帧由相对于中央观看点水平和垂直维度限定的全景图表示。在1204中,将拼接的全景帧分成片段以形成多个分帧和与全景视频流的分帧部分有关的对应多个分帧流。接下来,以多个比特率对每个分帧流的多个分帧进行编码以为每个分帧流形成多个分辨率质量(1206)。多个分辨率质量的范围为从最高的分辨率质量到最低的分辨率质量。在1208中,将多个分辨率质量中的每一个的多个分帧流进行组合以形成视频束帧流。
在过程1200的另一个实施方式中,与全景图相关联的水平维度是180度并且与全景图相关联的垂直维度为90度。在过程1200的又一实施方式中,由拼接的全景帧的序列形成的全景视频流是由一系列拼接的球形投影帧形成的球形投影视频流,与全景图相关联的水平维度是360度,并且与全景图相关联的垂直维度是180度。在过程1200的又一实施方式中,拼接全景帧所分成的片段由预定配置定义使得每个片段可由其在拼接的全景帧内的位置识别并且使得预定配置与全景视频流逐帧一致。在这个实施方式中,拼接的全景帧的片段的预定配置以允许在拼接的全景帧中的不同的位置的分帧具有不同的形状和不同尺寸的方式包括每个分帧的形状和尺寸参数。在过程1200的又一实施方式中,每个分帧的多个比特率包括至少三个比特率使得每个分帧流的多个分辨率质量包括高分辨率质量、至少一个中等分辨率质量、和低分辨率质量。
参照图12和图13,用于流传输全景视频的过程1300的实施方式在1302中开始,其中在一个或多个视频捕获设备处捕获来自多个摄像机的视频馈送。与多个摄像机相关联的视场为使得视场的组合提供与全景图相关联的水平和垂直维度的覆盖范围和中央观看点涉及球体的中心点的球体的相应内表面视图的覆盖范围。在1304中,将所捕获的视频馈送从一个或多个视频捕获设备发送至拼接设备。接下来,将所捕获的视频馈送的帧转换为拼接的全景帧(1306)。在1308中,将具有拼接的全景帧的全景视频流从拼接设备发送至编码设备。过程1300从1308继续至图12中的过程1200的1202。
参照图12和图14,用于流传输全景视频的过程1400的实施方式开始于1402,其中将与先前拼接且记录的全景视频流相关联的一个或多个电子文件从存储设备上传至文件上传设备。先前拼接且记录的全景视频包括全景视频流的拼接全景帧。在1404中,处理一个或多个电子文件以形成全景视频流。接下来,全景视频流被从文件上传设备发送至编码设备(1406)。过程1400从1406继续至图12中的过程1200的1202。
参照图12和图15,用于流传输全景视频的过程1500的实施方式包括图12的过程1200并且从1208继续至1502,其中将视频束帧流从编码设备发送至广播设备。在1504中,将视频束帧流至少临时存储在广播设备能访问的存储设备中。接下来,在广播设备处从第一观看者客户端设备接收第一感兴趣区域的识别信息(1506)。第一感兴趣区域表示全景图的至少第一部分。在1508中,识别与第一感兴趣区域相关联的视频束帧流的分帧和与第一感兴趣区域不关联的其他分帧。接下来,针对与第一感兴趣区域相关联的分帧选择视频束帧流中较高分辨率质量的第一分帧流(1510)。在1512中,针对与第一感兴趣区域不关联的分帧选择视频束帧流中较低分辨率质量的第二分帧流。接下来,将第一分帧流和第二分帧流组合以形成第一定制全景视频流(1514)。在1516中,将第一定制全景视频流从广播设备发送至第一观看者客户端设备。
在另一个实施方式中,过程1500还包括在广播设备处从第二观看者客户端设备接收第二感兴趣区域的识别信息。第二感兴趣区域不同于第一感兴趣区域并且表示全景图的至少第二部分。识别与第二感兴趣区域相关联的视频束帧流的分帧和与第二感兴趣区域不关联的其他分帧。针对与第二感兴趣区域相关联的分帧选择视频束帧流中较高分辨率质量的第三分帧流。针对与第二感兴趣区域不关联的分帧选择视频束帧流中较低分辨率质量的第四分帧流。将第三分帧流和第四分帧流组合以形成第二定制全景视频流。第二定制全景视频流被从广播设备发送至第二观看者客户端设备。
参照图12和图16,用于流传输全景视频的过程1600的实施方式包括图12的过程1200并从1208继续至1602,其中视频束帧流至少临时存储在编码设备可访问的存储设备中。在1604中,将与视频束帧流相关联的分帧信息从存储设备上传至流式服务器组件。接下来,在流式服务器组件处从第一观看者客户端设备接收第一感兴趣区域的识别信息(1606)。第一感兴趣区域表示全景图的至少第一部分。在1608中,识别与第一感兴趣区域相关联的视频束帧流的分帧和至少部分基于分帧信息与第一感兴趣区域不关联的其他分帧。接下来,将视频束帧流中较高分辨率质量的第一分帧流从存储设备上传至与第一感兴趣区域相关联的分帧的流式服务器组件(1610)。在1612中,将视频束帧流中较低分辨率质量的第二分帧流从存储设备上传至与第一感兴趣区域不关联的其他分帧的流式服务器组件。接下来,将第一分帧流和第二分帧流组合以形成第一定制全景视频流(1614)。在1616中,将第一定制全景视频流从流式服务器组件发送至第一观看者客户端设备。
在另一个实施方式中,过程1600还包括在流式服务器组件处从第二观看者客户端设备接收第二感兴趣区域的识别信息。第二感兴趣区域表示全景图的至少第二部分。识别与第二感兴趣区域相关联的视频束帧流的分帧和至少部分基于分帧信息与第二感兴趣区域不关联的其他分帧。将视频束帧流中较高分辨率质量的第三分帧流从存储设备上传至与第二感兴趣区域相关联的分帧的流式服务器组件。将视频束帧流中较低分辨率质量的第四分帧流从存储设备上传至与第二感兴趣区域不关联的其他分帧的流式服务器组件。将第三分帧流和第四分帧流组合以形成第二定制全景视频流。将第二定制全景视频流从流式服务器组件发送至第二观看者客户端设备。
参照图12和图17,用于流传输全景视频的过程1700的实施方式包括图12的过程1200并且从1208继续至1702,其中将视频束帧流从编码设备发送至广播设备。在1704中,视频束帧流至少临时存储在广播设备能访问的存储设备中。接下来,至少每当感兴趣区域变化时,在广播设备处从观看者客户端设备周期性地接收感兴趣区域的识别信息(1706)。观看者客户端设备被配置为允许感兴趣区域响应于观看者客户端设备处的与显示在观看者客户端设备上的流式视频相关联的用户动作动态地改变。感兴趣区域表示全景图的至少一部分。在1708中,响应于对感兴趣区域的动态改变动态地识别与感兴趣区域相关联的视频束帧流的分帧和与感兴趣区域不关联的其他分帧。接下来,响应于对感兴趣区域的动态改变,针对与第一感兴趣区域相关联的分帧动态地选择视频束帧流中较高分辨率质量的第一分帧流(1710)。在1712中,响应于对感兴趣区域的动态改变,针对与第一感兴趣区域不关联的分帧动态地选择视频束帧流中较低分辨率质量的第二分帧流。接下来,将第一分帧流和第二分帧流动态地组合以形成响应于对感兴趣区域的动态改变而动态地调整的定制全景视频流(1714)。在1716中,将定制全景视频流从广播设备发送至观看者客户端设备。
参照图12、图18A和图18B,用于流传输全景视频的过程1800的实施方式包括图12的过程1200并从1208继续至1802,其中视频束帧流至少临时存储在编码设备可访问的存储设备中。在1804中,将与视频束帧流相关联的分帧信息从存储设备上传至流式服务器组件。接下来,至少每当感兴趣区域变化时,在流式服务器组件处从观看者客户端设备周期性地接收感兴趣区域的识别信息(1806)。观看者客户端设备被配置为允许感兴趣区域响应于观看者客户端设备处的与显示在观看者客户端设备上的流式视频相关联的用户动作动态地改变。感兴趣区域表示全景图的至少一部分。接下来,响应于对感兴趣区域的动态改变,动态地识别与感兴趣区域相关联的视频束帧流的分帧和至少部分基于分帧信息与感兴趣区域不关联的其他分帧(1808)。在1810中,响应于对感兴趣区域的动态改变,将视频束帧流中的较高分辨率质量的第一分帧流被从存储设备动态地上传至与感兴趣区域相关联的分帧的流式服务器组件。接下来,响应于对感兴趣区域的动态改变,将视频束帧流中的较低分辨率质量的第二分帧流被从存储设备动态地上传至与感兴趣区域不关联的其他分帧的流式服务器组件(1812)。在1814中,将第一分帧流和第二分帧流动态地组合以形成响应于对感兴趣区域的动态改变而动态地调整的定制全景视频流。接下来,将第二定制全景视频流从流式服务器组件发送至第二观看者客户端设备。
参照图19,用于流传输全景视频的系统1900的示例性实施方式包括被配置为接收由一系列拼接的全景帧形成的全景视频流的编码设备1902。每个拼接的全景帧由相对于中央观看点水平和垂直维度限定的全景图表示。编码设备1902被配置为将拼接的全景帧分成片段以形成多个分帧和与全景视频流的分帧部分有关的对应多个分帧流。编码设备1902被配置为以多个比特率对每个分帧流的多个分帧进行编码以为每个分帧流形成多个分辨率质量。多个分辨率质量的范围为从最高的分辨率质量到最低的分辨率质量。编码设备1902被配置为对多个分辨率质量中的每一个的多个分帧流进行组合以形成视频束帧流。
在另一个实施方式中,系统1900包括一个或多个视频捕获设备1904、多个摄像机1906、和拼接设备1908。一个或多个视频捕获设备1904被配置为从多个摄像机1906捕获视频馈送。与多个摄像机1906相关联的视场为使得视场的组合提供与全景图相关联的水平和垂直维度的覆盖范围和中央观看点涉及球体的中心点的球体的相应内表面视图的覆盖范围。一个或多个视频捕获设备1904被配置为向拼接设备1908发送所捕获视频馈送。拼接设备1908被配置为将所捕获视频馈送的帧转换为拼接的全景帧。拼接设备1908被配置为向编码设备1902发送具有拼接全景帧的全景视频流。
在又一个实施方式中,系统1900包括文件上传设备1910,文件上传设备被配置为从存储设备1912上传与先前拼接且记录的全景视频流相关联的一个或多个电子文件。先前拼接且记录的全景视频包括全景视频流的拼接全景帧。文件上传设备1910被配置为处理一个或多个电子文件以形成全景视频流。文件上传设备1910被配置为向编码设备1902发送全景视频流。
在又一实施方式中,系统1900包括广播设备1914。在这个实施方式中,编码设备1902被配置为向广播设备1914发送视频束帧流。广播设备1914被配置为将视频束帧流至少临时存储在存储设备1916中。广播设备1914被配置为从第一观看者客户端设备1918接收第一感兴趣区域的识别信息。第一感兴趣区域表示全景图的至少第一部分。广播设备1914被配置为识别与第一感兴趣区域相关联的视频束帧流的分帧和与第一感兴趣区域不关联的其他分帧。广播设备1914被配置为选择与第一感兴趣区域相关联的分帧的视频束帧流中较高的分辨率质量的第一分帧流。广播设备1914被配置为选择与第一感兴趣区域不关联的分帧的视频束帧流中较低的分辨率质量的第二分帧流。广播设备1914被配置为将第一分帧流和第二分帧流组合以形成第一定制全景视频流。广播设备1914被配置为向第一观看者客户端设备1918发送第一定制全景视频流。
在又一实施方式中,系统1900包括流式服务器组件1920。在这个实施方式中,编码设备1902被配置为将视频束帧流至少临时存储在存储设备1922中。流式服务器组件1920被配置为从存储设备1922上传与视频束帧流相关联的分帧信息。流式服务器组件1920被配置为从第一观看者客户端设备1918接收第一感兴趣区域的识别信息。第一感兴趣区域表示全景图的至少第一部分。流式服务器组件1920被配置为识别与第一感兴趣区域相关联的视频束帧流的分帧和至少部分基于分帧信息与第一感兴趣区域不关联的其他分帧。流式服务器组件1920被配置为从与第一感兴趣区域相关联的分帧的存储设备1922上传视频束帧流中较高的分辨率质量的第一分帧流。流式服务器组件1920被配置为从与第一感兴趣区域不关联的其他分帧的存储设备1922上传视频束帧流中较低的分辨率质量的第二分帧流。流式服务器组件1920被配置为将第一分帧流和第二分帧流组合以形成第一定制全景视频流。流式服务器组件1920被配置为向第一观看者客户端设备1918发送第一定制全景视频流。
在另一个实施方式中,系统1900包括广播设备1914。在这个实施方式中,编码设备1902被配置为向广播设备1914发送视频束帧流。广播设备1914被配置为将视频束帧流至少临时存储在存储设备1916中。广播设备1914被配置为至少每当感兴趣区域改变时从观看者客户端设备1918周期性地接收感兴趣区域的识别信息。观看者客户端设备1918被配置为允许感兴趣区域响应于观看者客户端设备1918处的与显示在观看者客户端设备1918上的流式视频相关联的用户动作动态地改变。感兴趣区域表示全景图的至少一部分。广播设备1914被配置为响应于对感兴趣区域的动态改变而动态地识别与感兴趣区域相关联的视频束帧流的分帧和与感兴趣区域不关联的其他分帧。广播设备1914被配置为响应于对感兴趣区域的动态改变,针对与第一感兴趣区域相关联的分帧动态地选择视频束帧流中较高分辨率质量的第一分帧流。广播设备1914被配置为响应于对感兴趣区域的动态变化针对与第一感兴趣区域不关联的分帧动态地选择视频束帧流中较低的分辨率质量的第二分帧流。广播设备1914被配置为将第一分帧流和第二分帧流动态地组合以形成响应于对感兴趣区域的动态改变而动态地调整的定制全景视频流。广播设备1914被配置为向第一观看者客户端设备1918发送定制全景视频流。
在另一个实施方式中,系统1900包括流式服务器组件1920。在这个实施方式中,编码设备1902被配置为将视频束帧流至少临时存储在存储设备1922中。流式服务器组件1920被配置为从存储设备1922上传与视频束帧流相关联的分帧信息。流式服务器组件1920被配置为至少每当感兴趣区域改变时从观看者客户端设备1918周期性地接收感兴趣区域的识别信息。观看者客户端设备1918被配置为允许感兴趣区域响应于观看者客户端设备1918处的与显示在观看者客户端设备1918上的流式视频相关联的用户动作动态地改变。感兴趣区域表示全景图的至少一部分。流式服务器组件1920被配置为响应于感兴趣区域的动态变化动态地识别与感兴趣区域相关联的视频束帧流的分帧和至少部分基于分帧信息与感兴趣区域不关联的其他分帧。流式服务器组件1920被配置为响应于对感兴趣区域的动态改变从与感兴趣区域相关联的分帧的存储设备1922上传视频束帧流中较高的分辨率质量的第一分帧流。流式服务器组件1920被配置为响应于对感兴趣区域的动态改变从与感兴趣区域不关联的其他分帧的存储设备1922上传视频束帧流中较低的分辨率质量的第二分帧流。流式服务器组件1920被配置为将第一分帧流和第二分帧流动态地组合以形成响应于感兴趣区域的动态变化动态地调整的定制全景视频流。流式服务器组件1920被配置为向第一观看者客户端设备1918发送定制全景视频流。
参照图12-图19,存储程序指令的非易失性计算机可读介质的各种示例性实施方式,该程序指令当由至少一个计算机或者处理器执行时使得相应处理器-控制的系统(例如,系统1900)执行流式全景视频的方法。例如,上文参照图19描述了处理器控制的系统的各种实施方式。上文参照图12-17、图18A、图18B描述了流式全景视频的方法的各种实施方式。换言之,非易失性计算机可读介质的各种示例性实施方式的程序指令由在上文参照图12-17、图18A、图18B描述的过程1200、1300、1400、1500、1600、1700、和1800的任意合适的组合定义。类似地,与非易失性计算机可读介质的各种示例性实施方式相关联的处理器控制的系统1900由上文参照图19描述的任意合适的组件组合定义。
鉴于上述说明,有关上述方法、过程、和系统的各种实施方式的许多附加的变化将对本领域中的技术人员显而易见。这种变化包括目前无法预料的或者不曾预料到的随后可以由本领域中的技术人员进行的并且旨在在本文中描述的方法、过程、和系统的范围内的替代、修改、和改进。

Claims (21)

1.一种用于流传输全景视频的方法,包括:
接收由一系列拼接的全景帧在编码设备处形成的全景视频流,其中,每个拼接的全景帧表示由相对于中央观看点的水平和垂直维度限定的全景图;
将所述拼接的全景帧分成片段以产生多个分帧和与所述全景视频流的分帧部分有关的对应多个分帧流;
以多个比特率编码每个分帧流的所述多个分帧以形成每个分帧流的多个分辨率质量,其中,所述多个分辨率质量的范围为从最高的分辨率质量到最低的分辨率质量;以及
将每一个所述多个分辨率质量的多个分帧流进行组合以形成视频束帧流。
2.根据权利要求1所述的方法,还包括:
在一个或多个视频捕获设备处捕获来自多个摄像机的视频馈送,其中,与所述多个摄像机相关联的视场为使得所述视场的组合提供与所述全景图相关联的水平和垂直维度的覆盖范围和所述中央观看点涉及球体的中心点的球体的相应内表面视图的覆盖范围;
将来自所述一个或多个视频捕获设备的所捕获视频馈送发送至拼接设备;
将所捕获视频馈送的帧转换为所述拼接的全景帧;以及
将具有所述拼接的全景帧的所述全景视频流从所述拼接设备发送至所述编码设备。
3.根据权利要求1所述的方法,还包括:
将与先前拼接且记录的全景视频流相关联的一个或多个电子文件从存储设备上传至文件上传设备,其中,所述先前拼接且记录的全景视频包括所述全景视频流的所述拼接全景帧;
处理所述一个或多个电子文件以形成所述全景视频流;以及
将所述全景视频流从所述文件上传设备发送至所述编码设备。
4.根据权利要求1所述方法,进一步包括:
将所述视频束帧流从所述编码设备发送至广播设备;
将所述视频束帧流至少临时存储在所述广播设备可访问的存储设备中;
在所述广播设备处从第一观看者客户端设备接收第一感兴趣区域的识别信息,其中,所述第一感兴趣区域表示所述全景图的至少第一部分;
识别与所述第一感兴趣区域相关联的所述视频束帧流的分帧和与所述第一感兴趣区域不关联的其他分帧;
针对与所述第一感兴趣区域相关联的分帧选择所述视频束帧流中的较高的分辨率质量的第一分帧流;
针对与所述第一感兴趣区域不关联的分帧选择所述视频束帧流中的较低的分辨率质量的第二分帧流;
将所述第一分帧流和所述第二分帧流进行组合以形成第一定制全景视频流;以及
将所述第一定制全景视频流从所述广播设备发送至所述第一观看者客户端设备。
5.根据权利要求4所述的方法,进一步包括:
在所述广播设备处从第二观看者客户端设备接收第二感兴趣区域的识别信息,其中,所述第二感兴趣区域不同于所述第一感兴趣区域并且表示所述全景图的至少第二部分;
识别与所述第二感兴趣区域相关联的所述视频束帧流的分帧和与所述第二感兴趣区域不关联的其他分帧;
针对与所述第二感兴趣区域关联的分帧选择所述视频束帧流中的较高的分辨率质量的第三分帧流;
针对与所述第二感兴趣区域不关联的分帧选择所述视频束帧流中的较低的分辨率质量的第四分帧流;
将所述第三分帧流和所述第四分帧流组合以形成第二定制全景视频流;以及
将所述第二定制全景视频流从所述广播设备发送至所述第二观看者客户端设备。
6.根据权利要求1所述的方法,还包括:
将所述视频束帧流至少临时存储在所述编码设备可访问的存储设备中;
将与所述视频束帧流相关联的分帧信息从所述存储设备上传至流式服务器组件;
在所述流式服务器组件处从第一观看者客户端设备接收第一感兴趣区域的识别信息,其中,所述第一感兴趣区域表示所述全景图的至少第一部分;
识别与所述第一感兴趣区域相关联的所述视频束帧流的分帧和至少部分基于所述分帧信息与所述第一感兴趣区域不关联的其他分帧;
将所述视频束帧流中较高分辨率质量的第一分帧流从所述存储设备上传至与所述第一感兴趣区域相关联的分帧的流式服务器组件;
将所述视频束帧流中较低的分辨率质量的第二分帧流从所述存储设备上传至与所述第一感兴趣区域不关联的其他分帧的流式服务器组件;
将所述第一分帧流和所述第二分帧流进行组合以形成第一定制全景视频流;以及
将所述第一定制全景视频流从所述流式服务器组件发送至所述第一观看者客户端设备。
7.根据权利要求6所述的方法,还包括:
在所述流式服务器组件处从第二观看者客户端设备接收第二感兴趣区域的识别信息,其中,所述第二感兴趣区域表示所述全景图的至少第二部分;
识别与所述第二感兴趣区域相关联的所述视频束帧流的分帧和至少部分基于所述分帧信息与所述第二感兴趣区域不关联的其他分帧;
将所述视频束帧流中较高分辨率质量的第三分帧流从所述存储设备上传至与所述第二感兴趣区域相关联的分帧的流式服务器组件;
将所述视频束帧流中较低的分辨率质量的第四分帧流从所述存储设备上传至与所述第二感兴趣区域不关联的其他分帧的流式服务器组件;
将所述第三分帧流和所述第四分帧流进行组合以形成第二定制全景视频流;以及
将所述第二定制全景视频流从所述流式服务器组件发送至所述第二观看者客户端设备。
8.根据权利要求1所述的方法,还包括:
将所述视频束帧流从所述编码设备发送至广播设备;
将所述视频束帧流至少临时存储在所述广播设备可访问的存储设备中;
至少每当感兴趣区域改变时,在所述广播设备处从观看者客户端设备周期性地接收感兴趣区域的识别信息,其中,所述观看者客户端设备被配置为允许所述感兴趣区域响应于在所述观看者客户端设备处与显示在所述观看者客户端设备上的流式视频相关联的用户动作而动态地改变,其中,所述感兴趣区域表示所述全景图的至少一部分;
动态地识别与感兴趣区域相关联的视频束帧流的分帧和响应于对所述感兴趣区域的动态改变与所述感兴趣区域不关联的其他分帧;
响应于对所述感兴趣区域的动态改变,针对与第一感兴趣区域相关联的分帧动态地选择所述视频束帧流中较高的分辨率质量的第一分帧流;
响应于对所述感兴趣区域的动态改变,针对与所述第一感兴趣区域不关联的分帧动态地选择所述视频束帧流中较低的分辨率质量的第二分帧流;
将所述第一分帧流和所述第二分帧流动态地组合以形成响应于对所述感兴趣区域的动态改变动态地调整的定制全景视频流;以及
将所述定制全景视频流从所述广播设备发送至所述观看者客户端设备。
9.根据权利要求1所述的方法,还包括:
将所述视频束帧流至少临时存储在所述编码设备可访问的存储设备中;
将与所述视频束帧流相关联的分帧信息从所述存储设备上传至流式服务器组件;
至少每当感兴趣区域改变时,在所述流式服务器组件处从观看者客户端设备周期性地接收感兴趣区域的识别信息,其中,所述观看者客户端设备被配置为允许所述感兴趣区域响应于在所述观看者客户端设备处与显示在所述观看者客户端设备上的流式视频相关联的用户动作而动态地改变,其中,所述感兴趣区域表示所述全景图的至少一部分;
响应于对所述感兴趣区域的动态改变动态地识别与所述感兴趣区域相关联的视频束帧流的分帧和至少部分基于所述分帧信息与所述感兴趣区域不关联的其他分帧;
响应于对所述感兴趣区域的动态改变,将所述视频束帧流中的较高的分辨率质量的第一分帧流从所述存储设备动态地上传至与所述感兴趣区域相关联的分帧的所述流式服务器组件;
响应于对所述感兴趣区域的动态改变,将所述视频束帧流中的较低的分辨率质量的第二分帧流从所述存储设备动态地上传至与所述感兴趣区域不关联的其他分帧的所述流式服务器组件;
将所述第一分帧流和所述第二分帧流动态地组合以形成响应于对所述感兴趣区域的动态改变动态地调整的定制全景视频流;以及
将所述定制全景视频流从所述流式服务器组件发送至所述观看者客户端设备。
10.根据权利要求1的方法,其中,与所述全景图相关联的水平维度为180度并且与所述全景图相关联的所述垂直维度为90度。
11.根据权利要求1的方法,其中,由拼接的全景帧的序列形成的全景视频流是由一系列拼接的球形投影帧形成的球形投影视频流,与所述全景图相关联的水平维度为360度,并且与所述全景图相关联的所述垂直维度为180度。
12.根据权利要求1的方法,其中,所述拼接全景帧所分成的片段由预定配置定义,使得每个片段能够由其在拼接的全景帧内的位置识别并且使得所述预定配置与所述全景视频流逐帧一致;
其中,所述拼接的全景帧的片段的预定配置以允许在所述拼接的全景帧中的不同的位置的分帧具有不同的形状和不同尺寸的方式包括每个分帧的形状和尺寸参数。
13.根据权利要求1所述的方法,其中,每个分帧的多个比特率包括至少三个比特率,使得每个分帧流的多个分辨率质量包括高分辨率质量、至少一个中等分辨率质量、和低分辨率质量。
14.一种用于流传输全景视频的装置,包括:
编码设备,被配置为接收由一系列拼接的全景帧形成的全景视频流,其中,每个拼接的全景帧表示由相对于中央观看点的水平和垂直维度定义的全景图;
其中,所述编码设备被配置为将所述拼接的全景帧分成片段以产生多个分帧和与所述全景视频流的分帧部分有关的对应多个分帧流;
其中,所述编码设备被配置为以多个比特率为每个分帧流的所述多个分帧进行编码以为每个分帧流形成多个分辨率质量,其中,所述多个分辨率质量的范围为从最高的分辨率质量到最低的分辨率质量;
其中,所述编码设备被配置为将每一个所述多个分辨率质量的所述多个分帧流进行组合以形成视频束帧流。
15.根据权利要求14所述的装置,进一步包括:
一个或多个视频捕获设备,被配置为获取来自多个摄像机的视频馈送,其中,与所述多个摄像机相关联的视场为使得所述视场的组合提供与所述全景图相关联的水平和垂直维度的覆盖范围和所述中央观看点涉及球体的中心点的球体的相应内表面视图的覆盖范围;
拼接设备;
其中,所述一个或多个视频捕获设备被配置为向所述拼接设备发送所述捕获视频馈送;
其中,所述拼接设备被配置为将所述捕获视频馈送的帧转换为所述拼接的全景帧;
其中,所述拼接设备被配置为向所述编码设备发送具有所述拼接全景帧的全景视频流。
16.根据权利要求14所述的装置,还包括:
文件上传设备被配置为从存储设备上传与先前拼接且记录的全景视频流相关联的一个或多个电子文件,其中,所述先前拼接且记录的全景视频包括所述全景视频流的所述拼接全景帧;
其中,所述文件上传设备被配置为处理所述一个或多个电子文件以形成所述全景视频流;
其中,所述文件上传设备被配置为向所述编码设备发送所述全景视频流。
17.根据权利要求14所述的装置,还包括:
广播设备;
其中,所述编码设备被配置为向所述广播设备发送所述视频束帧流;
其中,所述广播设备被配置为将所述视频束帧流至少临时存储在存储设备中;
其中,所述广播设备被配置为从第一观看者客户端设备接收第一感兴趣区域的识别信息,其中,所述第一感兴趣区域表示所述全景图的至少第一部分;
其中,所述广播设备被配置为识别与所述第一感兴趣区域相关联的所述视频束帧流的分帧和与所述第一感兴趣区域不关联的其他分帧;
其中,所述广播设备被配置为针对与所述第一感兴趣区域相关联的分帧选择所述视频束帧流中较高的分辨率质量的第一分帧流;
其中,所述广播设备被配置为针对与所述第一感兴趣区域不关联的分帧选择视频束帧流中较低的分辨率质量的第二分帧流;
其中,所述广播设备被配置为将所述第一分帧流和所述第二分帧流组合以形成第一定制全景视频流;
其中,所述广播设备被配置为向所述第一观看者客户端设备发送所述第一定制全景视频流。
18.根据权利要求14所述的装置,还包括:
流式服务器组件;
其中,所述编码设备被配置为将所述视频束帧流至少临时存储在存储设备中;
其中,所述流式服务器组件被配置为从所述存储设备上传与所述视频束帧流相关联的分帧信息;
其中,所述流式服务器组件被配置为从第一观看者客户端设备接收第一感兴趣区域的识别信息,其中,所述第一感兴趣区域表示所述全景图的至少第一部分;
其中,所述流式服务器组件被配置为识别与所述第一感兴趣区域相关联的视频束帧流的分帧和至少部分基于所述分帧信息与第一感兴趣区域不关联的其他分帧;
其中,所述流式服务器组件被配置为从与所述第一感兴趣区域相关联的分帧的存储设备上传所述视频束帧流中较高的分辨率质量的第一分帧流;
其中,所述流式服务器组件被配置为从与所述第一感兴趣区域不关联的其他分帧的存储设备上传所述视频束帧流中较低的分辨率质量的第二分帧流;
其中,所述流式服务器组件被配置为将所述第一分帧流和所述第二分帧流组合以形成第一定制全景视频流;
其中,所述流式服务器组件被配置为向所述第一观看者客户端设备发送所述第一定制全景视频流。
19.根据权利要求14所述的装置,还包括:
广播设备;
其中,所述编码设备被配置为向所述广播设备发送所述视频束帧流;
其中,所述广播设备被配置为将所述视频束帧流至少临时存储在存储设备中;
其中,所述广播设备被配置为至少每当感兴趣区域改变时从观看者客户端设备周期性地接收感兴趣区域的识别信息,其中,所述观看者客户端设备被配置为允许所述感兴趣区域响应于在所述观看者客户端设备处与显示在所述观看者客户端设备上的流式视频相关联的用户动作而动态地改变,其中,所述感兴趣区域表示所述全景图的至少一部分;
其中,所述广播设备被配置为响应于对所述感兴趣区域的动态改变动态地识别与所述感兴趣区域相关联的所述视频束帧流的分帧和与所述感兴趣区域不关联的其他分帧;
其中,所述广播设备被配置为响应于对所述感兴趣区域的动态改变,针对与第一感兴趣区域相关联的分帧动态地选择所述视频束帧流中较高分辨率质量的第一分帧流;
其中,所述广播设备被配置为响应于对所述感兴趣区域的动态改变,针对与所述第一感兴趣区域不关联的分帧动态地选择所述视频束帧流中较低的分辨率质量的第二分帧流;
其中,所述广播设备被配置为将所述第一分帧流和所述第二分帧流动态地组合以形成响应于对所述感兴趣区域的动态改变动态地调整的定制全景视频流;
其中,所述广播设备被配置为向所述观看者客户端设备发送所述定制全景视频流。
20.根据权利要求14所述的装置,还包括:
流式服务器组件;
其中,所述编码设备被配置为将所述视频束帧流至少临时存储在存储设备中;
其中,所述流式服务器组件被配置为从所述存储设备上传与所述视频束帧流相关联的分帧信息;
其中,所述流式服务器组件被配置为至少每当感兴趣区域改变时从观看者客户端设备周期性地接收感兴趣区域的识别信息,其中,所述观看者客户端设备被配置为允许所述感兴趣区域响应于在所述观看者客户端设备处与显示在所述观看者客户端设备上的流式视频相关联的用户动作而动态地改变,其中,所述感兴趣区域表示所述全景图的至少一部分;
其中,所述流式服务器组件被配置为响应于对所述感兴趣区域的动态改变动态地识别与所述感兴趣区域相关联的视频束帧流的分帧和至少部分基于所述分帧信息与所述感兴趣区域不关联的其他分帧;
其中,所述流式服务器组件被配置为响应于对所述感兴趣区域的动态改变从与所述感兴趣区域相关联的分帧的存储设备动态地上传所述视频束帧流中较高的分辨率质量的第一分帧流;
其中,所述流式服务器组件被配置为响应于对所述感兴趣区域的动态改变从与所述感兴趣区域不关联的其他分帧的存储设备动态地上传所述视频束帧流中较低的分辨率质量的第二分帧流;
其中,所述流式服务器组件被配置为将所述第一分帧流和所述第二分帧流动态地组合以形成响应于对所述感兴趣区域的动态改变动态地调整的定制全景视频流;
其中,所述流式服务器组件被配置为向所述观看者客户端设备发送所述定制全景视频流。
21.一种存储程序指令的非易失性计算机可读介质,当由至少一个计算机或处理器执行所述程序指令时,使得计算机控制的系统执行流式全景视频的方法,所述方法包括:
在编码设备处接收由一系列拼接的全景帧形成的全景视频流,其中,每个拼接的全景帧表示相对于中央观看点水平和垂直维度限定的全景图;
将所述拼接的全景帧分成片段以产生多个分帧和与所述全景视频流的分帧部分有关的对应多个分帧流;
以多个比特率编码每个分帧流的所述多个分帧以为每个分帧流形成多个分辨率质量,其中,所述多个分辨率质量的范围为从最高的分辨率质量到最低的分辨率质量;以及
将每一个所述多个分辨率质量的多个分帧流进行组合以形成视频束帧流。
CN201780045984.7A 2016-06-02 2017-06-01 用于流传输全景视频的方法和装置 Pending CN109792544A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662344543P 2016-06-02 2016-06-02
US62/344,543 2016-06-02
PCT/US2017/035478 WO2017210444A1 (en) 2016-06-02 2017-06-01 Method and apparatus for streaming panoramic video

Publications (1)

Publication Number Publication Date
CN109792544A true CN109792544A (zh) 2019-05-21

Family

ID=59067910

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780045984.7A Pending CN109792544A (zh) 2016-06-02 2017-06-01 用于流传输全景视频的方法和装置

Country Status (3)

Country Link
US (1) US11153615B2 (zh)
CN (1) CN109792544A (zh)
WO (1) WO2017210444A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112468806A (zh) * 2020-11-12 2021-03-09 中山大学 一种用于云vr平台的全景视频传输优化方法
CN114697301A (zh) * 2022-04-11 2022-07-01 北京国基科技股份有限公司 一种视频流传输方法及装置

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11287653B2 (en) 2015-09-09 2022-03-29 Vantrix Corporation Method and system for selective content processing based on a panoramic camera and a virtual-reality headset
US10419770B2 (en) 2015-09-09 2019-09-17 Vantrix Corporation Method and system for panoramic multimedia streaming
US10694249B2 (en) * 2015-09-09 2020-06-23 Vantrix Corporation Method and system for selective content processing based on a panoramic camera and a virtual-reality headset
US11108670B2 (en) 2015-09-09 2021-08-31 Vantrix Corporation Streaming network adapted to content selection
CN106101847A (zh) * 2016-07-12 2016-11-09 三星电子(中国)研发中心 全景视频交互传输的方法和系统
CN108289228B (zh) * 2017-01-09 2020-08-28 阿里巴巴集团控股有限公司 一种全景视频转码方法、装置和设备
CN108650460B (zh) * 2018-05-10 2021-03-30 深圳视点创新科技有限公司 服务器、全景视频的存储和传输方法和计算机存储介质
US10779014B2 (en) 2018-10-18 2020-09-15 At&T Intellectual Property I, L.P. Tile scheduler for viewport-adaptive panoramic video streaming
US11080821B2 (en) * 2019-03-28 2021-08-03 United States Of America As Represented By The Secretary Of The Navy Automated benthic ecology system and method for stereoscopic imagery generation
CN113411557B (zh) * 2021-05-11 2022-03-18 复旦大学 适用于蜂窝网络的vr全景视频优化传输方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101252687A (zh) * 2008-03-20 2008-08-27 上海交通大学 实现多通道联合的感兴趣区域视频编码及传输的方法
FR2927758A1 (fr) * 2008-02-15 2009-08-21 Ateme Sa Sa Procede et dispositif de codage-decodage d'images video successives selon un flux video principal en pleine resolution et selon un flux video secondaire en qualite reduite
CN101841694A (zh) * 2009-03-19 2010-09-22 新奥特硅谷视频技术有限责任公司 一种法庭庭审全景视频图像转播方法
CN104735464A (zh) * 2015-03-31 2015-06-24 华为技术有限公司 一种全景视频交互传输方法、服务器和客户端
US20150199366A1 (en) * 2014-01-15 2015-07-16 Avigilon Corporation Storage management of data streamed from a video source device
US20150201197A1 (en) * 2014-01-15 2015-07-16 Avigilon Corporation Streaming multiple encodings with virtual stream identifiers
CN104904225A (zh) * 2012-10-12 2015-09-09 佳能株式会社 用于对视频数据进行流传输的方法和相应装置
CN105141920A (zh) * 2015-09-01 2015-12-09 电子科技大学 一种360度全景视频拼接系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100050221A1 (en) * 2008-06-20 2010-02-25 Mccutchen David J Image Delivery System with Image Quality Varying with Frame Rate
US9313242B2 (en) 2012-08-21 2016-04-12 Skybox Imaging, Inc. Multi-resolution pyramid for georeferenced video
US9313510B2 (en) * 2012-12-31 2016-04-12 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
EP2824884A1 (en) * 2013-07-12 2015-01-14 Alcatel Lucent A video client for smooth display of a panoramic video
US9973692B2 (en) * 2013-10-03 2018-05-15 Flir Systems, Inc. Situational awareness by compressed display of panoramic views
US10491711B2 (en) 2015-09-10 2019-11-26 EEVO, Inc. Adaptive streaming of virtual reality data

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2927758A1 (fr) * 2008-02-15 2009-08-21 Ateme Sa Sa Procede et dispositif de codage-decodage d'images video successives selon un flux video principal en pleine resolution et selon un flux video secondaire en qualite reduite
CN101252687A (zh) * 2008-03-20 2008-08-27 上海交通大学 实现多通道联合的感兴趣区域视频编码及传输的方法
CN101841694A (zh) * 2009-03-19 2010-09-22 新奥特硅谷视频技术有限责任公司 一种法庭庭审全景视频图像转播方法
CN104904225A (zh) * 2012-10-12 2015-09-09 佳能株式会社 用于对视频数据进行流传输的方法和相应装置
US20150199366A1 (en) * 2014-01-15 2015-07-16 Avigilon Corporation Storage management of data streamed from a video source device
US20150201197A1 (en) * 2014-01-15 2015-07-16 Avigilon Corporation Streaming multiple encodings with virtual stream identifiers
CN104735464A (zh) * 2015-03-31 2015-06-24 华为技术有限公司 一种全景视频交互传输方法、服务器和客户端
CN105141920A (zh) * 2015-09-01 2015-12-09 电子科技大学 一种360度全景视频拼接系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112468806A (zh) * 2020-11-12 2021-03-09 中山大学 一种用于云vr平台的全景视频传输优化方法
CN114697301A (zh) * 2022-04-11 2022-07-01 北京国基科技股份有限公司 一种视频流传输方法及装置
CN114697301B (zh) * 2022-04-11 2023-10-20 北京国基科技股份有限公司 一种视频流传输方法及装置

Also Published As

Publication number Publication date
US11153615B2 (en) 2021-10-19
US20190297363A1 (en) 2019-09-26
WO2017210444A1 (en) 2017-12-07

Similar Documents

Publication Publication Date Title
CN109792544A (zh) 用于流传输全景视频的方法和装置
Fan et al. A survey on 360 video streaming: Acquisition, transmission, and display
US11336881B2 (en) Methods and apparatus for processing content based on viewing information and/or communicating content
US20210006770A1 (en) Methods and apparatus for receiving and/or using reduced resolution images
US10491711B2 (en) Adaptive streaming of virtual reality data
US20160150212A1 (en) Live selective adaptive bandwidth
US20190158933A1 (en) Method, device, and computer program for improving streaming of virtual reality media content
US20150124048A1 (en) Switchable multiple video track platform
KR20190022851A (ko) 콘텐츠를 제공 및 디스플레이하기 위한 장치 및 방법
CN108965929B (zh) 一种视频信息的呈现方法、呈现视频信息的客户端和装置
CN108810567A (zh) 一种音频与视频视角匹配的方法、客户端和服务器
KR101944601B1 (ko) 기간들에 걸쳐 오브젝트들을 식별하기 위한 방법 및 이에 대응하는 디바이스
CN109862385B (zh) 直播的方法、装置、计算机可读存储介质及终端设备
US20180227504A1 (en) Switchable multiple video track platform
US11388455B2 (en) Method and apparatus for morphing multiple video streams into single video stream
JP2022545880A (ja) コードストリームの処理方法、装置、第1端末、第2端末及び記憶媒体
RU2583755C2 (ru) Способ съемки и отображения зрелищного мероприятия и пользовательский интерфейс для осуществления способа
CN112203101B (zh) 一种远程视频直播方法、装置及电子设备
US20220256132A1 (en) Devices and methods for generating and rendering immersive video
WO2018222974A1 (en) Method and apparatus for morphing multiple video streams into single video stream

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190521