CN112789854B - 用于在暂停期间在360º沉浸式视频中提供质量控制的系统和方法 - Google Patents

用于在暂停期间在360º沉浸式视频中提供质量控制的系统和方法 Download PDF

Info

Publication number
CN112789854B
CN112789854B CN201980065088.6A CN201980065088A CN112789854B CN 112789854 B CN112789854 B CN 112789854B CN 201980065088 A CN201980065088 A CN 201980065088A CN 112789854 B CN112789854 B CN 112789854B
Authority
CN
China
Prior art keywords
video
frame
quality
frames
client device
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
Application number
CN201980065088.6A
Other languages
English (en)
Other versions
CN112789854A (zh
Inventor
C·菲利普斯
R·H·福斯曼
S·柯恩
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.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
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 Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Publication of CN112789854A publication Critical patent/CN112789854A/zh
Application granted granted Critical
Publication of CN112789854B publication Critical patent/CN112789854B/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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2387Stream processing in response to a playback request from an end-user, e.g. for trick-play
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • H04N13/117Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/162User input
    • 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/164Feedback from the receiver or from the transmission channel
    • 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/167Position within a video image, e.g. region of interest [ROI]
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • 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
    • 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
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • 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/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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4333Processing operations in response to a pause request
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44218Detecting physical presence or behaviour of the user, e.g. using sensors to detect if the user is leaving the room or changes his face expression during a TV program
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一种用于在暂停视频流播会话期间在360º沉浸式视频中提供质量控制的系统和方法,其中取决于用户凝视向量信息,暂停的视频帧可包括多个混合质量的视频贴片。在视频优化节点的暂停控制下,将贴片化视频帧的所有贴片的视频质量均衡化为与在视口中呈现的贴片的质量对应的最高视频质量。在一个实施例中,生成具有在完整的360º沉浸式视频帧中具有相同的均衡化视频质量的贴片的自定义替换视频帧(例如,X帧),将它呈现给客户端装置播放器以用于在暂停流播会话时解码并显示,而不是混合质量的视频帧。在另一个实施例中,将基于自定义替换视频帧的静态图像提供给客户端装置以进行显示,而不是混合质量的暂停视频帧。

Description

用于在暂停期间在360º沉浸式视频中提供质量控制的系统和 方法
技术领域
一般来说,本公开涉及通信网络。更特定地,并且不作为任何限制,本公开涉及用于在暂停视频会话期间在360º沉浸式视频(immersive video)中提供质量控制的基于服务器的系统和方法。
背景技术
虚拟现实的引入,除了改进几种现有技术之外,还将新的应用带到了前沿。在360º沉浸式视频(又不同地称为全景视频、360度视频或360视频等)的情况下,可看到对现有技术的一个改进。
360度视频为用户提供了沉浸式“身临其境”体验。虚拟现实的增加的沉浸感可很容易地应用到视频中,以便提供比投影在平坦表面上的传统视频更优越的用户体验。随着诸如头戴式显示器(HMD)或头戴式耳机(headset)的全向捕获系统和交互式显示系统的出现,可导航的360度视频系统也越来越普及。然而,内容提供商一直与带宽受约束的网络环境竞争以高效的方式交付(deliver)360度视频内容,以便确保令人满意的观看体验,这是因为360度视频资产是超高分辨率的球面视频,此类视频包含要求大量数据的场景的全向视图。
目前的360视频头戴式耳机是2K分辨率的显示装置,每只眼睛覆盖1K。为了在头戴式耳机中获得最佳的质量,典型的网络要求向该装置发送8K 360视频流。已知,视频压缩允许通过减少用于表示图片的位数来高效地利用媒体流播网络中的带宽。尽管视频压缩技术的进步快速增长,但是在360视频交付和显示领域中,关于在如今的网络架构(networkarchitecture)中高效地管理带宽仍然存在一些空白,从而要求进一步创新,如将在下文阐述的那样。
发明内容
本专利公开广泛地涉及用于实现除其它事情以外还包括在暂停视频流播会话期间在360º沉浸式视频中提供质量控制的优化的360º沉浸式视频观看体验的系统、方法、设备、装置、和相关联的非暂时性计算机可读介质以及网络架构,其中取决于用户凝视向量信息,暂停的视频帧可包括多个混合质量的视频贴片(mixed quality video tile)。在视频优化节点的暂停控制下,将暂停的视频帧的所有贴片的视频质量均衡化为与在客户端装置的视口中呈现的贴片的质量对应的最高视频质量。在一个实施例中,生成具有在完整的360º沉浸式视频帧中具有相同的均衡化视频质量的贴片的自定义替换视频帧,其中将自定义替换视频帧编码为X帧,该X帧具有预测性编码的(P)帧的切片报头并且包括选择成具有等于在基于从客户端装置接收的用户凝视向量信息的视口中呈现的特定视频资产的最高视频质量位速率表示的视频质量的只内编码的数据(I块)。在一种布置中,将自定义替换视频帧提供给客户端装置播放器,以用于在流播会话处于暂停模式时解码并显示,而不是混合质量的视频帧。在另一种布置中,将基于自定义替换视频帧的静态图像(still image)提供给客户端装置以进行显示,而不是混合质量的暂停的视频帧。在仍有的进一步的实施例中,可在暂停模式期间组装高质量贴片的未来视频帧并将它们提供给客户端装置以便在那里进行预先缓冲,在恢复流播会话时,可播出(play out)这些视频帧。
在一方面,公开一种在视频优化节点处操作的用于在暂停360度沉浸式视频会话时控制视频质量的方法的实施例。要求保护的方法除其它事情以外还包括从用户的客户端装置接收暂停播放正在360度沉浸式视频会话中流播的特定视频资产的请求,特定视频资产包括多个视频帧,并且每个视频帧包括投影在供用户在与客户端装置相关联的显示装置中观看的三维(3D)显示环境上的贴片的阵列。可关于当前显示并存储在客户端装置的视频解码缓冲器中的混合质量的贴片化视频帧(tiled video frame)生成暂停特定视频资产的请求,其中请求包括帧号、与正在暂停的贴片化视频帧相关联的时间码信息以及360度沉浸式视频会话的会话标识符(ID)。生成与暂停的视频帧对应的自定义替换视频帧,其中将自定义替换视频帧编码为X帧,该X帧具有预测性编码的(P)帧的切片报头并且包括选择成具有等于在基于从客户端装置接收的用户凝视向量信息的视口中正在呈现的特定视频资产的最高视频质量位速率表示的视频质量的只内编码的数据块(I块)。在一个实施例中,在暂停360度沉浸式视频会话时,将自定义替换视频帧提供给客户端装置以进行显示,而不是暂停的贴片化视频帧。
在一个变型中,如果视频解码缓冲器包括在暂停的贴片化视频帧之后的任何混合质量的视频帧,则可从视频解码缓冲器转储清除(flush)后续帧,然后用在整个阵列中具有HQ贴片的后续替换视频帧(重新)填充视频解码缓冲器,而不考虑视口。在此类实施例中,每个后续替换视频帧包括具有至少等于与暂停特定视频资产时的贴片化视频帧的视口对应的贴片的视频质量的视频质量的视频贴片的完整阵列。在另一个变型中,在暂停视频流播会话时,只要没有溢出,便可将多个替换视频帧下载到视频解码缓冲器中。在另一个变型中,如果确定视频解码缓冲器充满,则在暂停视频流播会话时,可继续将附加的替换视频帧下载到一个或多个辅助或备份的缓冲器(在一些实施例中称为暂停缓冲器),直到一个/多个暂停缓冲器充满为止。当从用户接收到重放恢复请求时,首先播出(一个或多个)暂停缓冲器中的视频贴片数据,然后播出视频解码缓冲器中的视频贴片数据。当接近缓冲器耗尽状况时,可在恢复重放之后的某个时间点开始流播视口优化的混合质量贴片(例如,基于用户凝视向量信息)。
在另一个实施例中,可将与自定义替换视频帧对应的静态图像(例如,基于JPEG或其它图像文件交换格式)提供给客户端装置以进行显示。在一种布置中,不转储清除客户端装置的视频解码缓冲器,并且在恢复时,可从具有之前下载的具有混合质量贴片的帧的视频解码缓冲器开始播出。
在另一方面,公开配置成执行如本文中所阐述的关于暂停360º沉浸式视频流播会话的以客户端为中心或以网络为中心的任何过程的设备、系统或组件的实施例。在示例实现中,沉浸式视频流播会话可涉及基于高效视频编码(HEVC)H.265压缩、开放媒体联盟(AOMedia)视频1(AV1)压缩和H.266/通用视频编码(VVC)压缩中的至少一种压缩作为具有不同视频质量的贴片的多个贴片编码的位速率表示提供的视频资产。在一种编码方案中,可将位速率表示生成为相位编码的(phase-encoded)位流。在另一种编码方案中,可将位速率表示生成为块内编码的位流。在仍有的进一步的变型中,可通过跟踪用于显示特定沉浸式视频资产的与客户端装置相关联的用户的头戴式耳机的定向来获得与视频流播会话相关联的用户凝视向量信息。在另一种变型中,当正在显示特定沉浸式视频资产时,可通过跟踪用户眼球相对于3D显示环境的不同部分的移动来获得凝视向量信息。不管凝视向量是如何获得的,它们都可包括但不限于归一化/非归一化的笛卡尔坐标向量、归一化/非归一化的球面坐标向量、或在合适的3D几何坐标系中定义的向量等。
在仍有的进一步的方面,公开非暂时性有形计算机可读介质或分布式介质的一个或多个实施例,它包含存储在它上面的计算机可执行程序指令或代码部分,这些程序指令或代码部分在由网络节点、设备、系统、网络元件、订户装置等的处理器实体执行时在经过必要修改后用于执行本发明的方法的一个或多个实施例。各种实施例的进一步特征如在从属权利要求中所要求保护的那样。
本文中的实施例有利地提供了用于促进在暂停的视频帧中跨整个360度视野的均匀的高质量图片的暂停控制优化方案,这可使得用户能够享受更好的视频体验,而不必忍受由于在视线外区域中的较低质量贴片化引起的较差的视觉呈现。由于可将暂停时间(它可包括短持续时间或长持续时间)用于下载更高质量的视频帧,所以本发明的实施例可配置成将暂停时间用于下载跟随在暂停帧之后的后续帧,或者短片段或者整个视频资产。取决于暂停时的带宽状况,在某些示例实施例中,可在暂停时间期间下载甚至更高质量的帧,以便在恢复重放时实现增强的观看体验。
在附加和/或相关的方面,可有利地用基于凝视向量信息和分配的带宽为更高质量视口优化的贴片的子集来组装360º沉浸式视频资产的贴片化视频帧。因为对这些帧进行选择性地视口优化,所以即使在带宽受约束的环境中也可能传输高质量的复用流,而不牺牲观看体验。可有利地配置示例实施例,使得将总是在直视(direct view)时交付最高质量的贴片,其中跨远离直接视野的多个区域具有受控的降级质量,其中在与用户正看的位置完全相反方向的区域中提供最低质量。因此,当将流交付给装置时,用户总是在他们正在直接看的区域中得到最高的视频QoE。此外,当用户移动他们的头部时,由一些示例实施例促进的mid-GOP切换允许以最小的时延尽可能快速地接收高质量的贴片。利用为了逐步刷新而编码的贴片,当用户改变他们的视野时,示例实施例可进一步减少视频的时延,这是因为可通过在要交付的下一个帧的初始升级中发送若干个高质量贴片来使视频缓冲器的大小最小化。在接下来的若干个帧的过程中,示例实施例逐步增加剩余贴片的质量,直到基于当前视野和允许的带宽达到贴片的质量为止。
鉴于以下描述和附图,实施例的附加好处和优点将显而易见。
附图说明
在附图的图中作为示例而非作为限制示出本公开的实施例,图中类似参考指示类似要素。应注意,本公开中对“一”或“一个”实施例的不同提及不一定是相同的实施例,并且此类提及可能意味着至少一个。此外,当结合实施例描述特定特征、结构或特性时,认为结合其它实施例来实现此类特征、结构或特性在本领域技术人员的知识范围内,而不管是否明确描述。
附图并入到本说明书中并形成本说明书的一部分,以便说明本公开的一个或多个示例性实施例。通过结合随附权利要求的以下详细描述并参考随附附图,将理解本公开的各种优点和特征,图中:
图1描绘可在其中实践本发明的一个或多个实施例以便通过各种网络配置提供360º沉浸式视频的广义示例网络环境;
图2描绘根据示例实施例的包括如图1中所示的环境的一部分的示例网络架构,以促进360º沉浸式视频的优化贴片编码;
图3描绘可作为配置成在图2的网络架构的布置中操作的媒体准备/或处理系统的一部分提供的示例贴片编码器的框图;
图4A-4C示出在示例编码器布置中按每个帧包含一个或多个切片和/或贴片的示例视频帧;
图5是说明根据本发明的一个或多个实施例的用于促进优化的360º沉浸式视频的媒体准备/处理方法的各种框、步骤和/或动作的流程图,在一种或多种布置中,这些框、步骤和/或动作可与或者不与本公开的附加流程图的框、步骤和/或动作(重新)组合;
图6说明根据本发明的一个或多个实施例的涉及可作为图5的示例媒体准备/处理方法的一部分实现的相位化编码(Phased Encoding)(PE)方案或块内编码(BIE)方案的示例编码布置的各种框、步骤和/或动作;
图7是说明根据本发明的示例实施例的BIE方案的流程图;
图8A是说明根据本发明的示例实施例的用于在贴片化编码布置中配置BIE方案的过程的流程图;
图8B是说明根据本发明的示例实施例的在示例BIE方案中的附加框、步骤和/或动作的流程图;
图9是说明根据本发明的示例实施例的PE方案的流程图;
图10A是说明根据本发明的示例实施例的用于在贴片化编码布置中配置PE方案的过程的流程图;
图10B是说明根据本发明的示例实施例的在示例PE方案中的附加框、步骤和/或动作的流程图;
图11描绘在示例实施例中由基于BIE的贴片化编码器系统生成的具有不同质量的多个编码的位流;
图12描绘在示例实施例中由基于PE的贴片化编码器系统生成的对于特定位速率表示具有不同相位的多个编码的位流;
图13A说明根据本发明的实施例的涉及基于BIE的贴片化流的示例贴片拼接方案(example tile stitching scheme)的各种框、步骤和/或动作;
图13B说明根据本发明的实施例的涉及基于PE的贴片化流的示例贴片拼接方案的各种框、步骤和/或动作;
图13C是说明根据本发明的实施例的关于示例贴片拼接方案的附加框、步骤和/或动作的流程图;
图14说明根据本发明的示例实施例的包括从具有不同质量或QP的编码的位流中选择的贴片的360º视频帧;
图15A和15B是说明根据本发明的一个或多个实施例的用于基于与360º沉浸式视频观看环境中的用户凝视相关联的权重促进优化的贴片选择的方法的各种框、步骤和/或动作的流程图,在一种或多种布置中,这些框、步骤和/或动作可与或者不与本公开的附加流程图的框、步骤和/或动作(重新)组合;
图16A和16B说明用于促进确定用户的凝视方向和贴片编码帧中的贴片位置之间的角距的示例几何布置;
图16C说明出于本发明的一个或多个实施例的目的的示例360º沉浸式视频观看环境;
图17A是说明根据本发明的示例实施例的关于示例360º沉浸式视频优化过程的附加框、步骤和/或动作的流程图;
图17B是说明根据本发明的示例实施例的关于示例360º沉浸式视频优化过程的进一步方面的附加框、步骤和/或动作的流程图;
图18A描绘具有贴片位置的示例视频帧,所述贴片位置具有根据本发明的实施例确定的不同权重;
图18B描绘具有不同编码的视口贴片的帧的示例装置缓冲器;
图18C和18D说明其中基于用户凝视方向分发贴片质量的3D观看空间;
图19是说明根据本发明的一个或多个实施例的贴片选择和带宽退火过程(bandwidth annealing process)的各种框、步骤和/或动作的流程图,这些框、步骤和/或动作可在媒体准备/处理方法的一种或多种布置中与或不与本公开的附加流程图的框、步骤和/或动作(重新)组合;
图20是说明根据本发明的实施例的关于示例贴片选择和带宽退火过程的附加框、步骤和/或动作的流程图;
图21A和21B是说明根据本发明的示例实施例的关于贴片选择和带宽退火过程的进一步方面的附加框、步骤和/或动作的流程图;
图22说明根据本发明的示例实施例的用于使用贴片选择和带宽退火布置的传送缓冲器模型配置;
图23描绘出于本专利公开的实施例的目的的一种布置,其中可将UE装置配置成执行360º沉浸式视频优化的某些方面;
图24描绘根据本发明的实施例的可(重新)配置和/或(重新)布置为平台、节点或元件以实现360º沉浸式视频处理、准备和优化的一个或多个方面的设备的框图;
图25描绘出于本专利公开的实施例的目的具有附加细节的示例UE装置的框图;
图26A描绘根据本发明的实施例的示例网络环境,其中可关于处于暂停的360º沉浸式视频会话实现基于服务器的视频质量优化方案;
图26B描绘根据本发明的实施例的示例暂停控制模块或子系统,该示例暂停控制模块或子系统可与配置成在图26A中所示的网络环境中操作的视频优化节点相关联;
图27A-27D描绘根据本发明的一个或多个实施例的与360º视频优化节点/服务器和示例UE/客户端装置之间的消息流相关的各种消息流程图;
图28A-28D描绘说明在360º沉浸式视频会话处于暂停模式时与基于服务器的视频质量优化方案有关的可根据本发明的一种类别的实施例(重新)组合的各种框、步骤和/或动作的流程图;
图29A和29B描绘说明在360º沉浸式视频会话处于暂停模式时与基于服务器的视频质量优化方案有关的可根据本发明的另一种类别的实施例(重新)组合的各种框、步骤和/或动作的流程图;
图30A是说明根据一个实施例的关于用于促进暂停控制的服务器过程的附加细节的流程图;
图30B是说明根据一个实施例的关于用于促进暂停控制的客户端装置过程的附加细节的流程图;
图31A是说明根据一个实施例的关于用于促进恢复控制的服务器过程的附加细节的流程图;
图31B是说明根据一个实施例的关于用于促进恢复控制的客户端装置过程的附加细节的流程图;
图32A是说明根据另一个实施例的关于用于促进暂停控制的服务器过程的附加细节的流程图;
图32B是说明根据另一个实施例的关于用于促进暂停控制的客户端装置过程的附加细节的流程图;
图33A是说明根据另一个实施例的关于用于促进恢复控制的服务器过程的附加细节的流程图;
图33B是说明根据另一个实施例的关于用于促进恢复控制的客户端装置过程的附加细节的流程图;
图34A-34C描绘在本发明的示例实施例中具有混合质量的视频或均衡化的高质量贴片的视频帧和客户端视频解码缓冲器状态;
图35-39描绘根据本发明的一个或多个实施例的说明关于暂停时间期间的缓冲帧的进一步细节的附加流程图;以及
图40是出于本发明的示例实施例的目的的基于高级服务器的视频质量优化方案的流程图,该流程图可与本专利公开的一个或多个流程图组合或重新组合。
具体实施方式
在本文中对本发明的实施例的描述中,提供了诸如组件和/或方法的示例的众多具体细节,以提供对本发明的实施例的透彻理解。然而,相关领域技术人员将认识到,在没有具体细节中的一个或多个的情况下,或者在其它设备、系统、组装件、方法、组件、材料、部件和/或类似事物的情况下,可实践本发明的实施例。在其它实例中,没有具体示出或详细描述公知的结构、材料或操作,以免模糊本发明的实施例的方面。因此,本领域技术人员将领会到,在没有此类特定组件的情况下,可实践本公开的实施例。应进一步认识到,借助于本文中阐述的详细描述,并且参考附图,本领域技术人员将能够在没有过度试验的情况下进行和使用一个或多个实施例。
另外,在以下描述、随附权利要求或两者中,可使用诸如“耦合的”和“连接的”之类的术语以及它们的衍生词。应理解,这些术语不一定意在作为彼此的同义词。“耦合的”可用于指示彼此可能或者可能不直接物理或电接触的两个或更多个元件彼此协作或交互。“连接的”可用于指示在彼此耦合的两个或更多个元件之间通信的建立(即,通信关系)。此外,在本文中阐述的一个或多个示例实施例中,一般来说,如果某个元件可被编程以用于执行某个功能或以其它方式在结构上布置成执行该功能,则该元件、组件或模块可配置成执行该功能。
如本文中所使用的,网络元件、节点或子系统可由包括硬件和软件的一台或多台服务网络设备组成,其在通信上互连网络上的其它设备(例如,其它网络元件、终端站等),并且适于或者在虚拟化/非虚拟化的环境中关于多个订户和相关联的用户设备(UE)节点托管一个或多个应用或服务,这些订户和相关联的UE节点可进行操作以在媒体分发网络中接收/消费(consume)内容,在媒体分发网络中,可使用基于流或基于文件的机制来分发和交付媒体内容资产。因此,一些网络元件可部署在无线无线电网络环境中,而其它网络元件可部署在包括或以其它方式涉及合适的内容交付网络(CDN)基础设施的公共分组交换网络基础设施中,CDN基础设施可包括公共、私有或混合CDN。此外,包括本文中阐述的一个或多个实施例的合适的网络元件可涉及地面和/或卫星宽带交付基础设施,例如数字订户线(DSL)网络架构、电缆数据服务接口规范(DOCSIS)兼容的电缆调制解调器终端系统(CMTS)架构、交换式数字视频(SDV)网络架构、混合光纤同轴电缆(HFC)网络架构、合适的卫星接入网架构、或通过蜂窝和/或WiFi连接性的宽带无线接入网络架构。因此,一些网络元件可包括“多服务网络元件”,它们提供对多种基于网络的功能(例如,360º沉浸式A/V媒体准备、交付策略管理、会话控制、QoS策略实施、带宽调度管理、内容提供商优先级策略管理、流播策略管理等)的支持,另外还提供对多种应用服务(例如,包括变化的质量或定义的360º沉浸式视频资产(又称为360度视频资产或简称为360视频资产)的数据和多媒体应用)的支持。示例订户终端站或客户端装置可包括系绳或非系绳的(tethered or untethered)各种装置,这些装置可使用流播和/或基于文件的下载技术来消费或交付媒体内容资产,在某些实施例中,这些技术可涉及某种类型的速率自适应。因此,说明性客户端装置或UE装置可包括配置成除其它事情以外还执行一个或多个客户端应用以便经由例如宽带接入网络使用HTTP、HTTPS、RTP等从一个或多个内容提供商接收、记录、存储、和/或解码/渲染360视频内容、直播媒体(live media)和/或静态/点播媒体(on-demand media)(可包括虚拟现实(VR)媒体、增强现实(AR)媒体、混合现实(MR)媒体)的任何装置。因此,此类客户端装置可包括与3D显示装置等合作操作的基于下一代IP的STB、联网TV、个人/数字录像机(PVR/DVR)、联网媒体投影仪、便携式膝上型计算机、上网本、掌上型电脑、平板电脑、智能电话、多媒体/视频电话、移动/无线用户设备、便携式媒体播放器、便携式游戏系统或控制台(诸如,Wii®、PlayStation 3®等),它们可访问或消费经由合适的媒体分发网络提供的360度内容/服务,其中可根据本文中阐述的一个或多个实施例提供带宽和体验质量(QoE)方案。
本专利公开的一个或多个实施例可使用软件、固件和/或硬件的不同组合来实现。因此,图(例如,流程图)中示出的技术中的一种或多种可使用在一个或多个电子装置或节点(例如,订户客户端装置或终端站、网络元件等)上存储和执行的代码和数据来实现。此类电子装置可使用计算机可读介质来存储和(在内部和/或通过网络与其它电子装置)传递代码和数据,所述计算机可读介质诸如非暂时性计算机可读存储介质(例如,磁盘、光盘、随机存取存储器、只读存储器、闪速存储器装置、相变存储器等)、暂时性计算机可读传输介质(例如,电、光、声或其它形式的传播信号,诸如载波信号、红外信号、数字信号)等。另外,此类网络元件通常可包括耦合到一个或多个其它组件的一个或多个处理器的集合,所述一个或多个其它组件诸如一个或多个存储装置(例如,非暂时性机器可读存储介质)以及(一个或多个)存储数据库、用户输入/输出装置(例如,键盘、触摸屏、指向装置和/或显示器)、以及用于实现信令和/或承载介质传输的网络连接。处理器的集合和其它组件的耦合通常可通过按任何已知的(例如,对称/共享多处理)或迄今未知的架构布置的一个或多个总线和桥接器(又称为总线控制器)。因此,出于实现本公开的一种或多种技术的目的,给定电子装置或网络元件的存储装置或组件可配置成存储用于在该元件、节点或电子装置的一个或多个处理器上执行的代码和/或数据。
现在参考附图并且更特定地参考图1,图1中描绘了广义示例网络环境100,其中可实践本发明的一个或多个实施例,以便提供通过各种配置分发的沉浸式视频,以供一个或多个观看装置消费。示例视频源/捕获系统102说明配置成记录、生成、读取、解码、提供或以其它方式获得可渲染以便在种种客户端装置环境中360º观看的媒体的任何布置,它可包括如在本专利申请中的其它地方提到的利用各种访问/连接技术进行操作的系留或非系留装置、几台独立的设备、订户驻地设备(subscriber premises equipment)、游戏设备、和/或与3D显示装置配对组合操作的设备等。作为说明,可与头戴式显示器(HMD)或头戴式耳机142相关联的计算机/显示器144可配置成解码和渲染可根据如下文将进一步附加详细地阐述的本发明的教导编码和带宽优化的各种类型的360º视频内容,其中头戴式显示器(HMD)或头戴式耳机142又可与诸如平板电脑、智能电话、平板手机、游戏装置等之类的便携式装置(统一示为装置140)等相关联,所有这些装置一般示为客户端装置138。在一个实施例中,示例360º沉浸式视频源/捕获系统102可包括一个或多个高清相机(例如,4K、8K等)(包括全向或全景相机等)或可配置成以多种方式提供源视频流的视频存储设备。取决于关于视频预处理的配置和集成等级,来自示例360º沉浸式视频源/捕获102的输出流可作为与一个或多个接口、高清多媒体接口(HDMI)、串行数字接口(SDI)、高清SDI(HD-SDI)或其它格式兼容的流提供,这些流可包括未拼接或拼接流,它们可具有或没有投影-映射,并且可具有或没有源视频编码。例如,可将不具有投影映射的未拼接源流104A提供给视频拼接器106,视频拼接器106将覆盖重叠角度的流组合成拼接流108。在另一个实施例中,视频源流可包括拼接的HDMI/SDI/HD-DSI流104B。并且,可能存在对捕获的视频进行可能涉及les校正的其它处理。在流没有被投影映射的情况下,投影映射系统110可操作以使用合适的映射投影方案从拼接流104B/108生成投影映射流114,所述映射投影方案例如球面图像投影,包括但不限于等量矩形投影(equirectangular projection)、立方体贴图投影(Cube Mapprojection)、等角立方体贴图(Equi-Angular Cubemap)(EAC)投影、金字塔投影、鱼眼投影等。在仍有的进一步的实施例中,视频流可包括经过拼接和投影映射的流104C,可将流104C提供给源视频编码模块112,模块112可操作以取决于实现而实行一种或多种编码或压缩方案,例如包括但不限于H.264或高级视频编码(MPEG-4 AVC)、高效视频编码(HEVC)或H.265(MPEG-H第2部分)、H.262(MPEG-2)、H.264(MPEG-4,第2部分)、开放媒体联盟(AOMedia)视频1(AV1)、H.266、通用视频编码(VVC)、未来的视频编码(FVC)等,其中方案中的一些可能包括或可能不包括贴片编码,和/或可能包括或可能不包括自适应位速率(ABR)转码。在一种布置中,还可将来自投影映射系统110的投影映射的流提供给编码器系统112以用于实现适当的视频压缩。取决于关于媒体准备中的预处理的配置和集成等级,根据本发明的教导,有利地提供贴片化的编码器/转码器120,以处理从投影映射系统110接收的未压缩的视频流(视频流114)、从编码器系统112接收的压缩的视频流(视频流116)、或来自视频源/捕获系统102的视频流104C。如下文将进一步详细地阐述的,在一些实施例中可将其功能性与编码器系统112和/或投影映射系统110集成在一起的贴片化编码器/转码器120可操作以生成与360º沉浸式视频资产或节目对应的输入视频流的多个位速率表示的编码的流,其中可对具有特定视频质量等级的每个位速率表示进行编码,以包含具有经过适当修改的贴片、帧和/或切片数据的帧,以促进带宽优化的360º视频分发。贴片化包装器(tiled packager)122可操作以针对存储设备124包装来自编码器/转码器120的编码的流,并提供描述编码的流的贴片编组、贴片位置、媒体类型和相关特性的相关联的清单文件(manifest file)126。如下文将进一步阐述的,贴片选择和流生成系统132可操作以响应于控制输入而选择适当的贴片并生成复用视频输出流,可由与服务于观看装置138的接入网络136相关联的交付服务器134来交付所述复用视频输出流。在示例实现中,如本专利申请中的其它地方所提及,可通过各种网络基础设施基于例如HTTP/S、区块化(chunked)HTTP/S、RTP/RTCP等的多种协议来实现复用视频流到最终用户的交付。
技术人员将意识到,前述广义示例网络环境100可在具有以下各种方面的层次网络架构中实现:媒体捕获和准备,包括例如源流拼接、投影映射、源媒体压缩、贴片化/ABR编码/转码、包装等;以及在部署在不同层次等级上的不同网络部分中进行的分发/上传和边缘节点过程,层次等级涉及一个或多个运营商、内容交付网络(CDN)、边缘网络等。此外,在一些实现中,前述设备和过程中的至少一些设备和过程可基于云。在一些布置中,CDN可以是设置在连接到互联网或其它公共/私有通信网络的多个数据中心中的服务器的大型分布式系统。CDN可以是受管或不受管网络,并且也可以是受管或不受管网络的联合。
因此,在操作上与前述示例网络环境相关联的媒体服务器/源系统的示例实施例可配置为例如全局头端,以从直播源和/或静态文件源接受媒体内容,所述直播源和/或静态文件源例如:诸如Hulu®、Netflix®、YouTube®或Amazon® Prime的在线内容提供商;以及诸如例如Disney、Warner、Sony等的VOD类别或内容提供商或工作室。来自直播源的媒体内容可包括:关于任何类型的事件捕获的直播节目,例如体育/娱乐/游戏事件、音乐会、直播TV演出;直播新闻广播源,诸如例如国家广播公司(例如,NBC、ABC等)以及有线电视广播公司频道(如CNN、ESPN、CNBC等的时代华纳频道)和本地广播公司等,包括诸如广告媒体频道的任何辅助媒体插播。
在不限制的情况下,图2中描绘了根据本发明的实施例的用于促进对沉浸式视频的优化贴片编码的示例网络架构200(它可形成图1中所示的环境的一部分)。媒体输入流202说明与360º视频资产对应的视频流,可如图1中所阐述对其进行适当的拼接、投影映射和/或编码,并且可将其分发、上传或以其它方式提供给与运营商内容交付网络206相关联的CDN原点服务器204。广泛地,媒体输入流202可包括与以下内容中的至少一种内容对应的流:直播TV内容,IPTV内容,时移(TS)TV内容,地移(place-shifted)(PS)TV内容,游戏内容,视频点播(VOD)内容,VR/AR/MR内容,联网数字视频记录器(nDVR)内容等,或为了360度观看体验进行(预)处理的任何内容。耦合到CDN 206的CDN边缘服务器208可配置成接收与可存储在合适的(一个或多个)数据库(未特别示出)中的相应的视频资产对应的上传的(一个或多个)媒体流202。可配置成遵照标准的编解码器方案(例如,HEVC、AV1等)操作的贴片化编码器210可操作以生成多个贴片化的自适应位速率流212,其中每个流可包括特定分辨率、位速率和像素大小的贴片(取决于纵横比)。作为说明,流212可包括一个或多个32K流(30730水平像素乘17280竖直像素)、16K流(15360水平像素乘8640竖直像素)、一个或多个8K流(7680水平像素乘4320竖直像素)、一个或多个4K流(3840水平像素乘2160竖直像素)、一个或多个HD流(1920水平像素乘1080竖直像素)、一个或多个720p流(1280水平像素乘720竖直像素)等,其中可在较高的位速率范围编码较高分辨率流,而可在较低的位速率范围编码较低分辨率流。例如,可在800-1000 Mbits/s(或Mbps)的范围中编码32K流,可在200-300Mbps的范围中编码16K流,可在80至100 Mbps的范围中编码8K流,依此类推,到在1.2至3Mbps的范围中编码720p流。此外,贴片化的自适应位速率流212(又称为贴片编码的位流)可包括每帧具有合适数量的贴片的帧(例如,4K的128个贴片),这取决于正在采用的方案。
在一种布置中,贴片化的编码器210可配置成针对媒体输入流202的每个位速率表示生成作为多个相位编码的流的贴片化编码的位流,其中取决于相位,为特定位速率表示的每个相位编码的流在该流的图片组(GOP)结构中的特定位置提供专门的帧,如将在下文进一步附加详细阐述的那样。关于本发明的某些实施例,可将这种编码方案称为相位化编码(PE)方案。在另一种布置中,贴片化的编码器210可配置成针对媒体输入流202的每个位速率表示生成一对贴片化编码的位流,例如第一和第二贴片编码的位流,其中第一编码的位流可包括根据已知或迄今未知的编码方案生成的常规或标准的贴片编码的位流,并且第二编码的位流可进行编码,使得在GOP结构中的每个位置提供专门的帧,如将在下文进一步附加阐述的那样。关于本发明的某些实施例,可将这种编码方案称为块内编码(BIE)或全内编码(AIE)方案。
不管是使用PE编码方案还是BIE编码方案,包装器214都可操作以对贴片编码的位流212进行包装并为每个贴片编码的位流每帧生成描述贴片编组的特性的合适的清单文件,贴片编组的特性例如贴片位置、切片报头信息、包括图片计时、颜色空间信息、视频参数信息的各种类型的元数据等,这些清单文件可与合适的流清单241一起存储在合适的包装媒体存储设施240。包括视频优化系统215(它包括多个模块或子系统)的网络边缘节点216可与视频后台系统238相关联地操作以便实现与由受管带宽管道232提供服务的订户驻地234的驻地装置236的360º沉浸式视频会话,其中受管带宽管道232经由一般由节点或元件230表示的合适的接入网络(例如,具有以下部分的DSL/DOCSIS网络部分:合适的基础设施,它可包括例如路由器、DSLAM/CMTS元件等;或合适的3G/4G/5G无线电接入网络元件,它们在某些实现中包括固定无线基础设施;等)实现。
在一种布置中,视频优化系统215可包括贴片选择子系统218,它除其它事情以外还响应于带宽退火和QoE管理策略以及用户凝视向量信息可操作以将从不同视频质量位流选择的贴片220提供给贴片组合和流生成子系统222。可将具有来自不同位流224的贴片的复用视频帧提供给交付服务226,以促进将复用贴片流228传送到下游基础设施230。广泛地,当生成360º沉浸式视频会话的用户请求250时,由视频后台系统238对它进行处理,并经由消息252将它转发到视频优化系统215,以获得会话ID和所请求的360º媒体的相关联的位置信息。响应于来自视频优化系统215的响应消息251,视频后台系统238可操作以向请求装置236提供包括会话ID和媒体的适当URL信息的响应248。可将用户凝视信息(它最初可能是默认设置)和相关联的会话ID信息作为消息246提供给基础设施元件230,可将消息246作为消息254传播到视频优化系统215。并且,基础设施元件230可操作以在相关或单独的过程中向视频优化系统215提供包括会话ID信息的动态带宽分配消息254。如前所述,贴片选择子系统218可配置成响应于关于带宽分配的控制消息、用户凝视向量信息或两者进行操作,以便选择具有不同视频质量的贴片,可将这些贴片组合或拼接成帧以便生成复用的贴片编码的视频输出流。在一种布置中,可在视频流交付期间作为视频优化系统215的一部分提供贴片组合和流生成子系统222。在另一种布置中,可在播出期间在客户端侧上(例如,在客户端装置236或与之相关联的某个其它驻地设备上)而不是在服务器侧上实现贴片拼接。在该布置中,客户端侧拼接功能性可操作以接收选择的贴片并执行必需的拼接,以便生成要解码和渲染的拼接流。在以下章节中将进一步详细地阐述关于前述过程、子系统和组件的各种实施例。
图3描绘可作为配置成在图2的网络架构的布置内操作的媒体准备和/或处理系统的一部分提供的示例贴片编码器300的框图。在不限制的情况下,下文将阐述示例贴片编码器300,它可配置成实现PE编码方案或BIE编码方案以便生成关于每个媒体资产具有不同质量的多位速率视频流同时遵照与贴片编码兼容的已知或迄今未知的标准编解码器方案(诸如例如H.265、H.266、VVC、AV1等)。广泛地,在一个实施例中,生成专门的帧(或一定程度上同义地,图片),该帧编码为预测性编码的(P)图片或帧(即,具有将它标识为P帧的报头),但是只包含编码为内编码的块或单元(即,I块)的编码块或单元。在另一个实施例中,专门的帧可包括标识为双预测性(B)帧的帧,但是只包含I块。出于本专利申请的目的,将这些专门的帧称为“块内”帧或“X”帧,其中强制所有块的媒体图像数据编码为内编码(即,没有时间估计或预测)。
出于本文中的示例实施例的目的,GOP结构是编码视频流中的一组连续图片,它规定了帧内和帧间被布置的顺序。每个编码视频流包括连续的GOP,可从这些GOP生成可见帧。一般来说,GOP结构可包含以下图片类型:(1)I图片或I帧(内编码的图片)——独立于所有其它图片编码的图片。每个GOP都以这种类型的图片开始(按解码顺序)。(2)P图片或P帧(预测性编码的图片)——包含关于之前解码的图片的运动补偿的差分信息。在诸如MEPG-1、H.262/MPEG-2和H.263的较旧的设计中,每个P图片只可引用一个图片,并且按照显示顺序以及按照解码顺序,该图片必须在P图片之前,并且必须是I或P图片。这些约束在诸如例如H.264/MPEG-4 AVC、H.265/HEVC等的较新的标准中不适用。(3)B图片或B帧(双预测性编码的图片或双向预测性编码的图片)——它包含来自GOP内的之前和之后的I帧或P帧的差分信息,并且包含相对于于之前解码的图片的运动补偿的差分信息。在诸如MPEG-1和H.262/MPEG-2的较旧的设计中,每个B图片只可引用两个图片,按照显示顺序,一个图片在B图片之前,并且一个图片在B图片之后,并且所有引用的图片都必须是I图片或P图片。这些约束在诸如例如H.264/MPEG-4 AVC、H.265/HEVC等的较新的标准中不适用。(4)D图片或D帧(DC直接编码的图片)——充当在某些类型的视频(例如,MPEG-1视频)中丢失鲁棒性或快进的图片的快速访问表示。
一般来说,I帧指示GOP的开始。之后,若干个P帧和B帧可跟随。I帧包含完整的图像,并且不要求任何附加的信息来重构它。通常,编码器使用使每个I帧成为“干净的随机接入点”的GOP结构,使得解码可在I帧上干净地开始,并且在处理正确的I帧之后校正GOP结构内的任何错误。GOP结构通常由两个数字来表示,例如,M=3,N=12。第一个数字告知两个锚帧(anchor frame)(I或P)之间的距离。第二个数字告知两个完整图像(I帧)之间的距离,它是GOP大小。对于示例M=3、N=12,GOP结构为{IBBPBBPBBPBBI}。取代M参数,可使用两个连续锚帧之间的B帧的最大计数。例如,在具有模式{IBBBBPBBBBPBBBBI}的序列中,GOP大小等于15(两个I帧之间的长度),并且两个锚帧之间的距离(M值)为5(I帧和P帧之间的长度或两个连续P帧之间的长度)。
尽管典型的GOP从I帧开始,但是本文中的一些实施例提供这样一种结构,其中除了将X帧放在特定位置或替换GOP结构中的P帧和/或B帧之外,GOP还可改为从X帧开始,如将在下文进一步附加详细阐述的那样。
技术人员将认识到,取决于编解码器实现,可按不同的粒度等级将图片或帧划分为多种方式,以便例如除其它事情以外还促进编码效率、并行处理等。在一种布置中,可将帧划分为多个编码树单元(CTU),每个CTU包含一定数量的亮度编码树块(CTB)和色度CTB,而这些CTB又可包括多个编码块(CB)。可将帧拆分成一个或多个切片,每个切片是帧的空间上不同的区域,该区域可与相同帧中的任何其它区域分开编码并且可用切片报头进行标识。一般来说,切片是自包含的,并且包含按光栅扫描的顺序进行处理的CTU的序列,其中可将切片编码为分别与I帧、P帧或B帧类似的I切片、P切片或B切片。在一种布置中,切片可用于实现重新同步以便使数据丢失最小化,并且每切片可包含变化数量的CTU,这取决于视频场景中的活动。图4A示出包含多个切片402-1至402-N的示例视频帧400A,其中示例切片402-N包含多个CTU 404。
除了切片之外,编码方案还可每帧定义多个贴片,这些贴片可基于形成栅格的竖直和水平分区而配置成是图片的自包含且可独立解码的长方形或正方形区域,以促进在编码和解码阶段进行并行处理。在一种变体中,自包含且可独立解码的贴片可使用来自之前编码的图片或帧的共置贴片的时间预测。多个贴片可通过包含在相同切片中来共享报头信息,其中一贴片可包含一定数量的CTU。并不要求每个贴片包含相同数量的CTU。因此,在一种布置中,帧的贴片可具有不同的大小。如果帧包含单个切片,则帧的贴片将因此具有相同的切片报头和图片报头信息。在另一种布置中,帧可包括一个或多个切片,每个切片包含一个或多个贴片,并且每个贴片又包含一个或多个CTU。图4B示出组织成贴片406-1至406-N的矩阵或阵列的包含多个CTU的示例视频帧400B,其中每个贴片示为是具有按2乘2配置的4个CTU 408的正方形。作为进一步说明,图4C中示出根据HEVC的示例4K视频帧400C,它可包括3840个水平像素乘以2160个竖直像素的阵列,将该阵列划分成16列和8行,从而得到128个贴片。如前所述,在帧400C内,这些贴片大小不一定相等。
出于本专利申请的目的,由于可用众多方式并且按不同的等级划分视频帧,所以术语“编码树单元”、“编码树块”、“编码单元”、“宏块”或“块”或类似含义的术语通常将被视为是可相对于贴片、切片和/或帧应用的抽象编码单元,而不限于任何特定的视频压缩标准或技术。
返回到图3,可相对于基于PE或基于BIE的方案来配置示例贴片编码器300以便生成X帧,其中将它编码为具有对应的报头但是具有内编码(即,编码为只包含I块的I切片和/或I贴片)的单独切片和/或贴片的P帧或B帧。换句话说,X帧可具有P帧或B帧(或者如果每帧只提供一个切片的话,则是P切片或B切片)的报头信息,但是将所有媒体图像数据内编码为I帧的数据。可根据如前所述的已知或迄今未知的方案来正常编码视频序列的剩余帧。因此,通用编码器控制306可配置成在PE方案308和BIE方案310之间选择,以便将适当的控制信号和/或参数提供给贴片编码器的前端部分302的剩余组件和结构,以便关于一个或多个输入视频信号304按照需要根据PE或BIE方案的特定实现强制对特殊帧的编码。一般来说,在PE方案中的每个图片被编码为常规I帧(例如,对于序列中的第一幅图片)或对于与相位/周期匹配的那些输入图片被编码为X帧,并且对于视频序列的所有其它图片被编码为常规P帧或B帧,如将在下文进一步详细描述的那样。关于BIE方案,可提供BIE编码的序列,其中为该序列的GOP结构的所有P帧和B帧提供X帧。因此,配置内部/中间选择块(intra/interselection block)312,使得图片内估计/预测316总是活动的,并用于图片的所有块。同样地,可禁用运动补偿和估计318,因为对于X帧,所有块都是内编码的。在示例实施例中,取决于贴片编码器实现,包括变换、缩放和量化314、逆变换320、过滤控制(filter control)322、解块(deblock)和样本自适应偏移(SAO)过滤324、解码图片缓冲器326的剩余块可保持不受影响。可将通用控制数据328、量化的变换系数数据330、内部预测和过滤控制数据332以及运动数据334提供给报头格式化器和熵编码器336(例如,上下文自适应二进制算术编码(CABAC)引擎),以便生成与视频资产的每个位速率表示对应的一个或多个编码的位流338。如前所述,可将编码的位流338提供给贴片化包装器(在该图3中没有示出),以用于包装和清单生成,从而促进在适当的下游网络位置资产的(预先)提供。
图6说明根据本发明的实施例的涉及可作为示例媒体准备/处理的一部分实现的PE方案或BIE方案的示例编码布置600的各种框、步骤和/或动作。在框604,接收视频源流602,如前所述,视频源流602可未编码、经编码、经拼接、经投影映射或以其它方式进行预处理。在框606,可做出确定,其中选择PE或BIE。作为响应,可适当地配置贴片编码器系统(例如,图3中的贴片编码器300)中的模式选择器。在选择PE时,可将视频源流602编码/转码成具有不同质量和/或位速率的多个流,每个流用贴片编码,如在框608所阐述。对每个质量或位速率流进行相位编码,以生成多个PE流610。作为说明,参考数字614-1是指与具有对应相位615-1至615-P(取决于X帧放在GOP结构中的位置,其中P是GOP大小)的相位编码的流612-1的集合有关的质量信息,所有PE流都具有30的量化参数(QP)设置和/或约7.0 Mbits/s的位速率,这可能指示较低端的质量。以类似的方式,参考数字614-N是指与具有对应相位615-1至615-P的相位编码的流612-N的集合有关的质量信息,所有PE流都具有16的QP设置和/或约105.6 Mbits/s的位速率,这可能指示较高端的质量。
如果选择BIE(又称为全内编码,如在本专利申请中的其它地方所提及的那样),则可将视频源流602编码/转码成具有变化的质量和/或位速率的多个流(框616)。在一个示例实施例中,可使用标准编码方案(例如,HEVC、AV1等)来对流中的每个流进行贴片编码,以生成正常或常规的贴片编码的流618。与上面关于相位贴片化流610的论述类似,作为说明,参考数字622-1是指与具有30的QP设置和/或约7.0 Mbits/s的位速率的常规贴片编码的流620-1有关的质量信息,这可能指示较低端的质量。同样地,参考数字622-N是指与具有16的QP设置值和/或约105.6 Mbits/s的位速率的常规贴片编码的流620-N有关的质量信息,这可能指示较高质量的流。
另外,还将视频源流602编码/转码成具有对应的质量和/或位速率的多个流(框617),其中对每个流进行贴片编码,使得作为X帧提供它的GOP结构的所有帧。作为说明,参考数字632是指多个BIE编码和贴片化的流,其中具有30的QP设置和/或约7.0 Mbits/s(有时又缩写为Mbs或Mb/s)的位速率的质量信息636-1与较低质量的BIE-编码的贴片化流634-1有关,而16的QP设置和/或约105.6 Mbits/s的位速率的质量信息636-N与较高质量的BIE-编码的贴片化流634-N有关。
技术人员在对此进行参考时将认识到,当为编码器配置了目标QP时,编码的位流的位速率在一定程度上在位流的过程中求平均。例如,如果在源编码方案中以10的QP为目标,则有可能的是,可能在没有运动的区域中看到低位速率(例如,导致4 Mbs)。在高运动的区域中,有可能的是,位速率可能会猛增至200 Mbs。因此,在如前所阐述的以特定QP为目标的示例编码方案中,输出流的位速率可在一定范围内是可变的。因此,应领会到,在图6中与PE或BIE流的QP相关联示出的位速率一般指示一段时间内的平均位速率。如将在下文中进一步看到,当在编码方案中以QP为目标(对应地具有变化的位速率)时,涉及贴片选择的本发明的某些实施例可配置成根据关于特定的360度沉浸式视频会话的整体分配的位速率来选择贴片并适配(fit)它们。在附加或备选的实施例中,示例编码器可配置成生成具有特定目标位速率而不是目标QP的编码的位流。在此类布置中,尽管输出位流可保持特定位速率,但QP值可改变。因此,贴片选择的实施例可基于可由不同的编码参数和设置控制的视频质量来选择贴片,并且相应地适配它们以便优化分配的带宽。出于本专利申请的目的,关于编码的位流或位速率表示的术语“质量”、“视频质量”以及类似含义的术语可广泛地涉及和/或基于QP、位速率和其它指标。因此,经过必要的修改,本文中基于作为目标的QP阐述的涉及PE/BIE编码、贴片选择、拼接等的实施例同样也可适用于具有作为目标的位速率的位流。
因此,读者应理解,尽管在假设每流使用固定量化(QP)值的情况下提供本公开内的本描述的某些示例和部分,但是实际上,流可包含图片之间以及图片内变化的QP值,如上所述。根据本发明的实施例的编码器可借助于速率控制等来控制它的输出位速率,并且从而改变图片之间的QP值。编码器也可使用变化的QP值来对一个流内的图片进行编码,以优化该流的视觉质量。在一幅图片内,可使用例如本领域中已知的用于优化视觉质量的自适应量化机制来在不同块之间改变QP值。在本公开的短语中使用“QP”(诸如例如但不限于“用该QP编码”、“不同QP值的视频”、“生成的具有不同QP值的视频”、“具有QP值N的流”、“视频流的QP值”)应理解为是一种用于表征流的方式,使得与较低QP值相关联的流比与较高QP值相关联的流具有更高的位速率和更高的质量,而不是对于流中的每个块,QP保持静态。
应进一步领会到,在一个示例实施例中,可将媒体资产的自适应位速率编码和贴片编码作为内容准备系统的一部分集成在设备内,使得各种类型的编码和/或转码可在不同的序列中和/或在并行过程中进行。此外,取决于实现,诸如投影映射、源流拼接、包装等的附加的功能性也可与本专利申请的贴片编码/转码方案组合或以其它方式集成。
图5是说明根据本发明的一个或多个实施例的用于促进优化的360º沉浸式视频的方法500的各种框、步骤和/或动作的流程图,在一种或多种布置中,这些框、步骤和/或动作可与或者不与本公开的附加流程图的框、步骤和/或动作(重新)组合。在框502,可实现与沉浸式视频的媒体输入流的媒体捕获和预处理有关的各种操作,例如源流拼接、编码、投影映射等。在框504,可与贴片化编码方案相关联地实现将经过预处理的媒体输入流自适应友好地位速率编码/转码成具有不同视频质量(例如,具有变化的QP值)的多个位速率表示或流。如前所述,可配置基于PE的编码过程(框506B)或基于BIE的编码过程(框506A),以生成编码的位流输出。应注意,框504和506A/B的过程可作为单个编码操作执行,使得使用单个编码过程使用PE方案(框506A)或BIE方案(框506B)进行框504的自适应友好位速率编码/转码。之后,可对编码的位流进行包装(框508),并将它们分发到适当的网络边缘位置(框510),以供客户端使用合适的最终用户设备消费并交付。当接收到对特定媒体资产的用户请求并且对它进行处理时,可实现基于控制输入(例如,传输状况、带宽分配和/或凝视向量输入等)的贴片选择过程,以便从媒体资产的不同位速率表示(即,不同的质量)选择贴片(框512)。可实现流生成过程,以便将选择的贴片拼接成帧作为要交付到请求客户端装置的输出视频流(框514)。
技术人员将认识到,前述步骤、动作或操作的至少一部分可包括关于分布在上面描述的如图1和2中所示的网络环境或架构中的一个或多个360º沉浸式视频资产的媒体准备和(预)提供。转到图7,阐述了根据本发明的示例实施例的关于BIE方案700的附加细节。在框702和704,接收关于360º沉浸式视频资产的媒体输入流并对其进行处理,以生成具有不同/独立质量的多个位速率表示,例如,每个视频质量与用于每个位速率表示的对应作为目标的QP值和/或作为目标的位速率或相应质量的其它指标有关或受其控制。将每个位速率表示编码成包括具有特定GOP结构的多个帧的第一编码的位流,其中每个GOP从I帧开始,后面是包括至少一个P帧或B帧的帧集合(框706)。此外,将每个位速率表示编码成包括具有GOP结构的多个帧的第二编码的位流,所述GOP结构具有与第一编码的位流的GOP结构的大小共同扩展的大小,其中第二编码的位流的每个GOP从I帧开始,后面是多个X帧,每个X帧用P帧或B帧的切片/图片报头编码并且只包括内编码的媒体图像数据(即,类似于GOP的I帧),如在框708所阐述。如前所述,可使用任何贴片兼容的压缩方案来将第一编码的位流和第二编码的位流编码为相应的贴片编码的流,其中贴片编码的位流的每个帧包括组织成每帧至少一个切片的贴片的阵列,每个贴片包括形成为多个编码单元、块或树的帧的媒体数据的一部分。本领域技术人员将认识到,在一个实现中,如之前关于图5的框504和506A/B中所提到的,可在单个编码过程中执行框704和706的过程。例如,在实践中,单个过程编码/转码将是希望的,以使计算复杂度最小化,并使由串联或级联编码引入的降级最小化。
图11描绘在示例实施例中由基于BIE的贴片化编码器系统生成的具有不同质量或QP的多个编码的位流1100。参考数字1102-1至1102-N是指具有对应的质量或QP的N个流或位速率表示。用具有四个帧的GOP结构1106A来说明与特定位速率表示(例如,QP-N 1102-N)对应的正常编码的贴片化流1104A,其中这些帧从I帧开始,后面是三个P帧。对应的BIE编码的流1104B具有GOP结构1106B,它也用四个帧来说明,这些帧从I帧开始,但是后面是三个X帧。
图8A是说明根据本发明的示例实施例的用于在贴片化编码布置中配置BIE方案的过程800A的流程图。在不限制的情况下,将参考基于修改某些参数将HEVC方案配置用于执行BIE来描述示例过程800A,但是其它方案也可应用于本文中的目的。
一般来说,BIE配置方法的实施例可配置成作为输入接收或获得360º沉浸式视频的源视频流和输出视频质量的列表(例如,QP值的列表,诸如{QP1=16, QP2=18, QP3=20,QP4=22, QP5=24, QP6=26, QP7=28, QP8=30;或基于作为目标的位速率的其它指标})。因此,在不限制的情况下,对于每个输出视频质量(例如,每个QP值),可编码两个视频流(具有该QP或质量的常规/标准HEVC视频和具有该QP/质量的块内HEVC视频),如前所述的那样。为了能够在稍后的时间(例如,在解码前不久)将来自不同质量的贴片拼接成相同的位流,实施例的编码阶段规定,所有视频流具有相同的base_qp(下文定义),而不同QP值的视频之间的实际差异可借助于离开基础QP的qp_delta(下文定义)实现。例如,可配置base_qp=22的设置,其中可使用参数值base_qp=22和qp_delta=-6来实现QP=16。一般来说,这两个参数与设置视频流的质量(QP)有关。回想一下,具有不同qp值的所有生成的视频都需要具有相同的base_qp,而不同的QP值则可使用离开base_qp的qp_delta来实现。可基于一个特定时间实例来施加该要求。即,如果位流中的图片编号,则在一种布置中,来自用作拼接的输入的两个位流的具有相同编号的任何两个图片必须使用相同的base_qp值。出于本发明的目的,可如下描述“base_qp”:相同视频的所有编码版本或位速率表示中的第i个帧(对于每个i =1到N,其中N是视频序列中的帧的总数)将具有相同的切片QP值。换句话说,切片QP是base_qp。尽管可在所有生成的流中将切片QP设置为相同的值,但是它可能会随时间改变。出于本发明的目的,可如下描述参数delta_qp:通过指派给定的qp_delta,每个贴片中发信号通知QP的第一个块配置成发信号通知delta_qp(离开基础QP的方差量)。可能注意到,在一些实施例中,在拼接之后,可能存在去块不匹配(deblocking mismatch)。
可出于本发明的目的定义的另一个参数是ROI(感兴趣的区域),它确定其中可独立编码贴片使得可容易地提取对应于ROI的位流的子集并将其重新构造到另一个位流中的帧的区域。如上所述,为了稍后拼接不同QP的视频,希望的是利用base_qp和delta_qp的功能性。例如,在一个说明性实现中,当使用HEVC ROI编码功能性时,就支持这一点。因此,当在一实施例中利用ROI进行编码时,除了定义ROI栅格(相对于帧的贴片的栅格/阵列独立定义)之外,还可定义切片QP报头的base_qp参数,使得在ROI栅格中的第i行和第j列的栅格的区域得到它自己的delta_qp。一般来说,这允许实施例将不同的delta_qp指派给ROI栅格的不同区域,由此可出于本发明的目的使用选择性的delta_qp值。例如,为了实现给定的期望QP(如QP=16),可使用常规的qp参数来定义base_qp(如base_qp=22),并且然后通过使用ROI栅格,可为所有作为目标的区域指派-6的delta_qp,从而为ROI栅格中的所有贴片高效地实现16的QP。
在一个实施例中,对于特定帧,可使用相同的base_qp(切片QP)来对采用不同质量的内容进行编码。对于该帧的每个质量,可设置特定的期望QP,其中可使用delta_qp语法元素,使得用该期望QP来编码该帧的所有块(或备选地,尽可能多的或期望的块)。基于HEVC的BIE配置方案的附加方面可如下阐述。
编码器可设置成使用贴片化编码。在设置期间,这可通过为贴片化编码设置适当的标志以及配置贴片的特定栅格结构(例如,如图4C中所示)来实现。作为说明,编码器可配置成为4K视频输入提供16乘8贴片栅格结构,从而导致在每个帧中具有128个贴片。
编码器可配置成禁用时间运动向量预测。尽管示例BIE方案没有使用MV(运动向量),但是时间运动向量预测(TMVP)设置可能需要跨流相同,以能够实现在稍后的时间进行拼接。这种配置是可选的,因为可在不禁用TMVP的情况下实践BIE的实施例。
并且,切片报头的许多其它元素可配置成跨流相同。例如,元素诸如使用的参考图片的数量、参考图片集、对于L0使用什么样的参考图片、使用的图片参数集(PPS)、图片顺序计数、SAO参数等。此外,还要求解码顺序对于要用作位流切换的输入的所有位流都相同。技术人员至此在参考后将认识到,在示例BIE实现中,可相应地配置各种切片报头元素。
由于切片使用单个PPS id码字来标识要使用什么PPS,并且PPS引用一个单一序列参数集(SPS),所以在示例实施例中,可使用相同的PPS和SPS id值来进行所有编码。同样地,SPS和PPS中的许多语法元素也可配置成对于多种编码相同。因此,可配置示例BIE实施例,使得使用相同的SPS和PPS来实现编码,但这不是必要的要求。然而,在某些布置中,SPS和PPS中的一些元素相同是严格必需的。
返回到图8A,示例BIE配置过程800A可从如上文阐述的初始化编码器的模式选择器以选择用于编码输入视频流的BIE开始(框802)。在框804,编码器可配置成对于每个帧按特定的栅格或阵列布置使用贴片。在框806,可在编码的流的所有切片QP报头中写入base_qp参数。为了对具有不同质量(同时具有相同的base_qp)的流进行编码,可如上面所述基于目标QP关于每个流配置qp_delta参数(框808)。例如,对于特定流,为了实现22的目标QP,在base_qp为32的情况下,可配置-10的qp_delta。如前所述,要求要用作拼接的输入的具有相同图片编号的所有图片必须使用相同的base_qp值。因此,在一个实施例中,在所有流报头中设置相同的base_qp参数不是必要的要求。可配置空间运动向量预测,使得它仅仅局限于该贴片内(框810)。即,在示例实施例中,不允许运动向量跨贴片边界(即,只允许贴片内预测)。这意味着,设置运动向量,使得在对贴片内的块进行运动补偿插值期间,不读取位于任何共置贴片的边界之外的样本。可为编码器配置ROI栅格,使得它将qp_delta信息用于编码关于帧的特定区域的特定流(框812)。此外,如上面阐述的,在示例BIE配置过程中,也可禁用TMVP(框814)。
应注意,尽管前述BIE配置过程800A使用了某些参数,但是可实践附加或备选的实施例,其中BIE方案可配置成,除了在图8A的流程图中举例说明的参数之外和/或代替此类参数,还利用其它参数。
图8B是说明根据本发明的实施例的在示例BIE方案800B中的附加框、步骤和/或动作的流程图。一般来说,在基于BIE的贴片化编码期间,编码器可配置成实现几个决定。在编码作为P帧的一部分的贴片期间,编码器决定是否应当使用任何运动向量并且取决于之前的帧来编码特定贴片,或者是否应当以“内部”模式来对它进行编码,在“内部”模式中,贴片是自包含的,并且不取决于任何之前的帧(即,不使用来自任何之前的帧的预测)。如前所述,在BIE中对P帧进行编码期间,强制编码器使用内部模式来对所有块进行编码。在框834,接收视频输入832以用于编码。在框836,将贴片化编码器配置用于实现BIE过程,如上面阐述的那样。对于视频输入的每个帧,可实现迭代过程,以在逐帧基础上实现适当的编码决定,这从关于视频序列是否已经到达它的末端的确定开始(框838)。如果没有到达末端(即,视频序列中仍有帧要求处理),则获得下一个帧(框840)。如果确定该帧是GOP结构的第一个帧(框842),则将它编码为常规的I帧(框854),并且过程流返回到获得下一个帧(框840)。否则,将它编码为P帧(框844)。对于P帧的每个切片,用P切片报头对它进行编码或为它提供P切片报头(框846)。对于P切片的每个块或任何其它合适的编码单元,编码器配置成以内部模式对图像数据进行编码(框848)。之后,过程流返回以确定是否已处理完所有帧(框838)。如果是,则视频序列的编码完成(框850),可将它作为BIE贴片化的位流提供给下游实体(例如,包装系统),如在框852所述。可使用备选布置B帧来代替P帧以用于生成X帧,如在本专利申请中的其它地方所提及的那样。因此,可对框844、846和进行适当地修改,以便支持这种布置。
在本发明的进一步实施例中,可基于如前所述的PE方案在每个GOP中使用X帧一次(而不是如在BIE中那样使用多次)。基本上,基于PE的贴片化编码涉及用于生成流的过程和设备,其中除了是I帧的第一个帧之外,所有帧均具有P切片报头,同时周期性地存在X帧(即,BIE帧或AIE帧),其中对所有块进行内编码,但是切片报头是P切片(或B切片,其中也按顺序对B帧进行编码)的报头。一般来说,要潜在地用作拼接的输入的任何两个图片的所有切片都需要具有相同的切片类型、切片qp以及切片报头和PPS中的多个其它设置。与其中除了第一个帧以外、GOP的所有帧都是X帧的上面阐述的BIE方案相比,PE方案的实施例配置成取决于以下两个参数只在选择的帧位置提供X帧:周期(它是GOP的大小,即,GOP中的帧的数量)和相位(它是在范围{0至[周期-1]}中的整数)。可如下确定X帧在PE方案中出现的帧位置。令N为流中的帧的总数。将第一个帧编码为I帧。对于第i个位置的帧(2≤i≤N),如果{iMod (周期)≠相位},则将它编码为常规P帧;并且否则(即,{i Mod (周期)=相位}),则将该帧编码为X帧(具有P切片报头,并且所有块以内部模式编码,独立于之前的帧)。应注意,示例PE方案可为媒体输入的每个质量/位速率表示提供与GOP中存在的帧位置(即,GOP大小)一样多的相位编码的流。
出于本发明的目的,通过在X帧中使用P切片报头或B切片报头而不是I切片报头,可在示例性实施例中实现几个优点,包括但不限于促进在用户观看环境中进行mid-GOP切换。假设用户正在观看360º沉浸式视频节目或内容,其中直接凝视的视场(FoV)为高质量(即,较低的QP),并且用户在GOP的中间移动他的头部。用户现在在他们的新视场或视口中看到低质量的视频(较高的QP)。服务器可在下一个GOP开始时发送高质量(低QP)的I帧,但是这会引入显著的时延,因为它需要花费时间,直到将呈现视口的下一个GOP的高质量的I帧为止。希望的是接收或获得在GOP的中间尽可能快地以高质量编码的新视场的I帧。但是,在常规的沉浸式视频观看环境中仅原样在GOP的中间放置I帧是不可行的。通过生成X帧(即,块内编码帧或全内编码帧)并在GOP的中间(例如,在GOP结构中的任何帧位置处)传送它,本发明的实施例因而能够有效地升级视场的质量,类似于在GOP的中间以高质量的贴片呈现I帧的情况下的效果。通过在AI编码或BI编码的帧(即,AIE/BIE帧或X帧)中提供P切片报头,本发明的实施例因此允许在GOP的中间使用在FoV的感兴趣区域(ROI)中具有高质量数据的帧。
此外,在将帧划分为贴片和切片的贴片编码方案中,涉及X帧的本发明的实施例能够实现在单个输出压缩帧中混合贴片,其中一些贴片可使用空间或时间预测(即,图片间预测),并且一些贴片可能只使用空间预测(例如,只包括内编码块)。由内编码的块组成的贴片只能源自X帧。在本专利申请的上下文中,关于输出流生成的术语“混合”、“复用”、“拼接”、“接合(splicing)”或类似含义的术语可指用于将一个压缩贴片(例如,贴片A)与另一个压缩贴片(例如,贴片B)进行并置(concatenate)以形成表示单个输出帧的位流的一部分的手段和方法,其中贴片A和贴片B可能源自单独的内容编码,这将在下文进一步附加详细地阐述。
PE方案的优点之一与克服可能存在于BIE方案中的漂移问题有关(即,漂移消除或减少)。应领会到,尽管BIE允许用新视口的X帧来替换之前视口的P帧,但是接下来的帧是利用对之前的帧所做的预测进行编码的新视口的常规P帧。因此,当用X帧替换P帧并且然后接下来的帧使用该X帧而不是常规位流的原始帧来进行预测时,就有可能存在漂移,其中预测误差可能累积。另一方面,在相位化编码中,生成的流将在位置=<相位>+i*<周期>的X帧用于预测接下来的P帧,并且因此避免了P帧用于预测与在编码期间所使用的帧不同的帧的情况。因此,由于从与在编码期间生成的帧不同的帧来进行预测,所以没有出现预测误差,并且因此,避免了由这种类型的预测误差引起的任何潜在漂移。然而,PE方案可能要求更大的存储量,因为要求存储在GOP中跟随在X帧之后的P帧。
此外,可有利地利用PE方案的实施例来促进逐步刷新帧,由此在播出期间通过只选择贴片的子集来升级其质量并发送它们的适当的相位化编码的贴片而实现较低的时延。而在BIE方案的实施例中,用X帧替换P帧,在逐步刷新帧退火方案中,PE编码的流可用于将选择的贴片替换为从适当的PE编码的流中提取的对应贴片。另一方面,在另一个实施例中,BIE方案也可有利地在逐个贴片的基础上操作。因此,关于基于PE的实施例,如果周期为P,并且帧号为X,则可通过以下等式获得对应的相位:相位={X Mod P}。因此,在交付或播出编码的视频序列期间,假设选择某个贴片T以便升级到帧X中的QP质量q,则可用来自相位满足以下关系的流的贴片T来替换选择的贴片(在帧X和接下来的帧中,直到T的下一次升级/降级或视口改变为止):在QP=q,相位={X Mod P}。之后,在帧X之后属于相同GOP的帧中的共置贴片由来自相同的PE编码的流的对应的共置贴片来替换。应领会到,在用户改变凝视方向时并置来自不同流的贴片的优点与上面阐述的其中用户在mid-GOP期间改变他的凝视的场景类似。相同的切片QP用于切换/替换贴片,因为如果两个输入贴片用不同的实际QP编码并且每图片用单个切片进行编码,则如果切片QP不同,则在不对流进行低级重写的情况下,输出流中的贴片的QP不可能是正确的。下文将参考本专利申请的附加实施例进一步阐述关于逐步刷新帧退火和贴片选择的附加细节。
关于PE的潜在缺点可能是,它要求更多的存储,因为在许多相位中编码输入流,由此潜在地导致与GOP大小一样多的流(而不是像BIE中那样只有两个流)。在示例实现中,可相对时延减少而无漂移的优点权衡该缺点。为了最快质量改变响应,可将相位的数量设置成等于GOP的大小(即,周期P),但是示例实施例可提供使用较少的相位和消耗(consume)较少的存储而质量升级的时延可能较长的权衡,因为将只在下一个相位上进行贴片升级。
图9是说明根据本发明的示例实施例的PE方案900的流程图。在框902,可接收与360º沉浸式视频资产对应的媒体输入流。像之前一样,可生成媒体输入流的多个位速率表示,每个位速率表示具有单独的视频质量,例如与用于位速率表示的对应的作为目标的QP值和/或作为目标的位速率、或相应质量的其它指标有关或受其控制(框904)。将由对应QP控制的每个位速率表示编码成多个相位编码的位流,属于特定位速率表示的每个相位编码的位流包括具有特定GOP结构的多个(N个)帧,GOP结构具有GOP大小(p),其中所述多个相位编码的位流的数量等于GOP大小。在一种布置中,GOP大小、即p>1。对于每第p个相位编码的位流,如下编码N个帧:(i)至少将第一个帧编码为内编码的(I)帧;以及(ii)将在满足关系{i Mod (GOP大小)} = p的帧位置i(2≤i≤N)的帧编码为X帧,该X帧具有P帧的切片报头,并且只包含仅内部编码的媒体图像数据的块(即,类似于I帧)。否则,将该帧编码为常规P帧,该常规P帧具有预测性编码的帧的媒体数据以及P切片报头(框906)。在某种布置中,P帧也可包含内部编码的数据。在实施例中还对B帧进行编码的情况下,可与前述过程类似提供代替常规B帧的X帧。如之前关于图5和图7所提及的,在一个示例实施例中,为了计算效率起见,可将在框904和906所阐述的操作进行组合以在单个编码过程中执行。
在PE方案的附加或备选的实施例中,相位编码的位流可具有I帧以外的帧作为编码视频序列的第一个帧,这可通过根据本文中的教导在编码器中的适当设置来实现。例如,第一个帧可以是X帧(或某个其它非I帧)。编码序列的所有其它帧可基于相位在合适的位置包含预测的帧(P/B帧)和X帧。
图12描绘在示例实施例中由基于PE的贴片化编码器系统生成的对于特定位速率表示具有不同相位的多个编码的位流1200。作为说明,将具有22的QP值的QP-N流1202-N编码为四个相位编码的流1204-1至1204-4或以其它方式作为四个相位编码的流1204-1至1204-4提供,这是因为在该示例中,使用四个帧的GOP大小。对于每个PE流1204-1至1204-4,将第一个帧编码为I帧1206-1至1206-4。基于上面阐述的相位-位置关系,将每个PE流中的其余帧编码为P帧或X帧。
转到图10A,其中描绘了说明根据本发明的示例实施例的在贴片化编码布置中配置PE方案的过程1000A的流程图。在框1002,可初始化编码器以便关于与360º沉浸式视频资产对应的媒体输入流选择PE方案。在框1008,获得或以其它方式配置周期和相位参数,其中周期等于GOP大小(框1004),并且相位等于或小于GOP大小(框1006)。在框1010,编码器可设置成使用贴片编码以每帧按特定的栅格/阵列布置生成贴片。与之前阐述的BIE配置过程类似,可在编码的流的切片QP报头中写入base_qp参数(框1012)。如前所述,要求要用作拼接的输入的具有相同图片编号的所有图片都必须使用相同的base_qp值。因此,在示例实施例中,在所有流报头中设置相同的base_qp参数不是必要的要求。为了促进不同质量的编码的流(同时具有相同的base_qp),可如上面所述基于目标QP关于每个流配置qp_delta参数(框1014)。如同之前在示例BIE配置过程中一样,可在base_qp为32的情况下配置-10的qp_delta,以对于特定流实现22的目标QP。可配置空间运动向量预测,使得它仅仅局限在贴片内(框1016)。即,在示例实施例中,不允许运动向量跨贴片边界(即,只允许贴片内预测,而不允许跨贴片边界的中间预测或上下文选择)。这意味着,设置运动向量,使得在对贴片内的块进行运动补偿插值期间,不读取位于任何共置贴片的边界之外的样本。可为编码器配置ROI栅格,使得它将qp_delta信息用于编码关于帧的特定区域的特定流(框1018)。此外,如上所述,在示例PE配置过程中,也可禁用TMVP(框1020)。
应注意,在一个实施例中,示例PE配置过程大致上类似于BIE配置过程,可取决于GOP大小对每个“相位化”流执行它。此外,与使用某些参数的BIE配置过程800A类似,除了在图10A的流程图中举例说明的参数之外和/或代替此类参数,PE配置过程的附加或备选的实施例还可涉及其它参数。
图10B是说明根据本发明的实施例的在示例PE实现中的框、步骤和/或动作的流程图。一般来说,编码器可配置成在基于PE的贴片化编码期间实现几个决定,以仅仅在每个相位编码的流的特定帧位置生成X帧。在框1034,接收视频输入1032以用于编码。在框1040,贴片化编码器配置用于基于周期(框1036)和相位(框1038)实现PE过程,如上面阐述的那样。对于每个流,将第一个帧编码为I帧(框1042)。之后,可实现迭代过程以在逐帧基础上实现适当的编码决定,这从关于视频序列是否已经到达它的末端的确定开始(框1044)。如果没有到达末端(即,在视频序列中仍有帧要求处理),则将帧索引(i)递增(框1046),并且获得下一个帧并将它表示为第i个帧(框1048)。做出是否满足模关系{i Mod (周期) = 相位}的确定。如果是,则将该帧编码为X帧,如框1054、1056和1058所阐述。否则,将它编码为常规的P帧(框1052)。之后,过程流返回以确定是否已经处理完视频流的所有帧(框1044)。如果是,则过程流继续进行以完成对视频流进行编码(框1060),可将该视频流作为PE贴片化的位流提供给下游实体(例如,包装系统),如在框1062所阐述。
如前所述,基于PE的贴片化编码方案促进在360º视频交付期间的逐步刷新退火过程,这将在下文进一步详细地阐述。在播出期间,也可使用相位化编码的实施例,其中可使用在服务器侧或客户端侧上执行的拼接器来组合不同质量的贴片。因此,在正在播放的视频的每个帧,每个贴片具有当前的质量,它可能对应于从中获取贴片的视频流的QP值、目标位速率或其它指标。当带宽足够大时,或者当用户移动他的头部并且视口改变时,希望的是升级一些贴片(例如,在新视口上的贴片)的质量(例如,降低QP)。此外,为了借助于减少解码器侧上的缓冲器的使用而减少时延,本发明的实施例规定,可不是一次升级整个视口,而是借助于逐步刷新、在每个帧中只升级几个贴片、使解码器缓冲器保持小并且从而减少时延来逐步地升级它。如下文将进一步附加详细地描述,示例带宽退火设备可配置成实现用于基于带宽、视口和/或当前的缓冲器利用率来确定在每个时刻升级哪个贴片的过程。此外,此类过程还可配置成确定应当将贴片升级到的质量等级(即,哪个QP)。
例如,假设在播出期间,贴片选择设备(下文进一步详细描述)确定在第i个帧中将贴片T升级到质量QP=q。可将该确定作为控制输入提供给贴片/帧拼接器模块,贴片/帧拼接器模块从使用相位化编码用质量QP = base_qp + delta_qp =q编码的视频流的第i个帧中检索、接收或以其它方式获得贴片T,其中相位由模关系确定:{相位= i Mod (周期)}。然后,到下一次贴片选择过程决定改变该贴片的质量时,从相同流(即,具有质量QP = q并具有相同相位的相位化编码的流)中获取贴片T。因此,将领会到,除了在升级期间执行贴片的逐步刷新的能力之外,PE方案的附加优点是更佳的视频质量。总的来说,相位化编码比BIE方案给出了更佳的QoE,在BIE方案中,不带相位地替换X帧,这可能导致漂移并且导致较低的峰值信噪比(PSNR)值,从而导致GOP的剩余部分的较低QoE流。如前所述,相位化编码的潜在缺点是要求多个流,这可能导致显著的编码处理开销和存储空间。
下文将阐述关于如何使用PE或BIE方案来拼接贴片编码的位流的示例实施例。如前所述,可在流交付阶段期间在服务器处或者在用于播出的客户端侧上实现贴片拼接实施例。一般来说,用于拼接贴片的示例实施例涉及利用不同质量的位流(例如,基于不同的QP、作为目标的位速率或其它指标)以及确保在从中选择贴片的位流中关于与视频图片有关的各种参数数据片段存在兼容性,各种参数数据片段例如视频参数集(VPS)、序列参数集(SPS)、图片参数集(PPS)、补充增强信息(SEI)等。一般来说,贴片结构优选应当随时间恒定以促进拼接,而这又与由本发明的编码器执行的贴片编码过程有关。位流拼接器模块可响应于包括来自不同贴片编码的流的贴片列表的输入进行操作,这些流可组合以生成新的输出位流,其中与进一步远离视口的贴片相比,越靠近视口的贴片具有越高的质量。此外,可配置根据本发明的教导的用于执行贴片组合和流复用的示例实施例,使得输出流生成仍然保持符合诸如MPEG HEVC/ITU-T/ISO23008第2部分/H.265规范的已知编解码器标准以及诸如AV1、H.266、VVC等的新兴标准。
为了拼接BIE编码的流,可默认地将来自常规流的贴片用于接合(例如,直到基于用户的凝视或带宽分配提供某种控制输入为止)。其中从BIE编码的流获取贴片的唯一实例是在视口改变时(从而要求X帧,X帧是具有P切片报头的帧,它们可在GOP的中间适配,但是对贴片进行内编码,因此可能呈现新视口)或在带宽退火过程确定升级贴片的质量时(在这种情况下,具有P切片报头的块内帧包含具有经升级的较高质量的贴片)。
图13A说明根据本发明的一些示例实施例的涉及BIE编码的贴片化流的示例贴片拼接方案1300A的各种框、步骤和/或动作。在框1302,BIE位流拼接器接收不同QP的输入位流,包括常规的贴片编码的流的第一集合和包括BIE贴片编码的流的第二集合。如上所述,在示例实施例中,流受到运动约束,并且对于每个帧N具有与在任何其它帧N中的基础QP相同的base_qp。贴片选择模块提供具有不同QP的贴片的列表(框1306),其形成关于要从中检索或获得贴片的特定QP位流以及每个贴片的描述和参数信息的整体输入的一部分(框1304)。如框1308中所阐述的,可在逐个贴片的基础上实现贴片拼接过程。如果视口和/或贴片QP已经改变(框1310),则从具有适当的QP的BIE编码的流中获取贴片并将它拼接成帧(框1312)。否则,从常规的贴片编码的流中获取贴片并相应地进行拼接(框1314)。在一个帧中(按预确定的栅格阵列)拼接所有贴片之后,可作为输出提供具有不同贴片质量的拼接帧(框1316)。如果附加的视频帧留待处理(例如,编码和拼接),则过程流可继续。
作为说明,考虑其中至少有以下三种流的块内流拼接场景:(1)较低质量的常规流(例如,30的QP设置);(2)较高质量的常规流(例如,22的QP设置);以及(3)较高质量的BIE(全内)流。广泛地,当视口改变时,一些贴片的质量可能会增加。这在框1312中进行,这意味着,例如,在之前的图片中从流(1)中获取的在位置A处的贴片现在从流(3)中获取。在下一个图片中,如果在位置A处的贴片仍在视口内,则应当从流(2)中获取该贴片。如果贴片不再在视口内,则可从流(1)获取位置A贴片。更具体来说,它可能进一步取决于凝视向量信息。换句话说,这不只是在位置A处的贴片是否在视口中;而是,在用于贴片选择的凝视-权重确定方案中贴片位于何处(下文将进一步详细地描述)。因此,应理解,在本发明的示例实施例中,视口内的贴片取决于它们位于何处,可基于贴片距直接视线多远来升级或降级。
以类似的方式,图13B中说明涉及基于PE的贴片化流的示例贴片拼接方案1300B。PE位流拼接器可操作以接收不同QP的输入位流,将每个位流编码成多个相位编码的位流(框1332)。贴片选择模块提供具有不同QP的贴片的列表(框1336),其形成关于要从中检索或获得贴片的特定QP位流以及每个贴片的描述和参数信息的整体输入的一部分(框1334)。如在框1338中所阐述的,可在逐个贴片的基础上实现与BIE贴片拼接类似的贴片拼接过程。如果视口和/或贴片QP已经改变,使得要求改变当前贴片的质量(框1340),则基于相位-帧模关系从具有适当的QP的PE编码的流中获取贴片并将它拼接成帧(框1342)。例如,如果在帧i的贴片的QP变为QP = q,则从相位等于{i Mod (周期)}并且QP = q的流中获取贴片,并在贴片栅格的适当位置进行拼接。否则,从在之前帧中获取它的相同位流中获取贴片并进行相应地拼接(框1344)。在一个帧中(按预确定的栅格阵列)拼接所有贴片之后,可作为输出提供具有不同贴片质量的拼接帧(框1346)。此外,如果附加的视频帧留待处理(例如,编码和拼接),则过程流可继续。
不管是拼接来自BIE编码的位流还是PE编码的位流的贴片,拼接的示例实施例可涉及:除了如前所述的其它参数信息之外,还从具有兼容的切片报头的不同流中获取贴片。一般来说,可监测切片类型(即,I/P/B切片)、切片QP和可能影响CABAC解码过程的其它字段或参数,以确保兼容性和符合性。此外,诸如在图13A/13B中所阐述的示例实施例的一些实施例可能要求仅使用之前解码的图片来进行中间预测。
转到图13C,其中示出说明根据本发明的示例实施例的关于示例贴片拼接/接合方案的附加框、步骤和/或动作的流程图。在框1362,获得(待拼接的)当前帧的不同QP的贴片作为输入。在存储器中复制基于贴片选择过程(从BIE流或从PE流)选择的贴片的数据(框1364)。在框1366,接合过程从可能包括报头字段、偏移字段等的原型切片报头开始(框1368)。对于贴片索引(i),可从贴片大小确定entry_point_offset[i](框1368)。确定entry_point_offset[i]的最大值所需的位(框1370)。可基于如之前所确定的所有贴片索引的最大偏移值用新的入口点偏移(EPO)长度来调整切片报头(框1372)。在框1374,将EPO字段写入到切片报头中。之后,在切片报头之后将这些贴片一起并置(框1376),从而生成拼接帧的输出位流(框1378)。
技术人员将认识到,为了接合贴片,需要响应于贴片选择过程从特定源位流中检索它们。为了促进高效的检索,接合的实施例可涉及提供存储器映射的贴片指针高速缓存,该高速缓存允许更快地引用与贴片对应的解析文件,其中将文件格式优化为存储器映射的而不是解析到RAM中。出于示例性接合实施例的目的,下文阐述示例文件格式:
/>
参考图14,其中示出根据本发明的实施例的包括从具有不同质量或QP的编码的位流中选择和接合的贴片的示例360º视频帧1400。作为说明,由以展开的格式(即,没有投影在3D球面空间中)示出的4K视频输入的128个贴片(16列乘8行)形成视频帧1400,其中场1402可对应于帧1400的基于视口或凝视向量位置的ROI。根据本文中的教导,可由接合高质量贴片(即,从具有低QP(例如,在105.6 Mbps的QP-16)的编码的位流中选择并在拼接过程中并置的贴片)形成ROI 1402。邻近/相邻于ROI 1402设置的区域或场可具有中等质量贴片(例如,场1404)。另一方面,离开ROI 1402设置的场或区域(例如,进一步远离视口的那些场或区域)可由较低质量贴片形成(如由区域1406和1408举例说明)。
为了促进基于凝视的贴片选择控制,本发明的附加实施例涉及监测用户正在观看360º沉浸式视频节目的地方(即,用户的视口)并基于用户的凝视确定适当的贴片权重。一般来说,可由用户/客户端装置返回在显示360º视频的3D沉浸式空间中定义凝视方向(例如,头戴式耳机指向的地方)的凝视向量(GV)。在进一步的实施例中,可出于类似的目的跟踪用户的眼球移动。如将在下文看到的,贴片化帧的贴片也具有基于如何在3D显示环境中映射帧的方向向量(不依赖于用户的凝视)。可计算贴片向量和凝视向量的点积(又称为标量积或内积)以确定凝视方向和帧的任何贴片的中间的方向之间的角距,其可被提供给加权功能模块以用于确定对应的贴片权重。
图15A和15B是说明根据本发明的一个或多个实施例的用于促进优化的贴片选择的凝视控制方案的各种框、步骤和/或动作的流程图,在一种或多种布置中,这些框、步骤和/或动作可与或者不与本公开的附加流程图的框、步骤和/或动作(重新)组合。过程1500A涉及从进行操作以向用户显示360º沉浸式视频资产的客户端装置接收凝视向量,其中每个视频帧包括投影在用户沉浸在其中的供用户观看的三维(3D)显示环境上的贴片的阵列,凝视向量定义在3D显示环境中用户在任何特定时间正在观看的凝视方向(框1502)。在一个实施例中,凝视向量信息可包括可能与显示环境相关联的3D笛卡尔坐标系中的(x, y, z)信息。在另一个实施例中,凝视向量信息可包括基于等量矩形投影映射的3D球面坐标系中的(ρ,θ,φ)信息。在另一个实施例中,可将3D凝视向量归一化(以获得单位长度的方向向量)。因此,技术人员将认识到,取决于在特定实现中所使用的几何建模、投影映射、计算方法学(computational methodology)等,可用多种方式来提供GV信息。在框1504,可关于凝视向量和方向向量之间的角距做出确定,所述方向向量与分别对应于3D显示环境中的贴片阵列的每个贴片位置相关联,这可能同样取决于特定的几何建模、投影映射、计算方法学等。在框1506,响应于角距,确定与贴片阵列对应的多个贴片权重,供选择360º沉浸式视频资产的不同位速率质量(QP)的贴片中使用,以便组装要交付给客户端装置的视频帧。一般来说,可为靠近凝视向量或距凝视向量的任意角度距离内的贴片(或更广义地,贴片位置(position或location))指派较高的值,而可为与凝视向量直接相反(即,180º或π弧度)的贴片指派最低的权重值,其中(沿水平方向和竖直方向)位于中间的剩余贴片根据任何合适的数学关系(例如,线性、二次等)接收在最大值和最小值之间的变化的权重值。
过程1500B阐述了在示例实施例中关于实现基于凝视的控制的附加细节。在框1522,可根据(as a function of)凝视向量和方向向量之间的角距的余弦来确定贴片权重,所述方向向量与360º沉浸式视频资产的2D视频帧的合适的3D空间投影中的贴片位置对应。在框1524,可将贴片权重作为输入与动态带宽分配输入一起提供给贴片选择和带宽退火过程,这在本专利申请中的其它地方进一步进行描述。
在一个示例实施例中,取决于贴片相对于凝视向量所在的位置,做出将多少带宽分配给与该权重对应的该贴片位置的确定。在用向量表示凝视向量和贴片方向向量/>的情况下,可如下确定它们的点积:
在归一化时,即,如果[] = 凝视/|凝视|,则|a| = 1。同样地,通过指派[/>]=tile_direction/|tile_direction|,|b| = 1。因此,通过归一化,前述关系简化为:
并非将cos(θ)映射回到θ以确定权重,本发明的实施例涉及如下定义用于从cos(θ)映射到权重的数学函数:x = cos(θ);并且如果x≥0,则f(x) = {x+1},并且如果x<0,则f(x) = [α{x+1}],其中α =比例因子,例如0.1。因此,如果凝视向量和贴片方向向量之间的角距为0º,则cos(θ) = 1,并且f(x) = 2。同样地,对于远离凝视向量60º或300º的贴片,cos(θ) = 0.5,并且对应的f(x)值为1.5。在3D帧的等量矩形投影中,与用户看的位置正好相反的角度是180º,这得到cos(θ) = -1.0,从而获得0的权重f(x)值,而不管比例因子如何。因此,示例实施例可基于贴片质量可相对于帧内的凝视方向如何平稳或快速地变化而提供合适的比例因子。
图16A示出用于促进确定用户的凝视方向和贴片位置之间的角距的示例单位圆几何布置1600A。将用户位置1602设置为是3D球面空间的单位圆横截面的中心。通过参考沿第一参考轴(例如,X轴)的用户的凝视1604,可如上面阐述的那样确定贴片位置的不同角位移。作为说明,参考数字1606和1608是指远离凝视方向1604 30º和60º的两个贴片方向向量。一般来说,相对于凝视方向1604接近几乎±90º或其附近的贴片位置(例如,参考数字1610A/1610B)意味着用户的中到远的周边视觉,并且可利用加权的比例因子,使得可为此类区域中以及之外的贴片分配较快的带宽减小(即,较小的质量)。在方向向量位置1614处,贴片远离凝视方向1604 ±180º。
在示例实施例中,取代实际的角位移,可参考凝视方向提供对应于不同位置的余弦值。例如,如果贴片方向向量距凝视向量90º或270º,则可将x = 0.0馈送到加权函数,这得到1.0的权重。同样地,对于贴片方向向量离开330º,将x = 0.866提供给加权函数,从而得到1.866的权重值。作为进一步示例,如果贴片方向向量离开120ºdeg,则将x = -0.5提供给加权函数,从而得到0.05的权重值(假设α = 0.1),如果贴片方向远离凝视向量240º,则权重值相同。
此外,可将凝视向量信息和贴片方向向量信息两者转换成与在媒体准备期间在贴片编码中所使用的贴片栅格有关的适当的贴片坐标信息,以用于促进通过行和列来标识贴片,可将所述贴片坐标信息与权重信息一起输入到贴片选择和带宽退火过程。本领域技术人员将认识到,贴片坐标信息的确定取决于在示例实施例中所使用的投影映射。图16B示出导致球面显示环境1600B的等量矩形投影映射方案,其中贴片形成表面。一个示例实现提供了,沿{0, 1, 0}的方向设置北极1605,并沿相反方向设置南极1607,而贴片化帧的左边和右边沿{0, 0, 1}的方向,并且图像(即,贴片化帧)的中心沿{0. 0, -1}的方向。在涉及均匀贴片尺寸的示例实现中,本发明的实施例提供用于确定具有方向向量1611的贴片1609的位置的设备和方法,其可配置成针对nx(贴片列的数量)和ny(贴片行的数量)的给定栅格布置如下计算tx(贴片的列索引)和ty(贴片的行索引),其中θ是球面坐标系的极角,并且是球面坐标系的方位角:
在编码具有不均匀的贴片大小的情况下,可基于例如各个贴片的像素区域等来修改上述等式。作为说明,使用(i)作为贴片列i的左边的贴片索引,使用(j)作为贴片行j的上边的贴片索引,w是像素列的数量,并且h是像素行的数量,本发明的实施例可配置成确定以下内容,其中xi和yj两者均涉及“向下取整(floor)”运算符,以关于使用示例编码单元或块大小(例如,64像素)进行舍入(即,移除小数部分):
出于本发明的一个或多个实施例的目的,图16C说明示例360º沉浸式视频观看环境1600C。由交付管道1644为与订户驻地1640相关联的驻地节点或网关(GW)1642提供服务,以便提供沉浸式媒体内容。在一种布置中,可在由订户/用户所佩戴的合适的头戴式耳机中观看的3D全景虚拟空间中呈现此类沉浸式媒体内容。示例UE可包括由GW 1642提供服务的CPE 1646(诸如例如,游戏控制台、膝上型计算机或智能电话),它执行一个或多个游戏或媒体应用以将合适的信号提供给一个或多个装置,诸如安装到用户的头部1628或安装在用户的头部1628上的显示装置1636。此类装置的附加示例可包括可围绕用户显示或实现沉浸式观看空间的面盔(visor)、护目镜(goggle)、有线/无线头帽(headgear)或头盔(helmet)、面罩等。在示例显示装置布置中,可能有诸如陀螺仪、加速度计和磁力计等的附加仪器以促进头部跟踪,即,当用户1628移动她的头部时,模拟空间周围的视场也可能相应地与用户注视的空间的一部分(即,视口)一起移动。因此,在头部跟踪头戴式耳机中,视锥或视场以及用户的视口随着用户上下看和左右移动或斜移她的头部而四处移动。示例系统可包括所谓的6DoF(6自由度)布置,它可根据X-、Y-和Z-轴画出用户的头部以测量头部移动(又称为俯仰(pitch)、偏航(yaw)和横摇(roll)),这可用于跟踪用户在模拟3D全景观看空间中的视点。
作为说明,CPE 1646可体现为平台1648,平台1648包括一个或多个处理器1656、易失性和非易失性/持久存储器1654、输入/输出(I/O)接口1660(例如,触摸屏、游戏控制器、手跟踪手套等)以及一个或多个360度媒体/游戏应用1638,应用1638可为佩戴头戴式显示器(HMD)1636的用户1628实现3D虚拟观看空间或“屏幕”1620。在一种示例布置中,HMD 1636可经由无线接口1642无线地耦合到CPE 1646。多个解码器缓冲器1645可作为示例CPE平台1646/1648的一部分提供,它们对应于用户1628可用的一个或多个360º沉浸式视频内容通道。
也可单独或可选地提供附加的具3D媒体能力的CPE 1634(例如,平板电脑、平板手机或智能电话等)。与HMD 1636一起或分开操作的示例CPE设备1646/1634可操作以实现作为沉浸式环境的3D虚拟观看空间1620,其中用户1628可在3D环境中定义的竖直平面、水平平面之一或两个平面中以完整的360º移动她的视点,其中视口1624相应地变化。在附加或备选的布置中,与HMD 1636一起操作的CPE设备1646/1634可操作以实现可能部分沉浸式的3D虚拟观看空间1620,这是因为沿任一轴都小于360º。
移动和凝视检测模块1662可操作以在订户1628在观看空间1620内转移她的凝视时检测用户/订户1628的视点或凝视方向相对于3D虚拟观看空间1620的移动并将合适的凝视向量输出提供给服务节点。在一个实施例中,贴片加权模块可配置成在360º视频优化节点(例如,图2中的节点216)处操作,以基于凝视向量信息确定适当的贴片权重。在另一个实施例中,可在示例设备1646/1634和/或HMD 1636处本地执行贴片加权。
图17A是说明根据本发明的示例实施例的关于示例360º沉浸式视频优化过程的附加框、步骤和/或动作的流程图。特别地,过程1700A举例说明在一个实现中关于凝视/移动检测的客户端侧处理。在框1702,用户开始360º视频会话,随之客户端装置向后台节点(例如,图2中的节点238)发送关于请求的360º视频资产的请求(框1704)。在框1706,后台节点用请求的资产的URL作出响应,并向客户端提供视频会话ID。响应于此,客户端装置开始从在URL中标识的位置经由流播接收编码的视频资产,客户端装置的装置播放器对其进行解码并在3D沉浸式环境中渲染(框1710)。并且,客户端装置可开始监测或跟踪操作与正在进行的360º视频会话相连的客户端装置的用户的头部/眼部移动(框1708)。响应于检测到检测到移动(框1712),将关于当前视口的凝视向量信息提供给360º视频优化节点(例如,图2中的节点216),该节点在带宽退火和贴片选择过程中结合其它信息片段利用凝视向量信息(框1714)。在一个实施例中,可生成凝视向量信息,直到用户已经停止播放视频和/或没有检测到头部/眼部移动(例如,在一段时间内),如在涉及决定框1712和1716的迭代循环中所示。在一个实施例中,可按预确定的频率(例如,每秒40次)生成凝视向量。如将在下文所看到,在示例带宽退火和贴片选择过程中可能并未利用所有的凝视向量,这可配置成只在需要对贴片质量进行修改(例如,升级或降级)时才触发。当用户停止播放视频资产时,可向交付服务器生成适当的会话终止请求/消息(框1718),随之过程流可终止(框1720)。
下文阐述在示例实现中由客户端装置在可配置的时间窗口内提供的凝视向量的列表:
/>
在非归一化格式中,笛卡尔坐标系中的示例GV可包括(x, y, z)值,诸如[3, 5,1];[10, 4, 1]等。在归一化球面坐标系中,GV值可包括角度集合,诸如例如(59.04º,80.27º),其中r=半径已经归一化,θ=极倾角,并且=方位角。无论格式如何,尽管可按可配置的频率、时间周期等提供或以其它方式获得凝视向量信息,但是不是所有凝视向量在贴片权重确定过程中都可能需要被利用。例如,如之前关于某些实施例所提及的,可只响应于触发贴片选择和带宽退火过程而确定和利用贴片权重。因此,在此类实施例中,可周期性地丢弃未使用的凝视向量信息。
图17B是说明根据本发明的示例实施例的关于示例360º沉浸式视频优化过程的进一步方面的附加框、步骤和/或动作的流程图。特别地,在示例实现中除其它事情以外,过程1700B还说明关于基于凝视/移动检测的贴片权重确定以及在带宽退火和贴片选择中贴片权重的利用的服务器侧处理。在框1742,视频后台节点接收开始会话的用户请求,随之可向360º视频优化系统生成会话设立请求(框1744)。响应于获得诸如会话ID、会话的清单URL等的适当的信息片段,后台向客户端装置提供必要的信息以便开始所请求的视频资产(框1746)。具有贴片选择功能性的带宽退火和QoE管理模块(在一些实施例中又称为BWA-TS模块)可操作以在所有编码表示中获得、检索、读取和/或处理与所请求的视频资产相关联的清单(框1748)。在框1750,BWA-TS模块还可配置成从交付网络基础设施(例如,在示例实施例中的DSLAM/CMTS)接收关于客户端装置的视频会话的动态带宽通知。在框1752,BWA-TS模块可操作以从贴片化的编码流或表示中提取特定贴片。在框1754,BWA-TS模块可操作以接收关于360º沉浸式视频会话的带宽分配以及任何凝视向量信息的控制输入(框1756、1758)。如前所述,如果凝视向量输入最初不可用,则可使用默认值,默认值可基于内容类型、内容提供商策略、客户端装置类型和能力等是可配置的。响应于控制输入,BWA-TS功能性可操作以基于带宽和贴片权重来生成或以其它方式指示所选择的贴片集合(框1754)。贴片组合/拼接和流生成功能性(在一些实施例中又称为TC-SG模块)可操作以接收所选择的贴片集合(框1760),可如上文所述对所选择的贴片集合进行并置。因此,在一个实现中,将视频切片报头与选择的贴片并置,并进行适当地修改以包含适用的入口点偏移(框1762)。出于贴片拼接的目的,可在网络抽象层(NAL)访问单元等级执行某些操作,其中按贴片化层次将编码的视频数据组织到多个NAL单元中。实际上是包含整数数量的字节的分组的NAL访问单元可被视为是由二进制音频/视频流形成并经过压缩以促进位流操纵访问的基本流的逻辑子结构。在一个实现中,它是可能归属于涉及层压缩的同步系统中的最小数据组织,其中考虑维持视频参数信息(例如,空间/时间冗余度等)之间的一致性,可进行MPEG解码操作。
继续参考图17B,在框1764,给TC-SG模块提供包括组合贴片的一个帧/图片的数据段,该数据段可用合适的容器格式容器化,所述容器格式例如MPEG-2传输流容器格式(M2TS;有时又称为MP2TS)、MPEG 4第14部分(MP4)容器格式或ISO基本媒体文件格式(ISOBMFF)容器格式等(框1766)。交付服务器可配置成通过合适的网络将复用的图片/帧交付到客户端装置(框1768)。如在图17B的实施例中所阐述的,过程1700B的包括BWA-TS、TC-SG和交付服务的操作可继续进行,直到交付通信套接字(delivery communicationssocket)关闭或超时(框1770)。之后,可终止与客户端装置的360º视频会话(框1772)。
在示例实施例中,示例性360º沉浸式视频会话的带宽分配可以是19 Mb/s。可使用覆盖从具有16的QP值的高的105.6 Mb/s变化到具有30的QP值的低的7 Mb/s的位速率的128贴片栅格来利用完整的360视频来对视频进行编码。在用户的直接视野处以较高质量贴片为目标。贴片的质量与离用户的直接视野的距离成比例地降级(即,QP值上升)。BWA-TS的功能性确保不会超过360视频会话的整体带宽。贴片选择基于每个贴片的位速率。在示例中,当用户在一个场景中正在仰望多云的天空时,在该视口中提供的大部分贴片都是相对高质量的。当在此类场景中正在仰望时,贴片的内容相对静态(即,很少运动),并且因此没有那么多位供编码器专用于低运动区域。这导致显示来自用16的QP值编码的最高质量的视频贴片的能力。当360视频的带宽分配减少(例如,从19 Mb/s减少到7 Mb/s)时,贴片的质量也会降低。在前述示例中,直接视野中的最高质量的贴片可具有22.4 Mb/s的位速率和22的QP值。
图18A示出包括16乘8贴片阵列的贴片加权的帧1800A,其中在示例实现中,基于由客户端装置提供的凝视向量{0.783, 0.396, -0.481}为每个贴片指派权重。参考数字1802是指与凝视相关联的视口,其中根据本发明的教导,为这些贴片赋予最高值。本领域技术人员将认识到,随着视口变化,具有最高值的贴片区域也随之变化。在基于等量矩形投影的360º沉浸式视频显示空间中,具有最高值的贴片区域因此也四处移动,例如,如果用户直接向上或向下注视,则具有最高值的贴片区域移动到极区,或者如果用户直接注视图片中部,则具有最高值的贴片区域则移动到赤道。作为说明,图18C描绘了3D沉浸式显示或观看空间1800C,其中当用户直接向上看时,最高质量的贴片在北极区域1852附近,其中质量逐渐降低的贴片形成沉浸式空间的剩余部分,其中最低质量的贴片位于南极区域1854附近。同样地,图18D描绘了3D沉浸式显示或观看空间1800D,其中当用户直接向下看时,最高质量的贴片在南极区域1854附近,其中质量逐渐降低的贴片朝向北极1852延伸。
图18B示出在示例实施例中的装置帧缓冲器1800B。示出缓冲器中的三个连续帧1822A-1822C,每个帧具有P切片报头,但是在基于头戴式耳机视图的视口1820中包含不同的贴片集合。尽管当前帧1822A在它的视口1820中具有全部是I贴片,但是接下来的帧示为具有包含P贴片的视口1820。
如上文所提及,BWA-TS模块的功能性的一方面是确保示例360º沉浸式视频会话的整体带宽不超过指定的带宽分配(例如,基于网络运营商策略、内容提供商策略、订户/装置策略或其任何组合),同时还能最大化质量和观看体验。因此,可响应于用户的视野、带宽分配/限制、每贴片的位速率以及传送缓冲器模型来配置具有合适的位速率质量的优化的贴片选择,使得在直接视线中的贴片具有可能最佳的质量,其中进一步远离直接凝视移动,质量下降。
图19是说明根据本发明的一个或多个实施例的BWA-TS过程1900的各种框、步骤和/或动作的流程图,在一种或多种布置中,这些框、步骤和/或动作可与或者不与本公开的附加流程图的框、步骤和/或动作(重新)组合。如在框1902所阐述的,过程1900可开始于或响应于接收、检索或以其它方式获得由360º视频资产包装器(例如,图2中的包装器214)提供的关于可根据BIE或PE方案生成的多个贴片-编码的流的一个或多个流清单文件。一般来说,清单文件可包括描述与媒体输入流的多个位速率表示的特定一个位速率表示对应的每个贴片编码的位流的每帧的贴片编组的各种特性(的信息或数据包括位置URL、位速率、切片/块类型、媒体类型等)。在一种布置中,可按层次方式组织清单,即,其中某些清单用于描述整体编码的位流,而提供其它清单以用于描述流中的各个贴片。如本专利申请中的各处所阐述的,每个流是具有例如与用于位速率表示的对应QP和/或作为目标的位速率或其它指标有关或受其控制的视频质量的源媒体的特定位速率表示,其中贴片编码的位流的每个帧包括组织成每帧至少一个切片的贴片阵列,其中多个帧形成贴片编码的位流的GOP结构。在框1904,过程1900继续进行以接收、检索或以其它方式获得凝视向量信息,并且响应于此,基于例如凝视向量或通过默认设置确定与形成帧的贴片阵列对应的贴片权重。在框1906,过程1900继续进行以接收、检索或以其它方式获得与媒体输入流的多个位速率表示或相关联的贴片编码的位流对应的变体权重。在一种布置中,可将变体权重定义为是流的基于策略的属性,其中给予较高质量的流表示(即,变体)较高的优先级或权重,其可在涉及基于权重的背包包装选择(knapsack packing selection)的进一步计算中使用。在框1908,根据跨每个贴片编码的位流的GOP结构的帧集合上的每个贴片/GOP-元组组合的贴片权重和变体权重关于适合性度量值(adequacy metric value)做出确定。在框1910,过程1900继续进行以至少部分地响应于适合性度量值从用于组装帧的对应的贴片编码的位流中选择具有不同位速率质量的贴片,其中对选择的贴片的位速率质量进行优化以满足用于传送复用视频输出流的传送缓冲器模型。之后,可将选择的贴片的列表提供给贴片拼接器,以作为复用视频输出流的一部分生成包含选择的贴片的帧(框1912)。在示例实施例中,如本专利申请中的其它部分所提及,在装置侧实施例中执行贴片拼接的情况下,可将选择的贴片提供给客户端装置。
下文示出出于本发明的实施例的目的的示例流级清单:
/>
下文示出出于本发明的实施例的目的的涉及多个相位编码的流的基于DASH-MPD的示例较低级清单:
/>
/>
图20是说明根据本发明的实施例的关于示例贴片选择和带宽退火过程的附加框、步骤和/或动作的流程图。在一种布置中,如之前所指出的,可基于包括凝视向量、带宽分配/限制、流权重等的输入将背包组合优化用于贴片选择和退火。在框2002,在与视频优化相关联的服务器或节点处执行的过程2000开始于或响应于接收到360º沉浸式视频会话的请求。在框2004,过程2000继续进行以检索或以其它方式获得贴片化流清单定义,从而能够基于深层检查和处理确定视频特性的所有方面,以便提取所需的贴片,这可通过解析流清单来实现(框2006)。为每个流确定栅格布局,例如每帧的列和行(框2008)。在示例变型中,过程2000可向网络管理和编排节点注册以接收与所请求的会话的分配/确定的带宽有关的通知消息(框2010)。如果接收到带宽分配(框2012),则可进一步做出是否接收到凝视向量信息的确定(框2014)。之后,基于凝视向量信息来确定贴片权重(框2016)。可响应于可用带宽分配通知作为背包退火过程执行贴片选择(框2018)。在框2020,将选择的贴片提供给贴片拼接过程(在服务器或客户端装置处执行)。
图21A和21B是说明根据本发明的示例实施例的关于贴片选择和带宽退火过程的进一步方面的附加框、步骤和/或动作的流程图。特别地,图21A中所示的过程2100A举例说明了相对较简单的背包退火过程,它可能在计算上更昂贵,从而可能导致大约1秒以用于贴片拼接。在框2102,将贴片初始化为最低质量。可作为流变体权重和贴片权重之比来确定适合性度量,可关于所有<tile, GOP>-元组或组合提供适合性度量(框2104)。如在框2108所阐述的,关于升级具有最低适合性(即,最不适合)的<tile, GOP>-元组做出确定。做出是违反还是满足传送缓冲器模型的确定(框2110)。如果不满足(即,违反)缓冲器模型,则使该贴片/GOP组合没有升级的资格,并且过程流返回到考虑用于升级的下一个贴片/GOP组合,如在框2112所阐述的那样。如果没有违反缓冲器模型,则在质量方面升级该贴片/GOP组合(框2114)。前述过程可迭代地执行,直到没有低于最大质量的未被取消资格的贴片/GOP组合(框2116)。如果没有,则通过将选择的贴片发送到贴片复用和流生成过程来完成过程2100A,如在框2118所阐述的那样。
转到图21B,示出性能优化的贴片选择和退火过程2100B,在一些实现中,该过程可导致更快速的贴片部分,从而导致整体贴片接合时间大约为10毫秒左右。广泛地,可关于I贴片升级(它们比P贴片升级成本更高,因为I贴片包装更多的数据)施加惩罚因子(penaltyfactor),并且最初抢先进行一个“幼稚的(naïve)”升级序列,其中不针对传送缓冲器模型检查贴片升级,不管升级是否符合适合性度量。此外,由于ROI/视口中的贴片首先得到升级并且帧的其余贴片随后进行升级/更新,所以示例实施例可基于贴片位置在哪里计入惩罚。例如,如果贴片位置靠近凝视向量,则与该位置相关联的惩罚可能较低。此外,惩罚也可作为要升级的贴片的质量/类型相对于它在帧中的位置之间的平衡与贴片位置有关。在示例实施例中,可通过适当地调制在幼稚的升级序列中所使用的适合性度量来在退火过程中并入惩罚因子或组合的影响。
与图21A的实施例类似,将所有视频编码的贴片初始化为最低质量(框2132)。可作为流变体权重和贴片权重之比乘以惩罚因子来确定适合性度量,可关于所有<tile, GOP>-元组或组合提供适合性度量(框2136)。在框2134,可配置堆结构(heap structure)(例如,作为大存储器池)以便包含所有<tile, GOP>-元组的适合性值。在框2138,从堆中拉取最不适合的贴片,并记录在幼稚的升级序列或过程上。如果贴片质量可另外升级(框2140),则执行它,并确定经升级的贴片的适合性度量(框2142)。可在迭代循环中执行前述过程,直到堆为空并且已经升级完所有可升级的贴片为止(框2144)。可在幼稚的序列上实现二分搜索序列,以找到服从给定的传送缓冲器模型的最后一个有效状态(框2146),可将这最后一个有效状态用作起始贴片状态(框2148)。可配置新的升级堆以用于包含贴片/GOP状态(框2150)。从该堆中拉取最不适合的贴片/GOP组合(框2152),并针对传送缓冲器模型进行验证(框2154)。如果拉取的贴片/GOP无法满足缓冲器模型,则使它没有未来升级的资格(框2158)。否则,做出它是否可另外升级的确定(框2156)。如果是,则确定满足传送缓冲器模型的经升级的贴片/GOP组合的适合性值(框2160)。迭代地执行前述过程,直到新的升级堆为空为止,如在框2162所阐述的那样。如果是,则通过将选择的贴片发送到贴片复用和流生成过程来完成过程2100B,如在框2164所阐述的那样。
本文中阐述的示例退火过程有利地促进在视口或带宽改变时逐步地刷新帧,从而虑及在基于用户的视野增加质量时将时延最小化,同时不会使带宽过载。通常,当试图同时对所有贴片执行质量改变时,可能因为同时用P-贴片换成I贴片的结果而遇到若干个问题,这在编码的位速率方面是昂贵的。另一方面,用最小客户端缓冲器执行该替换可能在交付I切片/帧时造成太多的延迟。
在采用逐步刷新的示例实施例中,视频流不具有I帧(除了初始I帧或如即时解码刷新或IDR帧的任何其它特殊帧以外)。相反,视频流具有可分布在整个时间序列中的I块或I贴片,使得屏幕上的任何特定点例如通过如在本专利申请的之前章节中所详细描述的相位编码的流的方式按常规间隔得到I块。因此,在此类场景中,不存在用I块刷新所有像素的帧。通过执行逐步刷新退火,本发明的示例实施例可有利地配置成拉平(level out)帧大小(即,在编码的图像数据的量方面),并减少注入I帧以升级进入FoV或视口的贴片的质量的带宽后果。尽管PE方案可允许在时间/帧序列中选择性提早刷新贴片,但是它可施加一定的带宽成本(例如,由于在帧中具有多个I贴片,这可导致对于与该视频帧的传输对应的该时间间隔所需的带宽增加)。然而,涉及PE的示例实施例可配置成使得具有更稳定等级的字节/帧的优点胜过此类成本。
在帧序列中随着时间的推移,基于PE的实施例可允许操纵周围各种贴片的相位,直到I贴片再次在时间上大致均匀地分布为止。此类能力可配置成关于何时发生该重新分布取决于用户和/或内容,因为它要求用户保持他们的视野足够长时间稳定以便发生重新分布。为了选择贴片来填充带宽,示例实施例可涉及:对将3个GOP伸展到未来的帧的字节大小进行建模(这个选择是任意的);并基于缓冲器模型(例如,在前瞻性场景中具有3个GOP)执行假设的提早刷新(HER)。基于在图21A和21B中所阐述的实施例,可看出,此类过程通过针对所有贴片挑选最低质量的流开始,并且然后对于当前帧和未来帧两者考虑贴片的每个GOP,并评估升级该GOP是否将违反任何带宽约束(所述带宽约束是各个帧大小和缓冲器考量的组合)。如果考虑将当前(对照未来)贴片GOP组合升级到高于已经交付的I帧的质量,则本发明的实施例可在时间上重新对齐该贴片,以从I帧开始(这可能影响接合窗口中的其余帧)。一旦获得了可能升级的列表,便可根据质量和贴片在FoV中的位置对它们进行加权(因此对于升级,靠近视觉中心的贴片受到青睐)。在一个实现中,前述升级步骤可重复,直到缓冲器约束使得不可能再进行任何更多的升级为止。
应领会到,取决于前瞻性GOP建模,示例升级过程可在时间和空间上四处移动。在一种布置中,每个贴片可具有3-4个GOP视界(horizon),它们各自可随着过程的迭代而升级,其中未来的GOP升级是为了潜在的未来增强以便未来覆盖3-4个GOP的提早刷新。
在考虑基于HER的实现时,可标识和/或采用几个潜在的度量来获得合适的权衡:(i)停播静寂时间(dead air),(ii)最大缓冲器等级,(iii)结束缓冲器等级,以及其它。在一个示例实现中,可将最大缓冲器等级作为HER升级的主导准则进行加权,其中可释放到适合的带宽以允许贴片GOP质量升级。
如在图21B的实施例中所阐述的,一旦在升级迭代中到达末端,便可使用贴片集合来复用切片/帧,由此可计算复用的切片/切片的字节大小,并且可记录它对传送缓冲器的影响,从而使得根据给定的传送缓冲器模型准确地约束下一个切片/帧。当下一次对帧进行接合(例如,用户凝视改变,从而导致要进行调整)时,可重复背包退火过程,其中相对于之前的操作对一个额外的帧进行建模,这可验证和/或微调背包/退火过程。
技术人员将意识到,在图21B的实施例中所采用的堆存储器结构对于跟踪可升级的贴片特别有利,这是因为可避免在每次迭代时重新计算贴片GOP升级的分数。如前面所提到的,为贴片评分定义适合性度量,其用于选择要升级的贴片,其中以合适的数学关系提供诸如variant_weight、tile_weight和惩罚的参数,以捕获期望的升级场景。因此,可将variant_weight参数定义为是编码的流的属性,并且较高质量的流变体(具有较低QP)具有较高的variant_weight。一些示例variant_weight是{1/QP}、{100-QP}或在上面阐述的清单示例中定义的值,或者它可以是整个流的位速率。如上面阐述的,也可根据贴片相对于凝视的位置提供tile_weight。一般来说,位于用户的直接FoV或ROI/视口中的贴片可被赋予较高的tile_weight。配置在图21A/B的实施例中所阐述的示例适合性度量公式,使得,当流质量增加时,适合性值也增加,并且与距凝视向量更远的相同质量的贴片相比,更靠近凝视向量的贴片具有更低的适合性(这将退火过程配置成在升级远离凝视向量的贴片之前升级更靠近凝视向量的贴片)。
此外,如上所述,示例实施例还包括对升级过程中的贴片进行评分时的惩罚因子。在一种布置中,当要求用I贴片提早刷新时,可能会施加惩罚,其中要把当前GOP中的贴片升级到超过它在之前的切片/帧中具有的质量。此类惩罚具有增加该贴片的适合性的效果,这相对于堆中的其它贴片延迟升级。这允许在凝视已经变化足够大时升级贴片,但是在边缘情况下推迟提早刷新。
对于本领域技术人员而言将显而易见的是,在本发明的范围内,在一些变型中,也可将附加/备选的公式用于对贴片升级进行评分。
图22说明根据本发明的示例实施例的供贴片选择和带宽退火布置中使用的传送缓冲器模型过程。一般来说,传送缓冲器模型可配置成与取决于实现的帧速率(例如,30fps、60 fps等)一致,其中可将如何将数据添加到缓冲器中以及从缓冲器中向外传送数据的时间变化参数化,以便确定是否以及何时可能存在溢出(即,违反)。在示例传送缓冲器模型2200中,b 0 是起始缓冲器等级,b i 是在添加访问单元或NAL单元之前的缓冲器大小,n i 是访问/NAL单元的大小,并且a i 是在添加访问/NAL单元之后的缓冲器大小,其中a i = b i + n i i≥ 1。假设传送速率为r,并且Δt = 1/帧速率,则获得以下关系:
可如下定义buffer_size参数:
根据前述模型,如果Max(a i ) > buffer_size,则可将它指示为缓冲器溢出状况。因此,当依照贴片升级过程添加不同的ni时,可相对于计算的缓冲器大小检查缓冲器端点等级,以便确保在升级过程中不引起缓冲器违反。
转到图23,其中描绘了这样一种布置2300,在该布置中出于本专利公开的实施例的目的,客户端UE装置可配置成执行360º沉浸式视频优化的某些方面,这可能涉及基于ABR的过顶(Over-the-Top)(OTT)流播。具有合适的360º显示装置的用户2310可用连接的UE装置2302进行操作,UE装置2302包括部署成向显示装置生成合适的重放信号的连接的播放器2308和视频优化客户端模块2306。在一个实施例中,播放器2308可包括配置有合适的视频解码器2314、显示渲染器2316、音频解码器2318和声音渲染器2320的HEVC或AV1播放器。与上文阐述的示例实施例类似,可给连接的UE装置2302提供凝视跟踪模块2312,UE装置2302可配置成在ABR流播环境中消费通过互联网2304交付的360º沉浸式视频内容。
客户端优化模块2306优选包括360º沉浸式视频接口模块2321,模块2321包括清单解析器2328、视频贴片和音频流下载器2330、带宽估计模块2326和贴片选择模块2324,这些模块可配置成在经过必要的修改之后以与上文阐述的实施例类似的方式在以装置为中心的合适修改下进行操作。可基于关于特定内容的清单2340经由互联网2304向诸如内容提供商网络或基于云的存储设备的网络位置生成HEVC贴片/音频请求2344。可经由路径2342接收请求的视频贴片和音频数据。从凝视跟踪模块2312(例如,经由路径2322)提供给沉浸式视频接口模块2321的凝视向量信息与带宽估计一起可用于选择每帧的贴片,可经由视频信号路径2331将贴片提供给动态分配的视频贴片缓冲器2332。同样地,可经由音频信号路径2338将对应的音频段提供给音频缓冲器2336。可将不同质量的贴片提供给贴片组合器2334,贴片组合器2334向播放器的视频解码器2314生成复用的编码视频流2346。可从音频缓冲器2336向音频解码器2318生成编码的音频流2348。对提供给播放器2308的相应渲染器2320、2316的解码的音频和视频数据进行适当地渲染,以便在由用户的显示装置实现的沉浸式环境中显示/呈现,这本质上类似于前面所阐述的示例实施例。
图24描绘了根据本发明的实施例的计算机实现的设备的框图,该设备可(重新)配置和/或(重新)布置为平台、节点或元件,以实现360º沉浸式视频处理、准备和贴片选择优化的一个或多个方面。取决于实现和/或网络架构,设备2400可被配置或以其它方式集成在适合于在示例环境(例如,如图1和2中所示)的一个或多个层次等级上操作的不同布置。可提供一个或多个处理器2402作为合适的计算机架构中用于提供对设备2400的整体控制的部分,其中(一个或多个)处理器2402可配置成执行存储在适当的存储器模块或块(例如,持久存储器)中的各种程序指令2408,包括特定于如上文详细描述的媒体准备、预处理、基于BIE/PE的贴片编码(包括自适应位速率编码/转码)、优化的贴片选择和带宽退火、贴片化媒体包装、贴片拼接等的附加模块或块。例如,此类模块可包括基于贴片的PE/BIE编码器2404、ABR编码器/转码器2406、GV处理和贴片权重处理模块2413、贴片选择和退火模块2416、包装器和清单生成器2410、投影映射器2418等。并且,取决于设备2400的实现,在示例实施例中,可提供包装的媒体数据库2419。因此,取决于网络层次等级和/或集成,可作为设备2400的部分提供各种网络接口,例如I/F 2414-1至2414-L以及接口2412-1至2412-K,所述I/F 2414-1至2414-L可操作用于实现与包括视频后台元件、DRM实体、原点服务器、客户端控制器节点、源媒体节点、管理节点和高速缓存数据库的网络基础设施元件的通信,所述2412-1至2412-K用于实现与例如包括交付服务器、DSLAM/CMTS元件、RAN基础设施元件、驻地网关节点等的一个或多个下游节点的通信会话。
图25描绘根据本专利公开的一个或多个实施例的配置用于执行各种客户端侧过程的示例客户端UE装置或订户站2500的框图。客户端装置2500一般代表在上面描述的一个或多个图中所示的各种观看装置,并且取决于实现,它可包括配置用于关于媒体请求生成、凝视向量生成、贴片选择和带宽估计等(单独或按其任何组合)执行任何装置侧过程的适当的硬件/软件组件和子系统。提供一个或多个微控制器/处理器2502以用于整体控制客户端装置2500并用于执行体现在可以是装置2500的存储器子系统2511的一部分的一个或多个持久存储器模块中的各种存储的程序指令。例如,包括VR应用的360º沉浸式视频客户端应用2513A可与带宽估计器2513B和相关联的贴片选择器2513C一起可操作,它们可作为存储器子系统2511的一部分提供。可提供清单解析器2517,以促进到适当的位置的媒体请求的生成。由参考数字2502所指的控制器/处理器复合体也可代表与合适的视频和音频接口(没有特别示出)相关联地操作的其它专业处理模块,诸如图形处理器、视频处理器、数字信号处理器(DSP)等。可包括涉及调谐器、解调器、解扰器、MPEG/H.264/H.265/AV1解码器/解复用器或与之一起操作的适当的网络接口(诸如网络I/F模块2504和2506),以用于处理经由DSL/CMTS网络2598或卫星网络2596接收的IPTV和其它内容信号并与之通过接口连接(interface)。在将STB配置为示例客户端装置或应用的情况下,合适的解调器还可被包括。一个或多个媒体播放器2514可被提供以便连同客户端装置2500的其它子系统(例如,用户接口2520、视频解码缓冲器和一个或多个暂停缓冲器(统一示为缓冲器2519)等)一起操作,其可进一步配置有附加的子系统以用于促进用户控制媒体重放,包括通道改变请求和任何技巧模式操作。例如,关于正在播放的特定360度沉浸式视频资产,客户端/用户控制功能可包括暂停、恢复、快进、倒回、查找、做书签(bookmarking)等。示例媒体播放器可配置成基于已知或迄今未知的标准或规范用一个或多个A/V编码器/解码器(编解码器)功能性进行操作。
取决于装置配置,还可提供其它I/O或接口,诸如沉浸式显示接口2515、触摸屏或键盘接口2520、USB/HDMI端口2518、以太网I/F 2508以及短程和广域无线连接性接口2512。还可包括各种运动检测和凝视跟踪传感器2516,其中一些传感器可包括陀螺仪、加速度计、位置传感器等。在示例实现中,可包括硬盘驱动器(HDD)或本地DVR系统2510以用于本地存储各种程序资产。合适的电源块2522可包括AC/DC电力转换,以为装置2500提供电力。应领会到,装置2500的实际电力架构可能根据使用的硬件平台而变化,例如取决于在特定平台中使用的核心SoC(片上系统)、存储器、模拟前端、模拟信号链组件和接口等。
假定在上面实施例中的UE装置接收每帧覆盖整个360º空间的位速率分辨率集合以便使视口中的质量最大化,则即使在变化的带宽状况中基于本文中阐述的带宽管理和QoE技术,也可在视频的2-3个帧内实现极快速的质量升级。将领会到,只有当正在流播视频时才可能发生此类升级。如果用户在360º沉浸式视频会话中暂停视频流,则当用户改变进入暂停的视频帧的凝视时,视频质量不会改变,这在用户在暂停的帧的360º空间中环顾四周时导致高质量的区域(在暂停视频时用户直接观看的区域中)和变化的质量,从而在暂停模式时引起较差的QoE。基本上,帧的混合质量锁定在用户选择暂停功能时的状态。并且,有时位速率可能非常低且不平衡,使得可能不可能每秒以恒定的帧来播出。即使用户可能想要等待/暂停片刻并接着继续播出,也可能会出现这样一种情况,其中可能仍然存在具有许多失速(stall)的较差质量的播出,而没有保留每秒恒定帧的状况。
因此,在本发明的进一步方面中,下文阐述关于实现用于在暂停视频会话期间在360º沉浸式视频中提供质量控制的基于服务器的系统和方法的实施例。在一个实现中,基于网络节点216(图2中所示)的360视频优化系统215的实施例的布置可配置用于在360视频会话处于暂停模式时对暂停的视频帧提供暂停控制和视频质量均衡化。并且,还可提供在360视频会话处于暂停模式时关于未来帧(即,跟随在暂停的视频帧之后的帧)的质量优化。如将在下文进一步看到,还可在结合客户端装置的视频解码缓冲器的进一步的布置中提供该装置中的一个或多个“备份”暂停缓冲器,使得为跟随在暂停的帧之后的相对大量的未来视频帧可主动改善视频质量。
图26A描绘根据本发明的实施例的示例网络环境2600A,其中可关于在暂停时的360º沉浸式视频会话实现基于服务器的视频质量优化方案。因为示例网络环境2600A大体上类似于上面描述的网络环境200,所以将意识到,在经过必要的修改之后,图2的描述在这里同样适用,以便基于上面阐述的合适的贴片编码方案来实现视口优化的贴片拼接和流生成。因此,可基于例如边缘服务器2608、编码器2610、包装器2614和视频资产数据库2640的相关基础设施组件来对提供给CDN 2604的编码的视频源流2602进行处理、贴片编码、包装和存储。暂停控制模块或子系统2654可作为视频优化系统/节点2615/2616的一部分被提供和/或与之相关联,暂停控制模块或子系统2654可配置成与视频优化系统/节点2615/2616的各个模块通过接口连接以及经由接口2652与用户/设备2636通过接口连接以用于除其它事情以外还处理暂停和恢复视频会话的用户请求,如将在下文详细阐述的那样。
广泛地,本文中的实施例提供一种系统,其中当用户选择暂停360º视频会话时,由与在选择暂停时在用户的FoV中的最高视频质量匹配的贴片集合生成替换帧。在此类布置中,将替换帧或其静态图像提供给UE装置,其中质量跨整个360º空间将是均匀的,从而与选择暂停功能时用户体验到的最高质量匹配。在另一类实施例中,可利用暂停期间的时间来用跟随在暂停帧之后的帧填充UE装置的解码缓冲器和/或暂停缓冲器(如果提供了的话),其中跟随帧由高质量(HQ)贴片组成(例如,在选择暂停时在用户的直接FoV中的最高视频质量)。进一步的变化可涉及通过将暂停时间用于渐进地下载360视频而用尽可能多的帧(受到例如暂停时间和装置存储器的约束)填充不同的解码缓冲器。下文将阐述关于前述类别的实施例的附加细节和进一步变化,其中至少一部分可与根据本文中的教导提供的基于服务器的暂停控制模块或子系统相关联地实现。
图26B描绘根据本发明的实施例的配置为暂停控制模块、组件或子系统2600B的设备的示例实施例,该设备可与配置成在图26A中所示的网络环境中操作的视频优化节点相关联,以便在暂停360º沉浸式视频会话时实现视频质量优化。在一种布置中,暂停模块或子系统2600B可配备有用于与UE装置播放器通信(例如,用于接收和处理暂停/恢复请求2686)的接口以及用于接收GV/运动信息的接口2694。可提供到做书签模块的接口2684,以便对关于正在由视频优化系统/节点(例如,节点/系统2616/2615)提供服务的360º沉浸式视频会话的暂停请求做书签。并且,在示例实施例中,可提供接口2688、2690和2698以实现与带宽分配/估计以及贴片选择和流生成模块的通信,从而促进生成在暂停帧的整个360º空间中具有相等视频质量的自定义替换帧。此外,出于本发明的另一个示例实施例的目的,可提供接口2696,以促进生成具有相等视频质量的解码的自定义替换帧的静态图像(例如,基于图3的示例贴片编码器300的解码图片缓冲器326)。
应领会到,暂停控制模块功能的至少部分可通过执行程序指令2696来实现,所述程序指令2696可用一个或多个专用处理单元操作或与视频优化节点/设备2616/2615共享,如由(一个或多个)处理器2682举例说明。因此,暂停控制模块2600B的实施例还可提供为网络节点布置的一部分,诸如上文描述的与具有合适的(一个或多个)视频解码缓冲器、(一个或多个)暂停缓冲器和静态图像显示能力的UE装置2500一起可操作的节点2400。因此,在本发明的示例实施例中,在经过必要的修改之后,关于可在其内实现暂停控制模块2600B的示例端到端网络环境,与图24和/或图25有关的详细描述的至少部分可适用。
图27A-27D描绘根据本发明的一个或多个实施例的对于在视频会话暂停模式期间的与具有暂停控制的360º视频优化节点/服务器和示例UE/客户端装置之间的消息流有关的各种消息流程图。特别地,图27A的消息流程图2700A说明用于在UE客户端装置2636发起暂停时生成单个自定义替换视频帧的消息流。依照本公开的正常360º视频流播操作,UE客户端装置2636可操作以将凝视向量信息和流播会话ID信息发送到示例视频优化服务器/节点2615/2616,如由消息2702举例说明。可在装置处响应于用户输入而生成暂停请求消息2704,以暂停流播会话,其中请求2704可配置成包括流播会话ID以及正在暂停的视频帧的时间码。在一种布置中,时间码信息可包括以下信息中的至少一种信息:呈现时间戳(PTS)信息,解码时间戳(DTS)信息,节目时钟参考(PCR)信息,系统时钟参考(SCR)信息,挂钟参考信息,全球定位系统(GPS)计时参考信息,以及关于在流播会话中正在播放的特定沉浸式视频资产的运行时参考信息。响应于此,生成与暂停的贴片化视频帧对应的单个自定义替换视频帧,并将它提供给UE客户端装置2636,由流程路径2706举例说明,其中将自定义替换视频帧编码/组装为X帧,该X帧具有预测性编码的(P)帧的切片报头,并且包括选择成具有等于在基于从UE客户端装置2636接收的用户凝视向量信息的视口中正在呈现的特定视频资产的最高视频质量位速率表示的视频质量的仅内编码的数据块(I块)。技术人员将认识到,在示例布置中,可作为上文描述的BIE编码或PE编码方案的一部分由本发明的贴片编码器300生成此类自定义替换X帧。
图27B的消息流程图2700B说明在一个实施例中关于恢复暂停的视频流播会话的消息。如前所述,UE客户端装置2636可操作以将凝视向量信息和流播会话ID信息发送到示例视频优化服务器/节点2615/2616,如由消息2708所示。可在装置处响应于用户输入而生成恢复请求消息2710以重新开始流播会话,其中恢复请求2710可配置成包括流播会话ID以及暂停的视频帧的时间码。响应于此,视频优化服务器/节点2615/2616针对跟随在自定义替换帧之后的帧开始恢复基于FoV的贴片选择和流生成,如由流路径2711所示。之后,作为正常操作的一部分,UE客户端装置2636继续将凝视向量信息和流播会话ID信息(例如,按如上所述的周期性间隔)提供给示例视频优化服务器/节点2615/2616,如由消息2712所示。
图27C-27D的消息流程图2700C和2700D涉及根据另一个实施例的关于视频流播会话的暂停和恢复的消息,其中提供了包括高质量贴片的解码替换帧的静态图像。如前所述,UE客户端装置2636可操作以将凝视向量信息和流播会话ID信息发送到示例视频优化服务器/节点2615/2616,如由消息2714所示。与图27A中的暂停请求2704类似,可在装置处响应于用户输入而生成暂停请求消息2714,以暂停流播会话,其中请求2714配置成包括流播会话ID以及正在暂停的视频帧的时间码。响应于此,生成静态图像并将它提供给UE客户端装置2636,如流程路径2718所举例说明,其中静态图像是如上面所论述的编码为包括全部是I块的贴片但是具有P切片报头的X帧的自定义视频帧的渲染图像。
在消息流程图2700D中,即使在暂停期间,例如作为正常控制消息传递的一部分,UE客户端装置2636可继续将凝视向量信息和流播会话ID信息提供给视频优化服务器/节点2615/2616,如由消息2720所示。在某个时间点,可在装置处响应于用户输入而生成恢复请求消息2722,以重新启动流播会话,其中恢复请求2722可配置成包括流播会话ID以及暂停的视频帧的时间码。响应于此,视频优化服务器/节点2615/2616针对跟随在自定义替换帧之后的帧开始恢复基于FoV的贴片选择和流生成,如由流路径2724所示。之后,作为正常操作的一部分,UE客户端装置2636继续将凝视向量信息和流播会话ID信息提供给示例视频优化服务器/节点2615/2616,如由消息2726所示。
对于技术人员而言将显而易见,尽管在示例实施例中可在暂停时间周期期间继续采集用户凝视向量和运动跟踪信息并将它们传送到视频优化节点2615/2616,但是该信息并未被视频优化节点2615/2616用于贴片选择和基于视口的视频质量优化。在示例实施例中,可在服务器/节点处忽略和/或丢弃此类GV/运动跟踪信息。只有在恢复流播会话时,凝视向量信息才可再次用于贴片选择和带宽/QoE优化目的,如在本公开的较早章节中所阐述。在其它布置中,UE客户端装置可配置成在暂停时减少传送GV数据的次数(即,频率)和/或完全停止发送GV数据,以便减少暂停模式期间的消息流。
转到图28A-28D,其中描绘说明在360º沉浸式视频会话处于暂停模式时与基于服务器的视频质量优化方案有关的各种框、步骤和/或动作的流程图,这些框、步骤和/或动作可根据本发明的一种类别的实施例组合。特别地,图28A的过程2800A阐述了可在配置成实现视频优化和暂停控制的网络节点处执行的示例方法学。在框2802,网络节点从客户端装置接收暂停请求,以暂停关于媒体资产的媒体输入流的360度沉浸式视频会话,其中暂停请求对应于具有存储在客户端装置的视频解码缓冲器中的混合质量贴片的贴片化视频帧。如上面阐述的,暂停请求可包括暂停的视频帧的时间码信息以及沉浸式视频会话的会话ID信息。在框2804,生成自定义替换暂停帧(X帧),该自定义替换暂停帧具有P帧的切片报头,但是只包括具有选择成具有等于正在提供给客户端装置的基于用户的凝视向量信息的视口的媒体输入流的最高质量位速率表示的视频质量的内编码数据(I块)的I贴片。如之前详细描述的,将视频资产的媒体输入流编码为多个位速率表示,每个位速率表示具有单独的视频质量,该视频质量与用于每个位速率表示的量化参数(QP)值有关。因此,取决于贴片编码器实现,位速率表示可包括PE位流或BIE位流。在框2806,将自定义替换暂停帧提供给客户端装置,以在暂停流播会话时替换暂停的视频帧以用于显示。在框2808,可对暂停的视频帧的时间码信息和流ID信息做书签。在将来的某个时间点,在从客户端装置接收到恢复请求时,过程2800A响应于从客户端装置获得的当前凝视向量信息并且基于做了书签的信息对帧(重新)开始贴片选择和流生成(框2810)。
在图28B中描绘的过程2800B说明可根据示例实施例相对于过程2800A在用户客户端装置处执行的方法学。在框2822,(例如,响应于用户控制输入)可生成暂停请求,以暂停关于存储在装置的视频解码缓冲器中的贴片化视频帧的360度沉浸式视频会话,暂停请求包括暂停的视频帧的时间码和沉浸式视频会话的会话ID。在框2824,将暂停请求提供给服务网络节点,诸如例如具有暂停控制和做书签功能性的360度沉浸式视频优化节点。在框2826,接收如上面所述的自定义替换暂停帧(X帧)。响应于此,解码并显示自定义替换暂停帧,而不是混合质量的暂停的视频帧,如在框2828阐述的那样。在一个实施例中,可转储清除跟随在视频解码缓冲器中的暂停的视频帧之后的后续视频帧(如果有的话)(框2830)。在恢复视频会话时,可接收由视频优化节点响应于从客户端装置获得的当前凝视向量信息并且参考做了书签的计时信息生成的视频帧(框2832)。
在图28C中描绘的过程2800C说明可根据一些变化在视频优化节点处进行的进一步步骤、框和/或动作,它们可能涉及与上面阐述的过程2800A的步骤/框/动作组合。在框2852,当暂停360度沉浸式视频会话时,视频优化节点可继续生成包括最高质量(例如,等于在生成/接收到暂停请求时交付的视口中的贴片的视频质量)的贴片的视频帧,而不考虑用户凝视向量信息(如果仍然由UE客户端装置提供的话),其中所述视频帧包括在暂停的视频帧的时间码之后的帧。在一种布置中,此类后续帧可包括X帧。取决于客户端装置的解码和暂停缓冲器布置,可经由基于可用带宽的交付机制(例如,渐进式下载)将高质量的后续视频帧提供给客户端装置以便在客户端装置处缓冲(框2854)。在框2856,过程2800C可在合适的时间(例如,基于来自客户端装置的消息传递)基于用户凝视向量信息切换到或以其它方式(重新)开始贴片选择和帧生成,如前所述。
在图28D中描绘的过程2800D阐述了与客户端侧操作有关的一些附加方面,这些附加方面可能涉及与上面阐述的过程2800B的步骤/框/动作组合。在框2872,如果对于继暂停帧之后的帧,客户端装置已经将数据下载到它的视频贴片缓冲器中(取决于最新的可用视口信息,后续帧潜在地具有不同的贴片质量),则可转储清除此类混合质量的后续帧。在一种变型中,可通过获得和填充作为X帧生成的后续帧的帧数据而允许视频解码缓冲器(重新)增长(框2874),可经由取决于可用带宽的渐进式下载交付机制对其进行检索。在恢复视频会话时,可回放具有高质量贴片的后续帧(例如,X帧),从而在延长的时间周期内提供更佳的视频体验(框2876)。随着包括X帧的HQ视频继续得到播出,解码缓冲器可能会耗尽至较低状态(例如,接近饥饿(starvation)),随之可检索和填充混合质量帧(框2978)。技术人员将意识到,取决于如何实现和管理视频解码缓冲器以及是否提供了备份暂停缓冲器,关于在从暂停模式恢复之后HQ重放体验可延长多长时间,可实现多种变化。
例如,在暂停缓冲的一种变型中,客户端装置的实施例可配置成在暂停时间期间以指定的质量Q缓冲视频的最大可能部分。由于解码器缓冲器可能不够大,所以如前所述,在单独的暂停缓冲器系统中可能会缓冲溢出(例如,一个或多个暂停缓冲器,取决于溢出,每个暂停缓冲器“级联”到下一个缓冲器中)。如果暂停时间足够长,则客户端装置可配置成缓冲视频的很大一部分,例如多个GOP乃至整个视频资产。当恢复视频时,客户端装置播放器可配置成首先播放在(一个或多个)暂停缓冲器中下载的视频帧,直到缓冲器几乎耗尽(例如,取决于(预先)配置的底值或阈值)。之后,当接近缓冲器阈值时,可控制播放器以便切换到常规解码缓冲器以用于播出,其中装置基于例如ABR感知和GV相关的视口信息开始贴片化流播。在相关的变型中,示例布置可配置成监测和/或提供带宽估计和可用位速率,并确定在暂停时间期间位速率已经增加,并且相应地关于在暂停期间已经下载的贴片以及要下载的任何未来帧执行适当的动作。例如,可转储清除暂停缓冲器,并且可开始新的下载/重新填充过程以获得甚至更高质量的贴片。备选地或另外地,系统可配置成维持质量Q的暂停缓冲器(在可在未来的某个时间点将位速率/带宽减小到质量Q的情况下),并开始在新的暂停缓冲器中以更高的质量缓冲视频。技术人员将意识到,此类“分层的(tiered)”缓冲系统能够实现最少HQ贴片的下载,当条件允许时,可增加其质量,从而导致能够以与暂停视频时没有缓冲的场景相比相等或大有改善(而不是更差)的质量服务于视频。可作为在框2874、2876和2878中阐述的动作/功能的至少一部分和/或对其的附加提供如上面阐述的此类实施例。
在暂停缓冲的仍有的进一步的变型中,可配置客户端装置的实施例,使得可生成适当的控制信令以只缓冲采用质量Q的少量后续帧,直到贴片解码缓冲器充满为止。为了在质量改善和低时延之间取得平衡,可动态地或以固定方式配置帧的数量。在仍有的进一步的变型中,可下载预先配置的数量的GOP或GOP的一部分以用于暂停缓冲,例如包括下载某种质量(Q)的帧,直到单个GOP结束为止。下文将进一步阐述关于这些和其它变型的附加细节。
图29A和29B描绘了说明在360º沉浸式视频会话处于暂停模式时与基于服务器的视频质量优化方案有关的各种框、步骤和/或动作的流程图,这些框、步骤和/或动作可根据本发明的另一类别的实施例(重新)组合。与上面阐述的实施例类似,图29A的过程2900A涉及在具有暂停控制功能性的视频优化服务器节点处执行的方法学,该方法学可响应于从客户端装置接收到关于正在进行的360度视频流播会话的暂停请求节点来实现(框2902)。过程2900A和过程2800A之间的关键区别是,不是将自定义替换暂停视频帧提供给客户端装置,而是过程2900A涉及:解码自定义替换暂停视频帧(即,如上所述具有从最高质量选择的所有I贴片的X帧);生成解码的自定义X帧的静态图像并将它提供给客户端装置以代替显示暂停的视频帧用于显示。在框2906和2908阐述了这些动作。根据一种变型,自定义X帧的静态图像可基于诸如例如联合图像专家组(JPEG)规范或某种其它图像文件交换格式的标准。此外,在一个示例实施例中,过程2900A的其余步骤和功能可大体上类似于过程2800A的对应步骤和功能,其描述在经过必要的修改之后在这里同样适用。因此,这里不提供对框2904、2910和2912的详细描述,除了注意由于客户端装置可配置成不转储清除它的解码缓冲器,所以在该实施例中基于暂停的视频帧的时间码和会话ID对暂停的视频帧做书签可适当地修改为可选过程之外,如将在下文描述的那样。
图29B中阐述了在客户端装置处执行的对应过程2900B,它大致上等同于上面描述的图28B的过程2800B,一个关键区别是,在流播会话处于暂停模式时,接收静态图像而不是自定义视频帧以用于渲染和显示,如在框2928所阐述的那样。另一个关键区别是,在过程2900B中没有视频解码缓冲器的转储清除。而是,保留跟随在暂停的视频帧之后在视频缓冲器中已经接收的视频帧,在恢复重放时,对这些视频帧进行解码、渲染/显示,如在框2930所阐述的那样。由于这些后续视频帧基于在暂停请求之前提供的凝视向量信息由具有变化质量的贴片组成,并且因为在生成恢复请求时用户凝视可能不同,所以在该实施例中,在恢复重放时,在匹配具有凝视优化的高质量贴片的视口时存在几个帧的延迟。之后,在恢复视频会话之后的某个时间点,客户端装置继续接收由视频优化节点响应于从客户端装置获得的当前凝视向量信息生成的视频帧并用这些视频帧填充视频解码缓冲器(框2932)。
图30A是说明根据一个实施例的关于用于促进暂停控制的服务器过程3000A的附加细节的流程图,该流程图可与本文中阐述的一个或多个流程图(重新)组合。在框3002,网络节点(例如,与优化节点相关联的视频交付服务器)接收暂停请求,所述请求包括当前正在流播的视频资产的视频帧的帧号或ID、时间码以及流播会话ID。在框3004,与服务网络节点相关联的暂停模块子系统向带宽退火和QoE管理子系统(例如,上文描述的子系统218/2618)请求当前最高质量贴片选择的列表。在框3006,带宽退火和QoE管理子系统218/2618暂缓选择和组装与该流ID匹配的流会话的贴片。在框3008,网络节点保存帧号、时间码和流ID。在框3010,暂停模块子系统针对正在交付用于关于暂停帧的具有流ID的会话的最高质量贴片从贴片化流中检索由I贴片组成的P切片。响应于此,暂停模块子系统将具有I贴片的P切片(即,X帧)提供给贴片组合器和流生成器子系统(例如,子系统222/2622),如在框3012所阐述的那样。之后,与之相关联的交付服务器将经更新的暂停帧传送到客户端装置(框3014)。
图30B是说明根据一个实施例的关于用于促进暂停控制的客户端装置过程3000B的附加细节的流程图,该流程图可与本文中阐述的一个或多个流程图(重新)组合。在框3022,操作合适的客户端装置的用户选择暂停正在进行的360度视频会话。响应于此,客户端装置/播放器在当前渲染的帧上暂停(框3024),并向服务网络节点生成关于当前视频会话的暂停命令/请求(框3026)。在一个实施例中,客户端装置可配置成在预确定的时间内和/或直到预确定的事件(例如,直到它接收到自定义暂停替换帧)为止丢弃任何未渲染的帧(仍然在装置的视频解码缓冲器中)(框3028和3030)。在确定接收到自定义暂停替换帧时,客户端装置用新的自定义暂停替换帧来替换当前渲染的暂停帧,以用于解码和渲染(框3032)。
图31A是说明根据一个实施例的关于用于促进恢复控制的服务器过程3100A的附加细节的流程图,该流程图可与本文中阐述的一个或多个流程图(重新)组合。在框3102,服务网络节点接收恢复具有流会话ID的暂停的视频会话的请求。在框3104,服务网络节点的暂停模块子系统检索保存的暂停帧时间码。在框3106,带宽退火和QoE管理子系统218/2618从客户端装置接收经更新的凝视向量。响应于时间码和凝视向量信息,带宽退火和QoE管理子系统218/2618从紧跟在暂停帧之后的帧开始恢复组装帧,其中贴片选择基于与流会话ID匹配的流播会话的当前FoV和带宽(框3108)。技术人员将认识到,基于上文阐述的实施例,跟随在暂停帧之后的P切片或帧可由变化的视频质量的P贴片组成,这不同于组装自定义替换暂停帧的所有I贴片阵列(在整个360度空间中具有均衡的视频质量)。之后,贴片组合器和流生成器子系统222/2622按照正常操作组合并生成混合质量帧,将这些帧交付给客户端装置以用于开始/恢复重放(框3110和3112)。
图31B是说明根据一个实施例的关于用于促进恢复控制的客户端装置过程3100B的附加细节的流程图,该流程图可与本文中阐述的一个或多个流程图(重新)组合。在框3122,用户选择恢复暂停的360度视频会话,随之生成恢复命令并将它提供给服务网络节点。在一个实施例中,客户端装置可等待从服务节点接收组装的流帧(框3124和3136)。在接收到这些帧时,客户端装置重新填充它的解码缓冲器,并从视频会话的正确帧开始恢复重放(框3130)。
图32A是说明根据另一个实施例的关于用于促进暂停控制的服务器过程3200A的附加细节的流程图,该流程图可与本文中阐述的涉及生成高质量自定义替换暂停视频帧的静态图像的一个或多个流程图(重新)组合。如前所述,网络节点(例如,与优化节点相关联的视频交付服务器)可操作以接收暂停请求,所述请求包括当前正在流播的视频资产的视频帧的帧号或ID、时间码以及流播会话ID(框3202)。在框3204,带宽退火和QoE管理子系统(例如,子系统218/2618)暂缓选择和组装与流ID匹配的流会话的贴片。在框3206,网络节点或相关联的暂停模块子系统保存交付给客户端装置的最后一个帧。在框3208,暂停模块子系统向上文描述的带宽退火和QoE管理子系统218/2618请求当前最高质量贴片选择的列表。在框3210,暂停模块子系统针对正在交付用于关于暂停帧的具有流ID的会话的最高质量贴片从贴片化流中检索由I贴片组成的P切片。响应于此,暂停模块子系统获得具有I贴片的P切片的解码图片的静态图像(即,“暂停图像”)(框3212),可将该静态图像提供给交付服务器的开放套接字以用于实现暂停图像传输(框3214)。在一种布置中,暂停模块子系统可配置成参与与客户端装置的通信以确定是否使开放套接字可用(框3216)。在确定在网络节点或交付服务器之间已经开放套接字时,将静态暂停图像交付到客户端装置(框3218和3220)。
图32B是说明根据一个实施例的关于用于促进暂停控制的客户端装置过程3200B的附加细节的流程图,该流程图可与本文中阐述的一个或多个流程图(重新)组合。在框3232,操作合适的客户端装置的用户选择暂停正在进行的360度视频会话。响应于此,客户端装置/播放器在当前渲染的帧上暂停(框3234),并向服务网络节点生成关于当前视频会话的暂停命令/请求(框3236),暂停命令/请求包括会话ID、帧ID和帧时间码信息。在一个实施例中,客户端装置可配置成开放到服务网络节点的套接字通信接口(框3238),以用于促进静态图像传输。之后,客户端装置等待服务器节点以静态图像作出响应(框3240和3242)。在接收到静态图像之后,代替暂停的视频帧,对静态图像进行渲染并将它呈现给用户(框3244),随之可关闭用于服务器节点通信的套接字(框3246)。
图33A是说明根据一个实施例的关于用于促进恢复控制的服务器过程3300A的附加细节的流程图,该流程图可与本文中阐述的一个或多个流程图(重新)组合。在框3102,服务网络节点接收具有流会话ID的恢复暂停的视频会话的请求。在框3304,服务网络节点的暂停模块子系统检索保存的暂停帧时间码。在框3306,带宽退火和QoE管理子系统218/2618从客户端装置接收经更新的凝视向量信息。响应于时间码和凝视向量信息,带宽退火和QoE管理子系统218/2618从紧跟在暂停帧之后的帧开始恢复组装帧,其中贴片选择基于与流会话ID匹配的流播会话的当前FoV和带宽(框3308)。之后,贴片组合器和流生成器子系统222/2622按照正常操作组合并生成混合质量帧,将这些帧交付给客户端装置以用于开始/恢复重放(框3310和3312)。
图33B是说明根据一个实施例的关于用于促进恢复控制的客户端装置过程3300B的附加细节的流程图,该流程图可与本文中阐述的一个或多个流程图(重新)组合。在框3322,用户选择恢复暂停的360度视频会话,随之生成恢复命令并将它提供给服务网络节点。在一个实施例中,客户端装置可等待从服务节点接收组装的流帧(框3324和3326)。由于在该实施例中客户端装置不转储清除它的视频解码器缓冲器,所以它首先从它的缓冲器恢复播出,并且之后在从服务节点接收到帧时继续填充缓冲器(框3328)。因此,应领会到,恢复流播会话时的初始播出将基于响应于在选择暂停控制时的FoV具有混合质量的贴片的已经缓冲的帧(例如,2-3个帧)。因此,在流重放中同步适当的基于FoV的帧之前,可能会造成2-3个帧的时延/延迟。
图34A-34C描绘根据本发明的示例实施例的具有混合质量的视频或均衡化的高质量贴片的视频帧和客户端视频解码缓冲器状态。广泛地,这些图示范了关于暂停视频流播会话的具有变化的FoV质量的视频帧的序列。图34A示出响应于用户选择而暂停的示例4K视频帧#300,该帧#300具有按16乘8阵列3400A的128个混合质量的贴片。示例客户端装置解码缓冲器3400B示为具有3帧状态,所述3帧状态具有帧#300、#301和#302。如图所示,暂停的帧阵列3400A包括在FoV区域3402中的最高质量的贴片(例如,其中QP = 10),其由跨越360度空间逐渐降低质量的贴片(例如,其中QP范围到40或50)围绕。图34B示出与帧#300对应的自定义替换暂停帧,其中帧阵列3400A现在包含全部是高质量的贴片(QP = 10),而不管用户的FoV。根据其中转储清除装置解码缓冲器的实施例,示例装置解码缓冲器3400B现在示为仅具有经更新的/自定义替换帧#300,而其余的混合质量帧已丢弃。在恢复时,将根据正常的基于GV的贴片选择进行FoV优化的下一个帧#301与同样根据当前的GV数据进行FoV优化的接下来的帧一起提供给客户端装置。因此,与恢复后的帧#301对应的帧阵列3410A包括根据用户的FoV(例如,以45度角度向上并向右看)移动的高质量贴片(HQ)区域3412(其中QP =10),并且被逐渐降低质量(LQ)的贴片围绕。因此,在恢复视频时的示例缓冲器状态3410B现在包括GV优化的帧#301、#302和#303,这允许在恢复时立即以FoV优化的观看播出。另一方面,如果用在流会话处于暂停模式时的高质量帧(即,“预先缓冲的”HQ帧或“暂停缓冲的”HQ帧)填充装置解码缓冲器,则在进一步的实施例中,将首先播出它们,如在本专利申请中的其它地方所描述的那样。在这种情况下,取决于装置解码缓冲器和暂停缓冲器管理,装置解码缓冲器可配置成在恢复之后的未来的某个时间点接收FoV优化的帧。
本领域技术人员在参考到这里时将意识到,可对应于其中提供静态图像的实施例获得类似的示例帧序列场景,除了不转储清除装置解码器缓冲器并且因此在恢复之后已经加载的帧#301和#302首先得到播出之外。如前所述,作为更新装置解码缓冲器以基于用户的当前FoV进行优化的结果,存在2帧到3帧的时延。
将进一步意识到,在基于GV的缓冲器重新填充开始时获得的GV数据可能与在暂停视频会话时获得的GV数据不同。直到从客户端装置获得有效的GV/跟踪数据为止,默认的GV位置可配置用于基于带宽状况选择和组装适当的QP切片(例如,高质量贴片相对于低质量贴片)以用于帧生成。
图40是出于本发明的示例实施例的目的的基于服务器的高级视频质量优化方案的流程图,该流程图可与本专利公开的一个或多个流程图组合。在从客户端装置接收到暂停请求时,示例过程4000响应于暂停360度沉浸式视频会话的贴片化视频帧而开始,其中贴片化视频帧由多个混合质量的视频贴片组成(框4002)。在框4004,将贴片化视频帧的所有贴片的视频质量均衡化为最高视频质量。在框4006,当360度沉浸式视频会话处于暂停模式时,将具有相同的最高视频质量的贴片的经升级/经更新的视频帧或与之对应的静态图像呈现给客户端装置以用于显示。
图35-39是描绘关于在暂停时间期间使用装置解码缓冲器和/或额外的暂停缓冲器来缓冲帧的进一步细节的附加流程图,其中一些过程还可包括用于恢复播出和消耗缓冲帧的合适逻辑。这些流程图中的一些流程图可与在本专利申请中的其它地方描述的一个或多个其它流程图组合。一般来说,令Q为暂停时的视口中的最高质量贴片的质量。在暂停时间期间,可下载其中所有贴片具有相同质量Q(即,质量均衡化)的帧。之后,可将这些帧存储在视频解码缓冲器中,直到它变满为止。然后,如果启用单独的暂停缓冲器,则可继续下载其中所有贴片具有质量Q的帧,可将这些帧存储在暂停缓冲器中,直到包含暂停帧的当前GOP/段的末端为止。在一个实施例中,当到达GOP/段的末端时,可做出是否启用渐进式下载模式的确定。如果是,则可继续下载所有具有质量Q的贴片的帧,可将这些帧存储在暂停缓冲器中,直到用户恢复播出为止。如果在暂停时间期间带宽显著改变,则根据如上文阐述的与位速率选择和带宽退火有关的一些实施例,可执行可配置成改善贴片的质量Q的动态更新过程。在确定可改善质量时,可如上面所述转储清除暂停缓冲器,和/或可实例化附加的/多个暂停缓冲器。可相应地下载和存储具有较高质量贴片的新帧。另外,如果在暂停时间期间观察到由其它应用利用带宽,则可做出用户可能已经暂停视频会话以便将网络用于其它应用的确定或评估。在此类场景中,也可在暂停时间期间终止帧的缓冲。更进一步,当用户生成恢复播出的请求时,可配置实施例,使得消耗(一个或多个)暂停缓冲器中的帧以便呈现给HMD。在消耗预先缓冲的帧的时间期间,实施例可继续下载并在缓冲器的尾端缓冲更多的帧。因此,可配置智能缓冲器消耗方案,使得首先处理暂停缓冲器,然后再处理解码缓冲器数据,这可根据之前章节中所阐述的若干个实施例确定可何时开始常规的混合质量流播。如可领会到的,取决于在特定实现中如何管理/配置各种缓冲器“竞争(race)”状况,可实现不同的布置。
转到图35,其中描绘了出于本发明的实施例的目的的总体缓冲过程3500。如上文所详细阐述的,框3502至3514涉及为暂停的视频会话生成和传送经升级/更新的视频帧(即,自定义替换帧)。在框3516,关于客户端装置是否已经发出恢复请求做出确定。如果是,则可实现合适的恢复方法学(框3524),如将在下文与暂停缓冲相关联地阐述的那样。在框3518,关于带宽状况是否关于视频会话已经改变做出确定。如果是,则可执行用于(例如,从质量等级Q)更新质量等级的过程(框3520)。否则,可执行用于确定在暂停时间期间是否应当继续缓冲的过程(框3526和3528)。如果是,则继续接收具有贴片质量Q的帧,随之可执行存储过程以确定适当的存储位置(框3530和3532)。如果装置播放器关闭,则过程流终止(框3534)。否则,过程流返回到确定客户端装置是否已恢复(框3516)。
图36描绘用于在带宽改变的情况下更新缓冲帧中的贴片的质量Q以及转储清除/更新暂停缓冲器的过程3600(这可作为上面框3520的一部分执行)。在框3602,可初始化各种带宽和质量相关的参数。在框3604,可确定当前带宽是否不同于已经选定用于在暂停时缓冲的选择质量(Q)的带宽。如果没有变化,则在一个实施例中可终止过程流。否则,在确定带宽已经改变时,可基于可用带宽并且应用本专利申请的贴片选择和带宽退火过程来确定经更新的质量(框3606)。在框3608,可做出是否提供了多个暂停缓冲器的确定。如果提供了单个暂停缓冲器,则可转储清除该暂停缓冲器,并用具有新质量的贴片重新填充该暂停缓冲器(框3612)。在多个暂停缓冲器的情况下,每个暂停缓冲器可配置用于在示例布置(例如,图25中的UE装置2500的缓冲器2519)中存储特定质量的贴片。因此,可评估缓冲器质量,使得可初始化新的空暂停缓冲器以用于存储具有先前未存储的质量的新贴片。在框3610、3614、3616和3618中阐述了这些过程。之后,可适当地更新或重新初始化缓冲器/带宽参数(框3620)以用于后续的质量更新迭代(在需要时)。
图37描绘了用于取决于(一个或多个)解码和/或暂停缓冲器的当前状态/状况来确定在暂停时间期间是否应当继续缓冲的过程3700的流程图,该过程3700可作为上面阐述的框3526的一部分执行。在框3702,做出解码缓冲器是否充满的确定。如果解码缓冲器未充满,则示例过程3700可返回应当继续缓冲的指示或消息(框3714)。另一方面,如果确定解码缓冲器充满,则关于是否启用暂停缓冲器做出进一步确定(框3704)。如果没有启用暂停缓冲器,则示例过程3700可返回不应继续缓冲的指示或消息(框3712)。否则,可关于带宽是否正在被共享/用于其它用户应用和/或用户是否暂停了360度视频会话以将网络带宽用于此类其它任务或应用,做出仍有的进一步确定(框3706)。如果答案是“是”,则示例过程3700可再次返回如在框3712中所阐述的指示/消息。另一方面,如果答案是“否”,则可做出视频会话是否已经到达当前GOP/段的末端的确定(框3708)。如果否,则示例过程3700可得出继续缓冲的决定(框3714)。否则,可在框3710做出仍有的进一步的确定以验证是否启用渐进式下载。如果是,则示例过程3700可再次得出继续下载并缓冲(更高)质量Q的贴片的决定(框3714)。否则,示例过程3700可返回不应继续缓冲的指示/消息(框3712)。
图38描绘用于在适当的缓冲器(例如,视频贴片解码缓冲器或暂停缓冲器)处存储其中所有贴片具有质量Q的下一个下载的帧的过程3800的流程图,该过程3800可作为上面阐述的框3532的一部分执行。在框3802,可如上面阐述获得来自图37的过程3700的结果,其促进发起关于贴片存储的进一步处理。如果来自过程3700的结果是不继续缓冲的指示,则没有帧将被下载(框3806)。否则,获得下一个帧3812以用于存储,其中所有贴片具有相同的质量Q。如果视频贴片解码缓冲器充满(框3814),则将下载的帧存储在暂停缓冲器中(框3818)。否则,将下载的帧存储在视频贴片解码缓冲器中(框3816)。
图39描绘用于在恢复重放时消耗缓冲帧的过程3900的流程图,该过程可作为上面阐述的框3524的一部分执行。在框3902,可做出暂停缓冲器是否为空的确定。如果是,则可呈现/消耗来自视频贴片解码缓冲器的帧以用于渲染和显示(框3904)。并且,如在本申请中的其它地方所阐述的,示例过程3900可继续下载帧。如果暂停缓冲器不为空(框3902),则可呈现/消耗来自暂停缓冲器的存储的帧(框3906)。如果启用渐进式下载(框3908),则可继续下载帧并在暂停缓冲器的尾端缓冲帧(框3910)。否则,可终止示例过程流3900。
基于前面的论述,技术人员将意识到,取决于实现,可实现各种解码缓冲器和/或暂停缓冲器状态场景。将领会到,本文中的实施例有利地提供了用于促进在暂停的视频帧中跨整个360度视野的高质量图片的暂停控制优化方案,这可使得用户能够在环顾暂停帧时享受更好的视频体验,而不必忍受由于在视线外区域中的低质量贴片化引起的较差的视觉呈现。另一个优点是,在某些实施例中,可使用暂停时间来下载未来的帧。如可注意到的,暂停时间可短或长,并且本发明的实施例可配置成将暂停时间用于下载跟随在暂停帧之后的后续帧,或者短片段或者整个视频资产。此外,由于下载的后续帧包括具有至少与在暂停时的最高分辨率贴片的质量相同的质量的切片,所以在恢复时,对于重放可实现更高的QoE。取决于暂停时的带宽状况,在某些示例实施例中,可在暂停时间期间下载甚至更高质量的帧,以便以主动的预期方式实现增强的观看体验。
本领域技术人员将进一步意识到,在本专利公开的附加或备选的实施例中,可根据网络功能虚拟化(NFV)架构在虚拟化环境中构造(architect)关于前述实施例的各种设备和系统以及上面阐述的底层网络基础设施。例如,可作为虚拟器具、机器或功能提供在本申请的示例流播网络内执行的各种物理资源、数据库、服务、应用和功能,包括上文阐述的源媒体处理基础设施、媒体容器化、PE/BIE贴片编码和包装、暂停控制等,其中经由合适的虚拟化层将资源和应用虚拟化成合适的虚拟网络功能(VNF)或虚拟网络元件(VNE)。将包括计算资源、存储器资源和网络基础设施资源的资源虚拟化成对应的虚拟资源,其中虚拟计算资源、虚拟存储器资源和虚拟网络资源可共同操作以支持VNF层,其整体管理和编排功能性可由虚拟化基础设施管理器(VIM)结合VNF管理器和NFV编排器来支持。通常可提供操作支持系统(OSS)和/或业务支持系统(BSS)组件以用于处置网络级功能性,如网络管理、故障管理、配置管理、服务管理和订户管理等,这些组件可经由合适的接口与VNF层和NFV编排组件通过接口连接。
此外,本文中公开的示例网络架构的至少一部分可如上面阐述被虚拟化,并在包括可配置的虚拟资源的共享池的云计算环境中构造。可在例如软件即服务(SaaS)、平台即服务(PaaS)、基础设施即服务(IaaS)等的面向服务的(service-oriented)架构中用提供本发明的示例实施例的不同特征的多个实体实现与PE/BIE贴片编码和包装、带宽退火和贴片选择、贴片复用和容器化、带宽管理等相关联的各种各样的硬件/软件,其中可在商用现货(COTS)硬件上实例化虚拟化环境的一个或多个层。技术人员还将领会到,此类云计算环境可包括私有云、公共云、混合云、社区云、分布式云、多云和互联云(intercloud)(例如,“云中的云”)等中的一个或多个。
在对本公开的各种实施例的以上描述中,要理解,本文中使用的术语仅出于描述特定实施例的目的,而不旨在限制本发明。除非另外定义,否则本文中使用的所有术语(包括技术和科学术语)具有与本发明所属领域的普通技术人员通常理解的含义相同的含义。将进一步理解,诸如在常用字典中定义的那些术语的术语应当解释为具有与它们在相关领域和本说明书的上下文中的含义一致的含义,并且不可用本文中如此明确定义的理想化或过度正式的含义来解释它们。
本文中参考计算机实现的方法、设备(系统和/或装置)和/或计算机程序产品的框图和/或流程图图示描述了至少一些示例实施例。理解的是,框图和/或流程图图示的框以及框图和/或流程图图示中的框的组合可由计算机程序指令实现,所述计算机程序指令被一个或多个计算机电路执行。可将此类计算机程序指令提供给通用计算机电路、专用计算机电路、和/或其它可编程数据处理电路的处理器电路以产生机器,使得经由计算机和/或其它可编程数据处理设备的处理器执行的指令变换和控制晶体管、存储在存储器位置中的值以及此类电路内的其它硬件组件,以实现在一个或多个框图和/或流程图框中所指定的功能/动作,并且从而创建用于实现在(一个或多个)框图和/或流程图框中所指定的功能/动作的部件(功能性)和/或结构。另外,还可将计算机程序指令存储在有形计算机可读介质中,所述计算机程序指令可指导计算机或其它可编程数据处理设备以特定的方式运作,从而使得存储在计算机可读介质中的指令产生包括实现在一个或多个框图和/或流程图框中所指定的功能/动作的指令的制品。
如之前所指出的,有形的非暂时性计算机可读介质可包括电子、磁、光、电磁或半导体数据存储系统、设备或装置。计算机可读介质的更具体的示例将包括以下介质:便携式计算机盘、随机存取存储器(RAM)电路、只读存储器(ROM)电路、可擦除可编程只读存储器(EPROM或闪速存储器)电路、便携式致密盘只读存储器(CD-ROM)、和便携式数字视频盘只读存储器(DVD/Blu-ray)。也可将计算机程序指令加载到计算机和/或其它可编程数据处理设备上或以其它方式下载到计算机和/或其它可编程数据处理设备,以使得在计算机和/或其它可编程设备上执行一系列操作步骤,从而产生计算机实现的过程。因此,本发明的实施例可用硬件和/或用在处理器或控制器上执行的软件(包括固件、常驻软件、微代码等)体现,它们可统称为“电路”、“模块”或其变型。此外,作为说明,示例处理单元可包括通用处理器、专用处理器、常规处理器、数字信号处理器(DSP)、多个微处理器、与DSP核相关联的一个或多个微处理器、控制器、微控制器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)电路、任何其它类型的集成电路(IC)和/或状态机。如可领会到的,在某些实施例中,示例处理器单元可采用分布式处理。
此外,在至少一些附加的或备选的实现中,在框中描述的功能/动作可不按照在流程图中示出的顺序进行。例如,取决于涉及的功能性/动作,连续示出的两个框实际上可大体上并发地执行,或者框有时可按相反的顺序执行。此外,可将流程图和/或框图的给定框的功能性分成多个框,和/或流程图和/或框图的两个或更多个框的功能性可至少部分地集成。此外,尽管一些图在通信路径上包括箭头以显示主要的通信方向,但是要理解,可沿相对于描述的箭头相反的方向发生通信。最后,可在示出的框之间添加/插入其它框。
因此,应清楚地理解,在本公开的附图图中描绘的任何流程图中示出的动作、步骤、功能、组成或框的顺序或序列可在特定流程图中修改、变更、替换、自定义或以其它方式重新排列,包括删除或省略特定的动作、步骤、功能、组成或框。此外,在特定流程图中示出的动作、步骤、功能、组成或框可与在另一个流程图中示出的动作、步骤、功能、组成或框相互混合或以其它方式相互排列或重新排列,以便出于实践本专利公开的教导的目的实现关于一个或多个过程的附加的变化、修改和配置。
尽管已经示出并详细描述了各种实施例,但是权利要求不限于任何特定的实施例或示例。上面具体实施方式都不应被当作暗示任何特定组件、元件、步骤、动作或功能是必要的,使得它必须包括在权利要求书的范围中。除非明确如此叙述,否则以单数形式提及元件不旨在意味着“一个且只有一个”,而是“一个或多个”。本领域普通技术人员已知的上述实施例的要素的所有结构和功能等效物通过引用明确地并入到本文中,并且旨在由本权利要求书涵盖。因此,本领域技术人员将意识到,可在随附权利要求书的精神和范围内通过各种修改和变更来实践本文中描述的示例性实施例。

Claims (21)

1.一种在视频优化节点处操作的用于在暂停360度沉浸式视频会话时控制视频质量的方法,所述方法包括:
从用户的客户端装置接收暂停播放正在所述360度沉浸式视频会话中流播的特定视频资产的请求,所述特定视频资产包括多个视频帧,并且每个视频帧包括投影在供所述用户在与所述客户端装置相关联的显示装置中观看的三维3D显示环境上的贴片的阵列,其中关于当前显示并存储在所述客户端装置的视频解码缓冲器中的混合质量的贴片化视频帧生成暂停播放所述特定视频资产的所述请求,并且进一步地,其中所述请求包括与正在暂停的贴片化视频帧相关联的时间码和所述360度沉浸式视频会话的会话标识符ID;
生成与所述暂停的贴片化视频帧对应的自定义替换视频帧,其中将所述自定义替换视频帧编码为X帧,所述X帧具有预测性编码的P帧的切片报头并且包括选择成具有等于在基于从所述客户端装置接收的用户凝视向量信息的视口中正在呈现的特定视频资产的最高视频质量位速率表示的视频质量的只内编码的数据块(I块);以及
在暂停所述360度沉浸式视频会话时,将所述自定义替换视频帧提供给所述客户端装置以进行显示,而不是所述暂停的贴片化视频帧。
2.如权利要求1所述的方法,进一步包括:
为所述360度沉浸式视频会话的所述会话ID以及与正在暂停的所述贴片化视频帧相关联的所述时间码做书签;以及
响应于接收到来自所述用户的重放恢复请求,基于所述时间码从所述暂停的贴片化视频帧之后的后续视频帧开始流播所述特定视频资产,其中通过复用从所述特定视频资产的多个位速率表示中选择的贴片生成所述后续视频帧,每个位速率表示具有与用于每个位速率表示的量化参数QP值有关的单独的视频质量,并且进一步地,其中响应于从所述客户端装置获得的所述用户凝视向量信息,从相应的位速率表示中选择具有不同视频质量的贴片。
3.如权利要求2所述的方法,其中基于高效视频编码HEVC H.265压缩、开放媒体联盟AOMedia视频1AV1压缩和H.266/通用视频编码VVC压缩中的至少一种压缩将所述多个位速率表示生成为多个相位编码的位流。
4.如权利要求2所述的方法,其中基于高效视频编码HEVC H.265压缩、开放媒体联盟AOMedia视频1AV1压缩和H.266/通用视频编码VVC压缩中的至少一种压缩将所述多个位速率表示的至少一部分生成为块内编码的位流。
5.如权利要求1所述的方法,进一步包括:
在暂停所述360度沉浸式视频会话时,继续生成在所述暂停的贴片化视频帧之后的后续视频帧,每个后续视频帧参考所述暂停的贴片化视频帧的所述时间码并且只包括质量至少等于在所述自定义替换视频帧中呈现的贴片的视频质量的贴片,而不管所述用户凝视向量信息;
经由渐进式下载路径将所述后续视频帧提供给所述客户端装置,以便在所述视频解码缓冲器和所述客户端装置的一个或多个暂停缓冲器之一中进行缓冲;以及
在从所述客户端装置接收关于所述360度沉浸式视频会话的重放请求之后的某个时间点,开始利用基于所述用户凝视向量信息选择的贴片生成混合质量的视频帧。
6.一种配置为视频优化节点的用于在暂停360度沉浸式视频会话时控制视频质量的设备,所述设备包括:
一个或多个处理器;以及
一个或多个持久存储器模块,在所述一个或多个持久存储器模块上存储有程序指令,所述程序指令在由所述一个或多个处理器执行时,与一个或多个模块相关联地执行以下动作:
从用户的客户端装置接收暂停播放正在所述360度沉浸式视频会话中流播的特定视频资产的请求,所述特定视频资产包括多个视频帧,并且每个视频帧包括投影在供所述用户在与所述客户端装置相关联的显示装置中观看的三维3D显示环境上的贴片的阵列,其中关于当前显示并存储在所述客户端装置的视频解码缓冲器中的混合质量的贴片化视频帧生成暂停播放所述特定视频资产的所述请求,并且进一步地,其中所述请求包括与正在暂停的贴片化视频帧相关联的时间码和所述360度沉浸式视频会话的会话标识符ID;
生成与所述暂停的贴片化视频帧对应的自定义替换视频帧,其中将所述自定义替换视频帧编码为X帧,所述X帧具有预测性编码的P帧的切片报头并且包括选择成具有等于在基于从所述客户端装置接收的用户凝视向量信息的视口中正在呈现的特定视频资产的最高视频质量位速率表示的视频质量的只内编码的数据块(I块);以及
在暂停所述360度沉浸式视频会话时,将所述自定义替换视频帧提供给所述客户端装置以进行显示,而不是所述暂停的贴片化视频帧。
7.如权利要求6所述的设备,其中所述程序指令进一步包括配置成执行以下动作的指令:为所述360度沉浸式视频会话的所述会话ID以及与正在暂停的所述贴片化视频帧相关联的所述时间码做书签;以及
响应于接收到来自所述用户的重放恢复请求,基于所述时间码从所述暂停的贴片化视频帧之后的后续视频帧开始流播所述特定视频资产,其中通过复用从所述特定视频资产的多个位速率表示中选择的贴片生成所述后续视频帧,每个位速率表示具有与用于每个位速率表示的量化参数QP值有关的单独的视频质量,并且进一步地,其中响应于从所述客户端装置获得的所述用户凝视向量信息,从相应的位速率表示中选择具有不同视频质量的贴片。
8.如权利要求6所述的设备,其中所述程序指令进一步包括配置成执行以下动作的指令:在暂停所述360度沉浸式视频会话时,继续生成在所述暂停的贴片化视频帧之后的后续视频帧,每个后续视频帧参考所述暂停的贴片化视频帧的所述时间码并且只包括质量至少等于在所述自定义替换视频帧中呈现的贴片的视频质量的贴片,而不管所述用户凝视向量信息;
经由渐进式下载路径将所述后续视频帧提供给所述客户端装置,以便在所述视频解码缓冲器和所述客户端装置的一个或多个暂停缓冲器之一中进行缓冲;以及
在从所述客户端装置接收关于所述360度沉浸式视频会话的重放请求之后的某个时间点,开始利用基于所述用户凝视向量信息选择的贴片生成混合质量的视频帧并传送所述混合质量的视频帧。
9.一种在客户端装置处操作的用于在暂停360度沉浸式视频会话时控制视频质量的方法,所述方法包括:
生成到网络节点的暂停播放正在所述360度沉浸式视频会话中流播的特定视频资产的请求,所述特定视频资产包括多个视频帧,并且每个视频帧包括投影在供用户在与所述客户端装置相关联的显示装置中观看的三维3D显示环境上的贴片的阵列,其中关于当前显示并存储在所述客户端装置的视频解码缓冲器中的混合质量的贴片化视频帧生成暂停播放所述特定视频资产的所述请求,并且进一步地,其中暂停请求包括与正在暂停的贴片化视频帧相关联的时间码和所述360度沉浸式视频会话的会话标识符ID;
接收与所述暂停的贴片化视频帧对应的自定义替换视频帧,其中将所述自定义替换视频帧编码为X帧,所述X帧具有预测性编码的P帧的切片报头并且包括选择成具有等于在基于从所述客户端装置接收的用户凝视向量信息的视口中正在呈现的特定视频资产的最高视频质量位速率表示的视频质量的只内编码的数据块(I块);以及
在暂停所述360度沉浸式视频会话时,解码并显示所述自定义替换视频帧而不是所述暂停的贴片化视频帧。
10.如权利要求9所述的方法,进一步包括:
转储清除在所述视频解码缓冲器中的跟随在所述暂停的贴片化视频帧之后的所有混合质量的视频帧;
在暂停所述360度沉浸式视频会话时,下载跟随在所述暂停的贴片化视频帧之后的后续替换视频帧,每个后续替换视频帧参考所述暂停的贴片化视频帧的所述时间码并且只包括质量至少等于在所述自定义替换视频帧中呈现的贴片的视频质量的贴片,而不管所述用户凝视向量信息;
将所述后续替换视频帧存储在所述视频解码缓冲器和所述客户端装置的一个或多个暂停缓冲器之一中;
响应于接收到来自所述用户的重放恢复请求,开始播出只具有相等质量的贴片的所述后续替换视频帧;以及
在恢复重放所述360度沉浸式视频会话之后的某个时间点,复原到接收基于所述用户凝视向量信息生成的视频帧并用所述视频帧填充所述视频解码缓冲器。
11.如权利要求10所述的方法,进一步包括:
在暂停所述特定视频资产时,继续将所述后续替换视频帧下载到所述视频解码缓冲器中;
确定所述视频解码缓冲器是否充满;以及
如果是,则在暂停所述特定视频资产时,继续将附加的后续视频替换帧下载到所述暂停缓冲器中,直到所述暂停缓冲器充满为止。
12.一种在视频优化节点处操作的用于在暂停360度沉浸式视频会话时控制视频质量的方法,所述方法包括:
从用户的客户端装置接收暂停播放正在所述360度沉浸式视频会话中流播的特定视频资产的请求,所述特定视频资产包括多个视频帧,并且每个视频帧包括投影在供所述用户在与所述客户端装置相关联的显示装置中观看的三维3D显示环境上的贴片的阵列,其中关于当前显示并存储在所述客户端装置的视频解码缓冲器中的混合质量的贴片化视频帧生成暂停播放所述特定视频资产的所述请求,并且进一步地,其中所述请求包括与正在暂停的贴片化视频帧相关联的时间码和所述360度沉浸式视频会话的会话标识符ID;
生成与所述暂停的贴片化视频帧对应的自定义替换视频帧,其中将所述自定义替换视频帧编码为X帧,所述X帧具有预测性编码的P帧的切片报头并且包括选择成具有等于在基于从所述客户端装置接收的用户凝视向量信息的视口中正在呈现的特定视频资产的最高视频质量位速率表示的视频质量的只内编码的数据块(I块);
解码所述自定义替换视频帧,并生成解码的自定义替换视频帧的静态图像;以及
在暂停所述360度沉浸式视频会话时,将所述解码的自定义替换视频帧的所述静态图像提供给所述客户端装置以进行显示,而不是所述暂停的贴片化视频帧。
13.如权利要求12所述的方法,其中所述静态图像包括联合图像专家组JPEG图像。
14.如权利要求12所述的方法,进一步包括:
为所述360度沉浸式视频会话的所述会话ID以及与正在暂停的所述贴片化视频帧相关联的所述时间码做书签;以及
响应于接收到来自所述用户的重放恢复请求,基于所述时间码从所述暂停的贴片化视频帧之后的后续视频帧开始流播所述特定视频资产,其中通过复用从所述特定视频资产的多个位速率表示中选择的贴片来生成所述后续视频帧,每个位速率表示具有与用于每个位速率表示的量化参数QP值有关的单独的视频质量,并且进一步地,其中响应于从所述客户端装置获得的所述用户凝视向量信息,从相应的位速率表示中选择具有不同视频质量的贴片。
15.如权利要求14所述的方法,其中基于高效视频编码HEVC H.265压缩、开放媒体联盟AOMedia视频1AV1压缩和H.266/通用视频编码VVC压缩中的至少一种压缩将所述多个位速率表示生成为多个相位编码的位流。
16.如权利要求14所述的方法,其中基于高效视频编码HEVC H.265压缩、开放媒体联盟AOMedia视频1AV1压缩和H.266/通用视频编码VVC压缩中的至少一种压缩将所述多个位速率表示的至少一部分生成为块内编码的位流。
17.一种配置为视频优化节点的用于在暂停360度沉浸式视频会话时控制视频质量的设备,所述设备包括:
一个或多个处理器;以及
一个或多个持久存储器模块,在所述一个或多个持久存储器模块上存储有程序指令,所述程序指令在由所述一个或多个处理器执行时与一个或多个模块相关联地执行以下动作:
从用户的客户端装置接收暂停播放正在所述360度沉浸式视频会话中流播的特定视频资产的请求,所述特定视频资产包括多个视频帧,并且每个视频帧包括投影在供所述用户在与所述客户端装置相关联的显示装置中观看的三维3D显示环境上的贴片的阵列,其中关于当前显示并存储在所述客户端装置的视频解码缓冲器中的混合质量的贴片化视频帧生成暂停播放所述特定视频资产的所述请求,并且进一步地,其中暂停请求包括与正在暂停的贴片化视频帧相关联的时间码和所述360度沉浸式视频会话的会话标识符ID;
生成与所述暂停的贴片化视频帧对应的自定义替换视频帧,其中将所述自定义替换视频帧编码为X帧,所述X帧具有预测性编码的P帧的切片报头并且包括选择成具有等于在基于从所述客户端装置接收的用户凝视向量信息的视口中正在呈现的特定视频资产的最高视频质量位速率表示的视频质量的只内编码的数据块(I块);
解码所述自定义替换视频帧,并生成解码的自定义替换视频帧的静态图像;以及
在暂停所述360度沉浸式视频会话时,将所述解码的自定义替换视频帧的所述静态图像提供给所述客户端装置以进行显示,而不是所述暂停的贴片化视频帧。
18.如权利要求17所述的设备,其中所述静态图像包括联合图像专家组JPEG图像。
19.如权利要求17所述的设备,其中所述程序指令进一步包括配置成执行以下动作的指令:
为所述360度沉浸式视频会话的所述会话ID以及与正在暂停的所述贴片化视频帧相关联的所述时间码做书签;以及
响应于接收到来自所述用户的重放恢复请求,基于所述时间码从所述暂停的贴片化视频帧之后的后续视频帧开始流播所述特定视频资产,其中通过复用从所述特定视频资产的多个位速率表示中选择的贴片来生成所述后续视频帧,每个位速率表示具有与用于每个位速率表示的量化参数QP值有关的单独的视频质量,并且进一步地,其中响应于从所述客户端装置获得的所述用户凝视向量信息,从相应的位速率表示中选择具有不同视频质量的贴片。
20.如权利要求19所述的设备,其中基于高效视频编码HEVC H.265压缩、开放媒体联盟AOMedia视频1AV1压缩和H.266/通用视频编码VVC压缩中的至少一种压缩将所述多个位速率表示生成为多个相位编码的位流。
21.如权利要求19所述的设备,其中基于高效视频编码HEVC H.265压缩、开放媒体联盟AOMedia视频1AV1压缩和H.266/通用视频编码VVC压缩中的至少一种压缩将所述多个位速率表示的至少一部分生成为块内编码的位流。
CN201980065088.6A 2018-10-01 2019-09-30 用于在暂停期间在360º沉浸式视频中提供质量控制的系统和方法 Active CN112789854B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/148,001 US10440416B1 (en) 2018-10-01 2018-10-01 System and method for providing quality control in 360° immersive video during pause
US16/148001 2018-10-01
PCT/SE2019/050940 WO2020071984A1 (en) 2018-10-01 2019-09-30 SYSTEM AND METHOD FOR PROVIDING QUALITY CONTROL IN 360º IMMERSIVE VIDEO DURING PAUSE

Publications (2)

Publication Number Publication Date
CN112789854A CN112789854A (zh) 2021-05-11
CN112789854B true CN112789854B (zh) 2024-03-05

Family

ID=68101949

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980065088.6A Active CN112789854B (zh) 2018-10-01 2019-09-30 用于在暂停期间在360º沉浸式视频中提供质量控制的系统和方法

Country Status (6)

Country Link
US (1) US10440416B1 (zh)
EP (1) EP3861734A4 (zh)
CN (1) CN112789854B (zh)
BR (1) BR112020015236A2 (zh)
CO (1) CO2020009521A2 (zh)
WO (1) WO2020071984A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9369723B2 (en) 2011-07-14 2016-06-14 Comcast Cable Communications, Llc Preserving image quality in temporally compressed video streams
GB2554877B (en) * 2016-10-10 2021-03-31 Canon Kk Methods, devices, and computer programs for improving rendering display during streaming of timed media data
US10623736B2 (en) * 2018-06-14 2020-04-14 Telefonaktiebolaget Lm Ericsson (Publ) Tile selection and bandwidth optimization for providing 360° immersive video
US10779014B2 (en) * 2018-10-18 2020-09-15 At&T Intellectual Property I, L.P. Tile scheduler for viewport-adaptive panoramic video streaming
US10833945B2 (en) * 2018-11-13 2020-11-10 International Business Machines Corporation Managing downloading of content
AU2019392557A1 (en) * 2018-12-04 2021-06-24 Vid Scale, Inc. Tile group partitioning
US11575952B2 (en) * 2021-04-12 2023-02-07 Arris Enterprises Llc Digital rights management while streaming to display array
CN115460466A (zh) * 2022-08-23 2022-12-09 北京泰豪智能工程有限公司 一种视频通信中视频画面定制方法及系统
CN117078805B (zh) * 2023-10-18 2023-12-15 北京华航唯实机器人科技股份有限公司 视向动画的生成方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1694529A (zh) * 2005-06-28 2005-11-09 清华大学 交互式多视点视频系统中视频流的传输方法
US7023924B1 (en) * 2000-12-28 2006-04-04 Emc Corporation Method of pausing an MPEG coded video stream
CN1901676A (zh) * 2005-07-19 2007-01-24 国际商业机器公司 流式图像系统和方法
WO2009073833A1 (en) * 2007-12-05 2009-06-11 Onlive, Inc. Video compression system and method for compensating for bandwidth limitations of a communication channel
WO2016185090A1 (en) * 2015-05-20 2016-11-24 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
CN106416181A (zh) * 2014-03-07 2017-02-15 爱立信股份有限公司 Abr视频白点覆盖系统和方法
CN107037875A (zh) * 2015-10-26 2017-08-11 诺基亚技术有限公司 用于改进的沉浸式内容流化的方法和装置
CN107211081A (zh) * 2015-01-22 2017-09-26 哈德利公司 基于独立编码的背景更新的视频传输

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7046910B2 (en) * 1998-11-20 2006-05-16 General Instrument Corporation Methods and apparatus for transcoding progressive I-slice refreshed MPEG data streams to enable trick play mode features on a television appliance
US20110126255A1 (en) * 2002-12-10 2011-05-26 Onlive, Inc. System and method for remote-hosted video effects
US20050018911A1 (en) 2003-07-24 2005-01-27 Eastman Kodak Company Foveated video coding system and method
US7975283B2 (en) 2005-03-31 2011-07-05 At&T Intellectual Property I, L.P. Presence detection in a bandwidth management system
US20100149073A1 (en) 2008-11-02 2010-06-17 David Chaum Near to Eye Display System and Appliance
US20100050221A1 (en) * 2008-06-20 2010-02-25 Mccutchen David J Image Delivery System with Image Quality Varying with Frame Rate
WO2011046231A1 (en) 2009-10-14 2011-04-21 Sharp Kabushiki Kaisha Methods for parallel video encoding and decoding
EP2622859B1 (en) 2010-09-29 2016-08-31 Dolby Laboratories Licensing Corporation Region based asymmetric coding for 3d video compression
AU2011204946C1 (en) 2011-07-22 2012-07-26 Microsoft Technology Licensing, Llc Automatic text scrolling on a head-mounted display
IN2014CN01752A (zh) 2011-08-31 2015-09-04 Nokia Corp
US9609340B2 (en) * 2011-12-28 2017-03-28 Verizon Patent And Licensing Inc. Just-in-time (JIT) encoding for streaming media content
CN102663293B (zh) * 2012-03-28 2015-04-01 北京奇虎科技有限公司 一种计算机视频设备保护方法和装置
US20130294513A1 (en) 2012-05-07 2013-11-07 Qualcomm Incorporated Inter layer merge list construction for video coding
US9552060B2 (en) 2014-01-28 2017-01-24 Microsoft Technology Licensing, Llc Radial selection by vestibulo-ocular reflex fixation
US9813470B2 (en) 2014-04-07 2017-11-07 Ericsson Ab Unicast ABR streaming
US9392212B1 (en) 2014-04-17 2016-07-12 Visionary Vr, Inc. System and method for presenting virtual reality content to a user
GB2526263B (en) 2014-05-08 2019-02-06 Sony Interactive Entertainment Europe Ltd Image capture method and apparatus
US9918136B2 (en) 2014-05-29 2018-03-13 Nextvr Inc. Methods and apparatus for delivering content and/or playing back content
CA2895637C (en) 2014-06-27 2023-09-05 Bce Inc. Content consumption monitoring
WO2016050283A1 (en) 2014-09-30 2016-04-07 Telefonaktiebolaget L M Ericsson (Publ) Reduced bit rate immersive video
WO2016129549A1 (ja) 2015-02-12 2016-08-18 株式会社コロプラ ヘッドマウント・ディスプレイを用いたコンテンツ視聴のための装置およびシステム
US9621933B2 (en) * 2015-03-27 2017-04-11 Ericsson Ab System and method for providing VOD content in a switched digital video network using unicast ABR streaming
US20160353146A1 (en) 2015-05-27 2016-12-01 Google Inc. Method and apparatus to reduce spherical video bandwidth to user headset
US10210844B2 (en) 2015-06-29 2019-02-19 Microsoft Technology Licensing, Llc Holographic near-eye display
US9942290B2 (en) * 2015-09-09 2018-04-10 Ericsson Ab Fast channel change in a multicast adaptive bitrate (MABR) streaming network using HTTP download segment recovery in a shared progressive ABR download pipe
US10558353B2 (en) 2015-11-18 2020-02-11 Samsung Electronics Co., Ltd. System and method for 360-degree video navigation
US10313745B2 (en) 2016-01-17 2019-06-04 Bitmovin Gmbh Adaptive streaming of an immersive video scene
US10438400B2 (en) 2016-03-08 2019-10-08 Nvidia Corporation Perceptually-based foveated rendering using a contrast-enhancing filter
GB2553744B (en) 2016-04-29 2018-09-05 Advanced Risc Mach Ltd Graphics processing systems
US11184624B2 (en) 2016-05-19 2021-11-23 Qualcomm Incorporated Regional random access in pictures
US10277914B2 (en) 2016-06-23 2019-04-30 Qualcomm Incorporated Measuring spherical image quality metrics based on user field of view
WO2018044073A1 (en) 2016-09-01 2018-03-08 Samsung Electronics Co., Ltd. Image streaming method and electronic device for supporting the same
GB2554877B (en) 2016-10-10 2021-03-31 Canon Kk Methods, devices, and computer programs for improving rendering display during streaming of timed media data
US10917564B2 (en) 2016-10-12 2021-02-09 Qualcomm Incorporated Systems and methods of generating and processing files for partial decoding and most interested regions
US10620441B2 (en) 2016-12-14 2020-04-14 Qualcomm Incorporated Viewport-aware quality metric for 360-degree video
US10560680B2 (en) 2017-01-28 2020-02-11 Microsoft Technology Licensing, Llc Virtual reality with interactive streaming video and likelihood-based foveation
US11172208B2 (en) 2017-02-28 2021-11-09 Nokia Technologies Oy Method and apparatus for improving the visual quality of viewport-based omnidirectional video streaming
US10819645B2 (en) 2017-09-20 2020-10-27 Futurewei Technologies, Inc. Combined method for data rate and field of view size adaptation for virtual reality and 360 degree video streaming
US10818087B2 (en) 2017-10-02 2020-10-27 At&T Intellectual Property I, L.P. Selective streaming of immersive video based on field-of-view prediction
US10956492B2 (en) 2017-10-17 2021-03-23 Verily Life Sciences Llc Systems and methods for segmenting surgical videos
US10419738B1 (en) * 2018-06-14 2019-09-17 Telefonaktiebolaget Lm Ericsson (Publ) System and method for providing 360° immersive video based on gaze vector information
US10432970B1 (en) * 2018-06-14 2019-10-01 Telefonaktiebolaget Lm Ericsson (Publ) System and method for encoding 360° immersive video
US10356387B1 (en) * 2018-07-26 2019-07-16 Telefonaktiebolaget Lm Ericsson (Publ) Bookmarking system and method in 360° immersive video based on gaze vector information

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7023924B1 (en) * 2000-12-28 2006-04-04 Emc Corporation Method of pausing an MPEG coded video stream
CN1694529A (zh) * 2005-06-28 2005-11-09 清华大学 交互式多视点视频系统中视频流的传输方法
CN1901676A (zh) * 2005-07-19 2007-01-24 国际商业机器公司 流式图像系统和方法
WO2009073833A1 (en) * 2007-12-05 2009-06-11 Onlive, Inc. Video compression system and method for compensating for bandwidth limitations of a communication channel
CN106416181A (zh) * 2014-03-07 2017-02-15 爱立信股份有限公司 Abr视频白点覆盖系统和方法
CN107211081A (zh) * 2015-01-22 2017-09-26 哈德利公司 基于独立编码的背景更新的视频传输
WO2016185090A1 (en) * 2015-05-20 2016-11-24 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
CN107037875A (zh) * 2015-10-26 2017-08-11 诺基亚技术有限公司 用于改进的沉浸式内容流化的方法和装置

Also Published As

Publication number Publication date
BR112020015236A2 (pt) 2021-01-26
CO2020009521A2 (es) 2020-10-30
WO2020071984A1 (en) 2020-04-09
EP3861734A4 (en) 2021-11-10
EP3861734A1 (en) 2021-08-11
US10440416B1 (en) 2019-10-08
CN112789854A (zh) 2021-05-11

Similar Documents

Publication Publication Date Title
US11758103B2 (en) Video client optimization during pause
CN112789854B (zh) 用于在暂停期间在360º沉浸式视频中提供质量控制的系统和方法
CN112292864B (zh) 用于提供360度沉浸式视频的图块选择和带宽优化
US11758105B2 (en) Immersive video system and method based on gaze vector information
US10356387B1 (en) Bookmarking system and method in 360° immersive video based on gaze vector information
US10432970B1 (en) System and method for encoding 360° immersive video
CN112740711A (zh) 用于配置为支持多个360度视频会话的网络中的带宽优化的系统和方法
KR20210038887A (ko) 360도 몰입형 비디오에 광고 콘텐츠를 삽입하기 위한 시스템 및 방법
US10567780B2 (en) System and method for encoding 360° immersive video
CN112567742B (zh) 用于编码360度沉浸式视频的系统和方法
Phillips et al. System and method for encoding 360 immersive video

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant