首页> 中国专利> 用于在360度沉浸式视频中插入广告内容的系统和方法

用于在360度沉浸式视频中插入广告内容的系统和方法

摘要

用于在360度沉浸式视频环境中插入例如广告内容、图形、图像等辅助内容的系统和方法。当从客户端设备接收到播放视频资产的请求时,选择该视频资产的多个视频图块以组装为传递给客户端设备的视频帧。例如,基于注视矢量信息和/或图块元数据规范,标识视频图块的可以由对应广告内容图块集合替换的部分,该图块元数据规范包含关于视频帧的每一个图块的广告插入可用性时序信息。在替换了所标识视频图块的该部分之后,将对应广告内容图块集合和剩余视频图块组装成在所选位置处包括广告内容图块的视频帧,并将该视频帧发送给客户端设备。

著录项

  • 公开/公告号CN112740710A

    专利类型发明专利

  • 公开/公告日2021-04-30

    原文格式PDF

  • 申请/专利权人 瑞典爱立信有限公司;

    申请/专利号CN201980061520.4

  • 申请日2019-07-15

  • 分类号H04N21/234(20110101);H04N13/161(20180101);H04N13/383(20180101);H04N13/332(20180101);H04N21/81(20110101);

  • 代理机构11021 中科专利商标代理有限责任公司;

  • 代理人穆童

  • 地址 瑞典斯德哥尔摩

  • 入库时间 2023-06-19 10:46:31

说明书

技术领域

本公开总体上涉及通信网络。更具体地并且不以任何方式加以限制地,本公开涉及用于在360度沉浸式视频流中插入广告内容的系统和方法。

背景技术

虚拟现实的引入不仅使现有的几种技术得到了改进,而且还将新的应用带到了最前沿。在360°沉浸式视频(也以不同方式称为全景视频、360度视频或360视频等)的情况下,可以发现对现有技术的一项改进。

360度视频为用户提供了沉浸式的“身临其境”体验。虚拟现实的增强沉浸感可以轻松地应用于视频,这与投影在平坦表面上的传统视频相比,能够提供更好的用户体验。随着全向捕获系统和交互式显示系统(诸如头戴式显示器(HMD)或头戴式视图器(headset))的出现,可导航的360度视频系统也变得越来越受欢迎。然而,内容提供商们一直都在争夺带宽受限的网络环境,来通过高效的方式传递360度视频内容,以确保观看体验能让人满意,因为360度视频资产是超高分辨率的球形视频,这样的超高分辨率的球形视频包含需要大量数据的全向场景视图。

当前的360视频头戴式视图器是2K分辨率的显示设备,每只眼睛覆盖1K。为了在头戴式视图器中获得最佳质量,典型的网络需要向设备发送8K 360视频流。众所周知,视频压缩通过降低表示图片的比特数量,使得能高效利用媒体流网络中的带宽。尽管视频压缩技术的进步日新月异,但是,就当今网络架构中带宽的高效管理(包括在360度视频播放环境中提供广告内容的能力)而言,在360视频传递及显示领域仍存在着一些不足之处,因而需要进一步的创新,这将在下文中进行阐述。

发明内容

本专利公开广泛地涉及用于在沉浸式视频播放会话中实现优化的360°沉浸式视频观看体验的系统、方法、装置、设备以及相关联的非暂时性计算机可读介质和网络架构,所述体验尤其包括插入各种类型的辅助内容(例如,广告内容、图形、图像等)的能力。在一个方面,某些实施例针对在涉及将源视频流编码成具有不同质量的图块编码流的布置中可实现的优化编码方案。在另一方面,某些实施例针对在基于图块相对于用户视口的位置来确定图块权重时利用用户注视矢量信息。在其他方面,示例实施例针对图块选择和带宽退火(annealing)方案,其中响应于注视矢量信息和/或图块可用性元数据规范来选择经过带宽优化的图块,所述注视矢量信息和/或图块可用性元数据规范可以与用于广告内容的图块一起被拼接成复用编码视频序列,以便在继续接收广告的同时提供增强的观看体验。

在一个示例实施例中,公开了用于在360度沉浸式视频环境中插入广告内容的方法。所要求保护的实施例尤其包括:从客户端设备接收播放特定沉浸式视频资产的请求,其中每个视频帧包括被投影在由操作客户端没备的用户观看的3维(3D)显示环境上的图块阵列。可以选择特定沉浸式视频资产的多个视频图块以组装为传递给客户端设备的视频帧。在一个布置中,可以从特定视频资产的一个或多个图块编码比特率表示中获得特定沉浸式视频资产的所选择的多个视频图块,每个比特率表示具有单独的视频质量。可以标识视频图块的可以由对应的广告内容图块集合替换的部分或子集。响应于此,在待组装的视频帧内的特定位置处,所标识的视频图块的子集可以被替换为对应的广告内容图块集合。可以将视频图块以及广告内容文件提供给流生成器,以组装在所选位置处包括广告内容图块的视频帧,随后可以将已组装视频帧发送给客户端设备。在一个变型中,可以基于标识每个视频图块的可用性信息的图块元数据规范来标识用于替换的视频图块。在另一变型中,可以基于从客户端设备接收的注视矢量信息来标识用于替换的视频图块。在又一变型中,可以基于注视矢量信息和图块元数据规范的组合来标识用于替换的视频图块。在一个实施方式中,图块可用性信息(例如,当图块可能变为可用于由辅助内容图块替换时)可以包括或基于时序数据,该时序数据涉及呈现时间戳(PTS)信息、解码时间戳(DTS)信息、节目时钟参考(PCR)信息、系统时钟参考(SCR)信息、挂钟参考信息、全球定位系统(GPS)时序参考信息以及关于正在播放的特定沉浸式视频资产的运行时间参考信息中的至少一种。

在又一变型中,可以通过跟踪与用于显示特定沉浸式视频资产的客户端设备相关联的用户头戴式视图器的方位来获得注视矢量信息。在另一变型中,可以通过在显示特定沉浸式视频资产时跟踪用户眼球相对于3D显示环境的不同部分的移动来获得注视矢量信息。不管注视矢量是如何获得的,它们都可以包括但不限于:归一化/非归一化笛卡尔坐标矢量、归一化/非归一化球形坐标矢量或在合适的3D几何坐标系中定义的矢量,等等。

在另一方面,公开了与360度沉浸式视频流环境相关联地操作的视频服务器系统的实施例,该视频服务器系统包括一个或多个处理器以及其上具有程序指令的一个或多个持久性存储器模块,该程序指令配置为在由系统的处理器执行时执行前述广告插入方法的实施例。

在又一方面,公开了在360度沉浸式视频环境中操作的客户端设备的实施例,该客户端设备包括一个或多个处理器、具有用户控件的媒体播放器以及其上具有程序指令的一个或多个持久性存储器模块,该程序指令配置为在由处理器执行时执行如下文阐述的基于设备的视频播放方法的实施例。

在示例实施方式中,客户端设备可以配置为与具有不同质量的各种类型的编码比特流一起操作,所述编码比特流可以基于以下中的至少一种生成:高效视频编码(HEVC)H.265压缩、开放媒体联盟(AOMedia)视频1(AV1)压缩以及H.266压缩(也被称为通用视频编码(VVC)或未来视频编解码器(FVC)压缩)。

在其他方面,公开了非暂时性计算机可读介质或分布式介质的一个或多个实施例,该非暂时性计算机可读介质或分布式介质包含有存储在其上的计算机可执行程序指令或代码部分,在作必要修改后,所述计算机可执行程序指令或代码部分在由网络节点、装置、系统、网元、订户设备等的处理器实体执行时用于执行本发明的各方法的一个或多个实施例。各个实施例的其他特征如从属权利要求所述。

本文公开的示例实施例在沉浸式媒体消费环境中提供了若干益处,包括但不限于插入各种类型的广告内容的能力,这些广告内容不仅与360度视频更一致,而且还配置为放置在视频帧中,以使得不管在创建3D空间效果时所采用的投影映射方案如何,它们都不会对沉浸式体验造成阻碍。由于广告是嵌入在视频内且没有被覆盖,因此,本发明的示例广告插入方案针对广告拦截来说适应性更强。此外,由于根据标准视频编解码器技术将广告内容图块拼接成了复用帧,因此,客户端的播放不再需要额外的解码器。另外,通过以适当的方式设置或配置插入策略,内容制作者或编辑者可以由此指定并控制视频内能放置或不能放置这类广告的某些区域。

在其他方面,基于注视矢量信息和分配带宽,可以有利地将360°沉浸式视频资产的图块化视频帧与针对更高质量视口而优化的图块子集进行组装。由于帧是选择性地进行视口优化的,因此,即使在带宽受限的环境中也可以传输高质量的复用流,不会牺牲观看体验。可以有利地将示例实施例配置来使得始终在直视范围内传递最高质量的图块,同时在距直接视野更远的多个区域上实现受控的降级质量,并且还使得处于与用户所观看位置截然相反的方向上的区域内的质量最低。因此,当流被传递给设备时,用户总是在他们直接观看的区域中获得最高的视频QoE。此外,当用户移动其头部时,某些示例实施例所促进的GOP中间切换允许以最小的等待时间尽可能快地接收高质量图块。在图块被编码来用于逐渐刷新的情况下,当用户改变其视野时,示例实施例可以进一步缩短视频的等待时间,这是因为可以通过在要传递的下一帧的初始升级中发送若干高质量图块来使视频缓冲区的大小最小化。在接下来的几帧的过程中,示例实施例基于当前视野和允许带宽来逐渐地提高剩余图块的质量,直到达到该图块质量为止。

根据以下描述和附图,实施例的其他益处和优点将是显而易见的。

附图说明

在附图部分的各附图中,通过示例而非限制的方式示出了本公开的各实施例,在附图中,相同的附图标记表示相似的元件。应当注意,本公开中对“一”或“一个”实施例的不同引用不一定是指同一实施例,并且这样的引用可以意指至少一个。此外,当结合实施例来描述特定的特征、结构或特性时,可以认为结合其他实施例来实现这种特征、结构或特性是在本领域技术人员的知识范围内,而不管这些其他实施例是否被明确地描述。

附图包含在说明书中并形成了说明书的一部分,用以示出本公开的一个或多个示例性实施例。结合所附权利要求书并参照附图,根据以下详细描述将会理解本公开的各种优点和特征,在附图中:

图1描绘了通用示例网络环境,其中可以实践本发明的一个或多个实施例,以通过各种网络配置来提供360°沉浸式视频;

图2描绘了根据示例实施例的示例网络架构,该示例网络架构包括图1中所示环境的一部分,用于促进对360°沉浸式视频的优化的图块编码;

图3描绘了示例图块编码器的框图,该图块编码器可以作为配置为在图2的网络架构的布置中操作的媒体准备和/或处理系统的一部分来提供;

图4A至图4C示出了在示例编码器布置中每帧包含一个或多个切片和/或图块的示例视频帧;

图5是示出了根据本发明的一个或多个实施例的用于促进优化的360°沉浸式视频的媒体准备/处理方法的各种框、步骤和/或动作的流程图,所述框、步骤和/或动作可以在具有或不具有本公开的附加流程图的框、步骤和/或动作的情况下(重新)组合成一个或多个布置;

图6示出了根据本发明的一个或多个实施例的示例编码布置的各种框、步骤和/或动作,该示例编码布置涉及可以实现为图5的示例媒体准备/处理方法的一部分的相位化编码(PE)方案或块内编码(BIE)方案;

图7是示出了根据本发明示例实施例的BIE方案的流程图;

图8A是示出了根据本发明示例实施例的用于在图块化编码布置中配置BIE方案的过程的流程图;

图8B是示出了根据本发明示例实施例的示例BIE方案中的附加框、步骤和/或动作的流程图;

图9是示出了根据本发明示例实施例的PE方案的流程图;

图10A是示出了根据本发明示例实施例的用于在图块化编码布置中配置PE方案的过程的流程图;

图10B是示出了根据本发明示例实施例的示例PE方案中的附加框、步骤和/或动作的流程图;

图11描绘了在示例实施例中由基于BIE的图块化编码器系统生成的具有不同质量的多个编码比特流;

图12描绘了在示例实施例中由基于PE的图块化编码器系统生成的针对特定比特率表示具有不同相位的多个编码比特流;

图13A示出了根据本发明实施例的涉及基于BIE的图块化流的示例图块拼接方案的各种框、步骤和/或动作;

图13B示出了根据本发明实施例的涉及基于PE的图块化流的示例图块拼接方案的各种框、步骤和/或动作;

图13C是示出了根据本发明实施例的关于示例图块拼接方案的附加框、步骤和/或动作的流程图;

图14示出了根据本发明示例实施例的包括从具有不同质量或QP的编码比特流中选择的图块的360°视频帧;

图15A和图15B是示出了根据本发明的一个或多个实施例的方法的各种框、步骤和/或动作的流程图,所述框、步骤和/或动作可以在具有或不具有本公开的附加流程图的框、步骤和/或动作的情况下(重新)组合成一个或多个布置,用于基于与360°沉浸式视频观看环境中的用户注视相关联的权重来促进优化的图块选择;

图16A和图16B示出了示例几何布置,用于促进对用户的注视方向与图块编码帧中的图块位置之间的角度间隔的确定;

图16C示出了出于本发明的一个或多个实施例的目的的示例360°沉浸式视频观看环境;

图17A是示出了根据本发明示例实施例的关于示例360°沉浸式视频优化过程的附加框、步骤和/或动作的流程图;

图17B是示出了根据本发明示例实施例的关于示例360°沉浸式视频优化过程的其他方面的附加框、步骤和/或动作的流程图;

图18A描绘了根据本发明实施例的具有图块位置的示例视频帧,这些图块位置具有已确定的不同权重;

图18B描绘了具有以不同方式编码的视口图块的帧的示例设备缓冲区;

图18C和图18D示出了3D观看空间,其中基于用户注视方向来分配图块质量;

图19是示出了根据本发明的一个或多个实施例的图块选择和带宽退火过程的各种框、步骤和/或动作的流程图,所述框、步骤和/或动作可以在具有或不具有本公开的附加流程图的框、步骤和/或动作的情况下(重新)组合成媒体准备/处理方法的一个或多个布置。

图20是示出了根据本发明实施例的关于示例图块选择和带宽退火过程的附加框、步骤和/或动作的流程图;

图21A和图21B是示出了根据本发明示例实施例的关于图块选择和带宽退火过程的其他方面的附加框、步骤和/或动作的流程图;

图22示出了根据本发明示例实施例的用于图块选择和带宽退火布置的发送缓冲区模型配置;

图23描绘了一个布置,其中出于本专利公开的实施例的目的,UE设备可被配置为执行360°沉浸式视频优化的某些方面;

图24描绘了根据本发明实施例的可以(重新)配置和/或(重新)布置为平台、节点或元素以实现360°沉浸式视频处理、准备和优化的一个或多个方面的装置的框图;

图25描绘了出于本专利公开的实施例的目的具有附加细节的示例UE设备的框图;

图26A至图26C描绘了示出根据本发明的一个或多个实施例的与在播放期间在360°沉浸式视频资产中插入广告内容有关的各种框、步骤和/或动作的流程图;

图27描绘了根据本发明实施例的示例图块元数据或清单规范,该示例图块元数据或清单规范用以指示视频帧中的图块的广告插入可用性;

图28A至图28C描绘了根据本发明实施例的关于在360°沉浸式视频环境中插入广告内容的示例显示场景;

图29描绘了用于促进360°沉浸式视频环境中的广告插入的系统;以及

图30是根据本发明其他实施例的与播放期间在360°沉浸式视频资产中插入广告内容有关的各种框、步骤和/或动作的流程图。

具体实施方式

在本文中对本发明实施例的描述中,提供了诸如组件和/或方法的示例之类的许多具体细节,目的是提供对本发明实施例的透彻理解。然而,相关领域的技术人员将认识到的是,可以在没有一个或多个这种具体细节的情况下或者可以借助于其他装置、系统、总成、方法、组件、材料、零件等实践本发明的实施例。在其他情况下,没有具体示出或详细描述公知的结构、材料或操作,以避免使本发明实施例的各方面变得模糊不清。因此,本领域技术人员将认识到的是,可以在没有这种具体组件的情况下实践本公开的实施例。还应该认识到的是,借助本文阐述的详细描述并参考附图,本领域的普通技术人员能够在不进行过度实验的情况下制造和使用一个或多个实施例。

另外,诸如“耦合”和“连接”之类的术语及其派生词可以在以下描述中、权利要求书中或这两者中使用。应理解,这些术语不一定是彼此的同义词。“耦合”可以用来表示相互之间可以或可以不直接物理或电接触的两个或多个元件相互之间配合或相互作用。“连接”可以用于表示在彼此耦合的两个或多个元件之间建立通信,即通信关系。此外,在本文阐述的一个或多个示例实施例中,一般而言,元件、组件或模块可以配置为执行功能,前提是可以将该元件编程来用于执行该功能或者以其他方式在结构上布置为执行该功能。

如本文所用,网元、节点或子系统可以由一个或多个服务网络设备组成,包括与网络上的其他设备(例如,其他网元、终端站等)通信地互连的硬件和软件,并且该网元、节点或子系统适于在虚拟/非虚拟环境中托管关于多个订户和相关联的用户设备(UE)节点的一个或多个应用或服务,所述订户和相关联的UE节点操作以在媒体分发网络中接收/消费内容,在该媒体分发网络中,可以使用基于流的或基于文件的机制来分发和传递媒体内容资产。这样,一些网元可以设置在无线电网络环境中,而其他网元可以设置在公共分组交换网络基础设施中,包括或涉及可以包括公共、私有或混合CDN的合适内容传递网络(CDN)基础设施。此外,包括本文阐述的一个或多个实施例的合适网元可以涉及地面和/或卫星宽带传递基础设施,例如,数字订户线(DSL)网络架构、符合线缆数据业务接口规范(DOCSIS)的线缆调制解调器终接系统(CMTS)架构、交换数字视频(SDV)网络架构、混合光纤同轴(HFC)网络架构、合适的卫星接入网络架构或者通过蜂窝和/或WiFi连接的宽带无线接入网络架构。因此,一些网元可以包括“多个服务网元”,所述“多个服务网元”除了为多个应用服务(例如,数据和多媒体应用,包括不同质量的或已定义的360°沉浸式视频资产(也被称为360度视频资产或简称为360视频资产))提供支持之外,还为多个基于网络的功能(例如,360°沉浸式A/V媒体准备传递策略管理、会话控制、QoS策略实施、带宽调度管理、内容提供商优先级管理、流策略管理等)提供支持。示例订户终端站或客户端设备可以包括各种系留(tethered)的或未系留的设备,所述设备可以使用基于流和/或文件的下载技术来消费或传递媒体内容资产,在某些实施例中,这可能涉及某种类型的速率适配。因此,说明性客户端设备或UE设备可以包括配置为尤其执行一个或多个客户端应用以例如使用HTTP、HTTPS、RTP等经由宽带接入网络接收、记录、存储和/或解码/渲染360视频内容、实况媒体和/或静态/点播媒体的任何设备,所述媒体可以包括来自一个或多个内容提供商的虚拟现实(VR)媒体、增强现实(AR)媒体、混合现实(MR)媒体。因此,这样的客户端设备可以包括下一代基于IP的STB、网络电视、个人/数字视频记录器(PVR/DVR)、网络媒体投影仪、便携式笔记本电脑、上网本、掌上电脑、平板电脑、智能手机、多媒体/视频电话、移动/无线用户设备、便携式媒体播放器、与3D显示设备协同地操作的便携式游戏系统或主机(诸如

本专利公开的一个或多个实施例可以使用软件、固件和/或硬件的不同组合来实现。因此,可以使用在一个或多个电子设备或节点(例如,订户客户端设备或终端站、网元等)上存储和执行的代码和数据来实现附图(例如,流程图)中所示的一种或多种技术。这样的电子设备可以使用计算机可读介质来存储或传送(在内部和/或通过网络与其他电子设备)代码和数据,所述计算机可读介质诸如非暂时性计算机可读存储介质(例如,磁盘、光盘、随机存取存储器、只读存储器、闪存设备、相变存储器等)、暂时性计算机可读传输介质(例如,电、光、声或其他形式的传播信号(例如载波、红外信号、数字信号))等。另外,这样的网元通常可以包括耦合到一个或多个其他组件的一个或多个处理器的集合,所述一个或多个其他组件诸如一个或多个存储设备(例如,非暂时性机器可读存储介质)以及存储数据库、用户输入/输出设备(例如,键盘、触摸屏、指向设备和/或显示器)和用于实现信令和/或承载媒体传输的网络连接。处理器集合与其他组件的耦合通常可以通过以任何已知(例如,对称/共享多处理)的或迄今未知的架构布置的一个或多个总线和桥(也被称为总线控制器)来进行。因此,给定电子没备或网元的存储设备或组件可以配置为存储用于在该元件、节点或电子设备的一个或多个处理器上执行以实现本公开的一种或多种技术的代码和/或数据。

现在参考附图并且更具体地参考图1,图1描绘了通用示例网络环境100,其中可以实践本发明的一个或多个实施例,以提供分布在各种配置上的沉浸式视频来供一个或多个观看设备消费。示例视频源/捕获系统102示出了配置为记录、生成、读取、解码、提供或以其他方式获得媒体的任何布置,该媒体可渲染来在多种客户端设备环境中进行360度观看,客户端设备环境可以包括与各种接入/连接技术配合地操作的系留或非系留设备、独立设备、订户房屋设备、游戏设备和/或与3D显示设备成对组合地操作的设备等,如本专利申请中其他地方所指出的。作为说明,计算机/显示器144可以配置为解码和渲染各种类型的360°视频内容,所述360°视频内容可以根据本发明的教导进行编码和带宽优化,如将在下面进一步详细所述的,计算机/显示器144可以与头戴式显示器(HMD)或头戴式视图器142等相关联,而头戴式显示器(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操作以使用合适的映射投影方案(例如,球形图像投影,包括但不限于等矩形投影、立方体贴图投影、等角立方体贴图(EAC)投影、金字塔投影、鱼眼投影等)来从拼接流104B/108生成投影映射流114。在又一实施例中,视频流可以包括可以提供给源视频编码模块112的拼接和投影映射流104C,源视频编码模块112操作以根据实施方式来实现一种或多种编码或压缩方案,例如,包括但不限于H.264或高级视频编码(MPEG-4AVC)、高效视频编码(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。如下面将进一步详细阐述的,图块化编码器/转码器120(其功能可以在一些实施例中与编码器系统112和/或投影映射系统110集成)操作以生成与360°沉浸式视频资产或节目相对应的输入视频流的多个比特率表示的编码流,其中具有某个视频质量等级的每个比特率表示可以被编码为包含具有适当修改的图块、帧和/或切片数据的帧,以促进带宽优化的360°视频分发。图块化打包器122操作以打包来自编码器/转码器120的编码流以便于存储124,并提供相关联的清单文件126,所述清单文件126描述了图块分组、图块位置、媒体类型和编码流的有关特性。如以下将进一步阐述的,图块选择和流生成系统132操作以响应于控制输入来选择适当的图块,并生成复用视频输出流,该复用视频输出流可以由与服务于观看设备138的接入网络136相关联的传递服务器134传递。在示例实施方式中,可以基于多个协议(例如,HTTP/S、分段HTTP/S、RTP/RTCP等)通过各种网络基础设施来实现复用视频流向最终用户的传递,如本专利申请中其他地方所述的。

技术人员将认识到的是,可以在分层网络架构中实现前述概括的示例网络环境100,同时,媒体捕获和准备的各个方面(包括例如源流拼接、投影映射、源媒体压缩、图块化/ABR编码/转码、打包等)以及分发/上传和边缘节点过程在设置于不同层次级别上的不同网络部分中发生,所述不同网络部分涉及一个或多个运营商、内容传递网络(CDN)、边缘网络等。此外,在一些实施方式中,至少一些前述装置和过程可以是基于云的。在一些布置中,CDN可以是服务器的大型分布式系统,服务器被部署在连接到互联网或其他公共/私有通信网络的多个数据中心中。CDN可以是受管理的或未受管理的网络,也可以是受管理的或未受管理的网络的联合。

因此,在前述示例网络环境内可操作地相关联的媒体服务器/源系统的示例实施例可以配置成例如全球头端,以接受来自直播源和/或静态文件源(例如,在线内容提供商(诸如

不受限制地,根据本发明的实施例,图2中描绘了示例网络架构200(其可以形成图1所示的环境的一部分),用于促进对沉浸式视频的优化图块编码。媒体输入流202示出了与360°视频资产相对应的视频流,该360°视频资产可以如图1所示地进行合适的拼接、投影映射和/或编码,然后可以将其分发、上传或以其他方式提供给与运营商内容传递网络206相关联的CDN原始服务器204。广泛地讲,媒体输入流202可以包括与直播电视内容、IPTV内容、时移(TS)TV内容、位移(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兆比特/秒(或Mbps)的范围内编码32K流,可以在200至300Mbps的范围内编码16K流,可以在80至100Mbps范围内编码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相关联地操作以实现与订户房屋234的房屋设备236的360°沉浸式视频会话,房屋设备236由受管理带宽管道232服务,受管理带宽管道232经由合适的接入网络(例如,DSL/DOCSIS网络部分,该网络部分具有合适的基础设施(其可以包括例如路由器、DSLAM/CMTS元素等)或合适的3G/4G/5G无线电接入网元素(在某些实施方式中包括固定无线基础设施等))来实现,所述合适的接入网络通常表示为节点或元素230。

在一个布置中,视频优化系统215可以包括图块选择子系统218,其操作以响应于带宽退火和QoE管理策略以及用户注视矢量信息来将从不同视频质量比特流中选择的图块220提供给图块组合和流生成子系统222。可以将具有来自不同比特流224的图块的复用视频帧提供给传递服务226,以促进将复用图块流228传输到下游基础设施230。广泛地讲,当生成针对360°沉浸式视频会话的用户请求250时,该用户请求由视频后台系统238处理,并经由消息252转发给视频优化系统215,以获得所请求的360°媒体的会话ID和相关位置信息。响应于来自视频优化系统215的响应消息251,视频后台系统238操作以将包括媒体的适当URL信息和会话ID的响应248提供给请求设备236。用户注视信息(其最初可以是默认设置)以及相关联的会话ID信息可以作为消息246提供给基础设施元素230,而消息246可以作为消息254传播到视频优化系统215。此外,基础设施元素230操作以在有关的过程或单独的过程中将包括会话ID信息的动态带宽分配消息254提供给视频优化系统215。如前所述,图块选择子系统218可以配置为响应于与带宽分配、用户注视矢量信息或这两者有关的控制消息而进行操作,以便选择具有不同视频质量的图块,可以将这些图块组合成或拼接成帧,由此生成复用图块编码视频输出流。在一个布置中,可以在视频流传递期间将图块组合和流生成子系统222提供为视频优化系统215的一部分。在另一个布置中,可以在播放期间在客户端侧(例如,在客户端设备236或与其相关联的某个其他房屋设备处)而不是在服务器侧实现图块拼接。在这种布置中,客户端侧拼接功能操作以接收所选择的图块并执行必要的拼接,从而生成待解码和渲染的拼接流。在以下各部分中将进一步详细阐述与前述过程、子系统和组件有关的各种实施例。

图3描绘了示例图块编码器300的框图,该图块编码器可以作为媒体准备和/或处理系统的一部分而提供,该媒体准备和/或处理系统配置为在图2的网络架构的布置内操作。不受限制地,下面将阐述示例图块编码器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-4AVC、H.265/HEVC等。(3)B图片或B帧(双预测编码图片或双向预测编码图片),其包含与GOP内的之前及之后的I帧或P帧的差信息,并且包含相对于先前解码的图片的运动补偿差信息。在旧设计(诸如MPEG-1和H.262/MPEG-2)中,每个B图片仅能引用两张图片,一张图片按照显示顺序在B图片之前,且另一张按照显示顺序在B图片之后,所有引用图片都必须是I图片或P图片。这些限制条件不适用于更新的标准,例如H.264/MPEG-4AVC、H.265/HEVC等。(4)D图片或D帧(DC直接编码图片),其用作图片的快速访问表示,针对于丢失鲁棒性或者某些类型的视频(例如,MPEG-1视频)中的快进。

通常,I帧表示GOP的开始。在此之后,可以出现几个P帧和B帧。I帧包含完整图像,不需要任何附加信息即可对其进行重建。通常,编码器使用使得每个I帧成为“清晰的随机访问点”的GOP结构,这样一来,解码就可以在I帧上清晰地开始,并且在对正确的I帧进行处理之后纠正GOP结构内的任何错误。GOP结构通常由两个数字表示,例如,M=3、N=12。第一个数字表示两个锚定帧(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),每个编码树单元包含某个数量的亮度编码树块(CTB)和色度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示出了包含多个CTU的示例视频帧400B,所述多个CTU被组织成图块406-1至406-N的矩阵或阵列,其中每个图块被示出为方形,该方形具有2x2配置的4个CTU 408。作为进一步说明,图4C中示出了根据HEVC的示例4K视频帧400C,4K视频帧400C可以包括3840水平像素×2160垂直像素的阵列,该阵列被划分为16列和8行,从而得到128个图块。如前所述,这些图块可以不必在帧400C内具有相等的大小。

出于本专利申请的目的,由于可以通过多种方式并且以不同的级别划分视频帧,因此,术语“编码树单元”、“编码树块”、“编码单元”、“宏块”或“块”或类似的引入通常会被视为可以关于图块、切片和/或帧应用的抽象编码单位,并不局限于任何特定的视频压缩标准或技术。

返回图3,可以关于基于PE或BIE的方案来将示例图块编码器300配置为生成X帧,其中将X帧编码为具有对应首部但却带有经过帧内编码的各个切片和/或图块的P帧或B帧,即仅包含I块的I切片和/或I图块。换言之,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帧。因此,将帧内/帧间选择块312配置为使得图片内估计/预测316始终是活动的并且用于图片的所有块。同样地,由于所有块都针对X帧进行了帧内编码,因此,可以禁用运动补偿和估计318。取决于图块编码器实施方式,在示例实施例中,包括变换、缩放和量化314、逆变换320、滤波控制322、解块和样本自适应偏移(SAO)滤波324、解码图片缓冲区326的其余块可以保持不受影响。通用控制数据328、量化变换系数数据330、帧内预测和滤波控制数据332以及运动数据334可以提供给首部格式化器和熵编码器336(例如,上下文自适应二进制算术编码(CABAC)引擎),以用于生成与视频资产的每个比特率表示相对应的一个或多个编码比特流338。如前所述,可以将编码比特流338提供给图块化打包器(在该图3中未示出)进行打包和清单生成,以便于在适当的下游网络位置处实现资产的(预)供应。

图6示出了根据本发明实施例的示例编码布置600的各种框、步骤和/或动作,该示例编码布置600涉及可以实现为示例媒体准备/处理的一部分的PE方案或BIE方案。在框604处,接收视频源流602,如前所述,视频源流602可以是未编码的、编码的、拼接的、投影映射的或以其他方式预处理的。在框606处,可以确定在何处选择PE或BIE。作为响应,可以适当地配置图块编码器系统(例如图3中的图块编码器300)中的模式选择器。一旦选择了PE,就可以将视频源流602编码/转码为具有不同质量和/或比特率的多个流,每个流以图块进行编码,如框608所示。每个质量或比特率流都经过相位化编码以生成多个PE流610。作为说明,附图标记614-1是指与具有对应相位615-1至615-P的相位编码流612-1的集合有关的质量信息(取决于X帧在GOP结构中放置的位置,其中P是GOP大小),所有PE流的量化参数(QP)设置为30和/或比特率为约7.0兆比特/秒,这可以表示质量的下限。以类似的方式,附图标记614-N是指与具有对应相位615-1至615-P的相位编码流612-N的集合有关的质量信息,所有这些相位编码流的QP设置为16和/或比特率为约105.6兆比特/秒,这可以表明质量的上限。

如果选择了BIE(也被称为全帧内编码,如本专利申请中其他地方所述),则视频源流602可以被编码/转码为具有不同质量和/或比特率的多个流(框616)。在一个示例实施例中,可以使用标准编码方案(例如HEVC、AV1等)对每个流进行图块编码,以生成正常或常规的图块编码流618。与以上关于相位图块化流610的讨论类似,作为说明,附图标记622-1是指与QP设置为30和/或比特率为约7.0兆比特/秒的常规图块编码流620-1有关的质量信息,这可以表示质量的下限。同样地,附图标记622-N是指与QP设置值为16和/或比特率为约105.6兆比特/秒的常规图块编码流620-N有关的质量信息,这可以表示更高质量的流。

另外,视频源流602也被编码/转码为具有对应质量和/或比特率的多个流(框617),其中对每个流进行图块编码,使得其GOP结构的所有帧被提供为X帧。作为说明,附图标记632是指多个BIE编码和图块化流,其中QP设置为30和/或比特率为约7.0兆比特/秒(有时也缩写为Mbs或Mb/s)的质量信息636-1与较低质量的BIE编码图块化流634-1有关,而QP设置为16和/或比特率为约105.6兆比特/秒的质量信息636-N与较高质量的BIE编码图块化流634-N有关。

技术人员对此进行参考后将认识到的是,当编码器配置有目标QP时,编码比特流的比特率在比特流的过程中在一定程度上被平均。例如,如果在源编码方案中以QP为10作为目标,则在无运动区域中可能会看到低比特率(例如,得到4Mb)。在高运动区域中,比特率可能会高达200Mbs。因此,在如前所述的以特定QP为目标的示例编码方案中,输出流的比特率可以在某个范围内发生变化。因此,应当理解,与图6中的PE或BIE流的QP相关联地示出的比特率通常表示的是一段时间内的平均比特率。如下面将进一步看到的,当在编码方案中以QP作为目标时(对应地具有变化的比特率),本发明的与图块选择有关的某些实施例可以配置为:根据关于特定的360度沉浸式视频会话的整体的分配比特率,选择图块并对其进行调整。在附加或替代实施例中,示例编码器可以配置为生成具有特定目标比特率而不是目标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/506B的过程可以作为单个编码操作执行,使得框504的友好自适应比特率编码/转码通过使用单个编码过程采用PE方案(框506A)或BIE方案(框506B)来完成。此后,可以将编码比特流打包(框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所示。如前所述,可以使用任何与图块兼容的压缩方案来将第一编码比特流和第二编码比特流编码为相应的图块编码流,其中图块编码比特流的每个帧包括每帧组织成至少一个切片的图块阵列,每个图块包括帧的形成为多个编码单元、块或树的媒体数据的一部分。本领域技术人员将认识到,在一个实施方式中,框704和706的过程可以在如先前结合图5的框504和506A/506B所述的单个编码过程中执行。例如,实际上期望单个过程编码/转码会使计算复杂度最小化,并且还使由串联或级联编码引入的降级最小化。

图11描绘了在示例实施例中由基于BIE的图块化编码器系统生成的具有不同质量或QP的多个编码比特流1100。附图标记1102-1和1102-N是指具有对应质量或QP的N个流或比特率表示。示出了与特定比特率表示(例如,QP-N 1102-N)对应的正常编码图块化流1104A,其具有带四个帧的GOP结构1106A,以I帧开始,随后是三个P帧。对应的BIE编码流1104B具有GOP结构1106B,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,而通过使用与base_qp的qp_delta可以实现不同的QP值。可以基于一个特定的时刻来强加此要求。也就是说,如果对比特流中的各图片进行了编号,那么在一个布置中,来自两个比特流的具有相同编号的任何两张图片都必须使用相同的base_qp值,该两个比特流被用作了拼接的输入。出于本发明的目的,“base_qp”可以描述如下:同一视频的所有编码版本或比特率表示中的第i个帧(针对每个i=1至N,其中N是视频序列中帧的总数)将具有相同的切片QP值。换言之,切片QP是base_qp。尽管可以在所有生成的流中将切片QP设置为相同的值,但它可以随时间流逝发生变化。出于本发明的目的,参数delta_qp可以描述如下:通过指派给定的qp_delta,每个图块中发信号通知QP的第一个块被配置为发信号通知delta_qp(与基本QP的变化量)。可以注意到,在一些实施例中,在拼接之后可能存在解块不匹配。

可以出于本发明目的而定义的另一参数是ROI(关注区域),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网格中所有图块的QP为16。

在一个实施例中,针对特定帧,可以使用相同的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处,可以将base_qp参数写入编码流的所有切片QP首部中。为了编码不同质量的流(同时具有相同的base_qp),可以基于目标QP如上所述地关于每个流来配置qp_delta参数(框808)。例如,为了实现特定流的22的目标QP,可以将qp_delta设置为-10,其中base_qp为32。如前所述,要用作拼接的输入的具有相同图片编号的所有图片被要求必须使用相同的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方案,X帧可以在每个GOP中使用一次(而不是像在BIE中那样使用多次)。本质上,基于PE的图块化编码涉及用于生成流的过程和装置,其中除了作为I帧的第一帧之外,所有帧均具有P切片首部,同时周期性地存在X帧(即BIE帧或AIE帧),其中所有块都进行帧内编码,但切片首部是P切片的(或B切片的,其中B帧也按顺序进行编码)。通常,任何两张可能要用作拼接输入的图片的所有切片都必须具有相同的切片类型(slice qp)以及切片首部和PPS中的多个其他设置。与上述BIE方案(其中除了第一帧之外,GOP的所有帧都是X帧)相反,PE方案的实施例配置为仅在根据以下两个参数的所选择的帧位置处提供X帧:周期(其是GOP的大小,即GOP中帧的数量)以及相位(其是范围{0至[周期-1]中的整数})。可以如下确定PE方案中出现X帧的帧位置。令N是流中的帧总数。第一帧被编码为I帧。对于第i个位置处的帧(2≤i≤N),如果{i Mod(周期)≠相位},则将该帧编码为常规P帧;否则(即{i Mod(周期)=相位),将该帧编码为X帧(以帧内模式对P切片首部和所有块进行编码,与前面的帧无关)。应注意,示例PE方案可以为媒体输入的每个质量/比特率表示提供与GOP中存在的帧位置(即GOP大小)数量相同的相位编码流。

出于本发明的目的,通过在X帧中使用P或B切片首部而不是I切片首部,可以在示例性实施例中实现几个优点,包括但不限于:在用户观看环境中促进GOP中间切换。假设用户正在观看360°沉浸式视频节目或内容,其中直接注视视野(FoV)具有高质量(即较低QP),并且用户将头移到GOP的中间。用户现在在其新视野或视口中看到质量较低的视频(较高的QP)。服务器可以在下一GOP开始时发送高质量(低QP)的I帧,但这样做会导致大量的等待时间,这是因为在针对该视口的下一个GOP的高质量I帧将被呈现之前会需要一些时间。期望在GOP中间时尽快地接收或获得以高质量编码的新视野的I帧。但是,在传统的沉浸式视频观看环境中,只是像在GOP中间那样放置I帧是不可行的。通过生成X帧(即块内编码帧或全帧内编码帧)并在GOP的中间(例如,在GOP结构中的任何帧位置处)发送该X帧,本发明实施例因此能够有效地升级视野的质量,类似于在具有高质量图块的GOP中间呈现I帧的效果。因此,通过在AI或BI编码帧(即AIE/BIE帧或X帧)中提供P切片首部,本发明实施例允许在GOP中间使用在FoV的关注区域(ROI)中具有高质量数据的帧。

此外,在将帧划分为图块和切片的图块编码方案中,涉及X帧的本发明实施例使得能够在单个输出压缩帧中混合图块,其中一些图块可以使用空间或时间预测(即,图片间预测),而一些图块可以仅使用空间预测(例如,仅包括帧内编码块)。仅由帧内编码块组成的图块可以源自X帧。在本专利申请的上下文中,关于输出流生成的术语“混合”、“复用”、“拼接”、“接合”或类似引人的术语可以指用于将一个压缩图块(例如,图块A)与另一个压缩图块(例如,图块B)连接以形成表示单个输出帧的比特流的一部分的装置和方法,其中图块A和图块B可以源自对内容的单独编码,这将在下文中进一步详细阐述。

PE方案的优点之一是克服了在BIE方案中可能存在的漂移问题(即,消除或减少漂移)。应当理解,尽管BIE允许用新视口的X帧来替换先前视口的P帧,但是,后续帧是新视口的常规P帧,这些常规P帧以对先前帧做出的预测来进行编码。因此,当将P帧替换为X帧并且后续帧随后使用此X帧进行预测而不是使用常规比特流的原始帧进行预测时,就有可能出现预测误差可能发生累积的漂移。另一方面,在相位化编码中,所生成的流使用位置=<相位>+i*<周期>处的X帧来预测后续的P帧,因此,避免了P帧使用与在编码期间使用的帧不同的帧来进行预测的情形。因此,不会出现由于是根据与在编码期间生成的帧不同的帧进行预测而导致的预测误差,由此可以避免由于这种类型的预测误差而导致的任何潜在漂移。但是,由于需要存储GOP中的在X帧之后的P帧,PE方案可能需要更大的存储量。

此外,可以有利地利用PE方案的实施例来促进帧的逐渐刷新,由此在播放期间通过仅选择图块子集以升级其质量并发送其适当的相位化编码图块来实现较低的等待时间。尽管在BIE方案的实施例中P帧被替换为X帧,但在逐渐刷新帧退火方案中,PE编码流可以用于将所选图块替换为从适当的PE编码流获取的对应图块。另一方面,在另一实施例中,BIE方案也可以有利地逐图块操作。因此,关于基于PE的实施例,如果周期为P且帧数为X,则可以通过以下等式获得对应的相位:相位={X Mod P}。因此,在编码视频序列的传递或播放期间,假设已经在帧X中将某个图块T选择来升级到QP质量q,则可以将所选图块(在帧X和后续帧中,直到T的下一升级/降级或者视口改变)替换为来自相位满足以下关系式的流的图块T:相位={X Mod P},其中QP=q。之后,在帧X之后的帧中的属于相同GOP的同位置图块被替换为来自相同PE编码流的对应同位置图块。应当理解,在用户改变注视方向时将来自不同流的图块级联的优点类似于以上阐述的在GOP中间期间用户改变其注视的场景。相同的切片QP被用于切换/替换图块,这是因为:如果两个输入图块以不同的实际QP进行编码并且针对每张图片以单个切片进行编码,那么在切片QP不同的情况下,如果不对流进行低级(low level)重写,则输出流中的图块的QP将不可能是正确的。下面将参考本专利申请的附加实施例进一步阐述与逐渐刷新帧退火和图块选择有关的附加细节。

关于PE的潜在缺点可能是它需要更多的存储空间,因为在许多相位中对输入流进行了编码,由此可能导致与GOP大小一样多的流(而不是像BIE中那样只有两个流)。在示例实施方式中,可以关于减少等待时间而不漂移这一优点来对这一缺点进行折中处理。为了获得最快的质量变化响应,可以将相位数设置为等于GOP的大小(即周期P),但是示例实施例可以提供使用较少相位并消耗较少存储空间的折中方案,同时质量升级的等待时间可能更长,这是因为图块升级将在下一相位上完成。

图9是示出了根据本发明示例实施例的PE方案900的流程图。在框902处,可以接收与360°沉浸式视频资产相对应的媒体输入流。如前所述,可以生成媒体输入流的多个比特率表示,每个比特率表示具有单独的视频质量,例如,与用于比特率表示和/或目标比特率或者相应质量的其他标记的对应目标QP值有关或受其控制(框904)。由对应QP控制的每个比特率表示被编码为多个相位编码比特流,属于特定比特率表示的每个相位编码比特流包括具有特定GOP结构的多个(N个)帧,该GOP结构具有GOP大小(p),其中该多个相位编码流的数量等于GOP大小。在一个布置中,GOP大小,即p>1。对于每第p个相位编码比特流,N个帧如下进行编码:(i)至少第一帧被编码为帧内编码(I)帧;以及(ii)帧位置i(2≤i≤N)满足关系式{i Mod(GOP大小)}=p的帧被编码为X帧,X帧具有P帧的切片首部并且仅包括仅具有帧内编码的媒体图像数据的块(即类似于I帧)。否则,该帧被编码为常规P帧,其具有带P切片首部的预测编码帧的媒体数据(框906)。在某个布置中,P帧还可以包含帧内编码数据。在实施例中还对B帧进行编码的情况下,类似于前述过程,可以提供代替常规B帧的X帧。如先前结合图5和图7所指出的,在一个示例实施例中,出于计算效率的考虑,框904和框906处阐述的操作可以被组合,以在单个编码过程中执行。

在PE方案的附加或替代实施例中,相位编码比特流可以具有除I帧之外的帧,来作为编码视频序列的第一帧,这可以根据本文的教导通过编码器中的适当设置来实现。例如,第一帧可以是X帧(或某个其他非I帧)。编码序列的所有其他帧可以基于相位在合适位置包含预测帧(P/B帧)和X帧。

图12描绘了在示例实施例中由基于PE的图块化编码器系统生成的针对特定比特率表示具有不同相位的多个编码比特流1200。作为说明,由于在本示例中采用的是四个帧的GOP大小,因此,将具有QP值22的QP-N流1202-N编码为或以其他方式提供为四个相位编码流1204-1至1204-4。对于每个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配置过程,可以将base_qp参数写入编码流的切片QP首部中(框1012)。如前所述,要求要用作拼接输入的具有相同图片编号的所有图片都必须使用相同的base_qp值。因此,在示例实施例中,在所有流首部中设置相同的base_qp参数不是必须的要求。为了促进具有不同质量(同时具有相同的base_qp)的编码流,可以基于目标QP如上所述地针对每个流配置qp_delta参数(框1014)。如之前在示例BIE配置过程中一样,可以配置-10的qp_delta,其中base_qp是32,从而针对特定流实现22的目标QP。可以配置空间运动矢量预测,使其被限制在仅图块内(框1016)。也就是说,在示例实施例中,不允许运动矢量越过图块边界(即,仅允许图块内预测,并且不允许跨图块边界的帧间预测或上下文选择)。这就意味着:运动矢量被设置为使得在对图块内部的块进行运动补偿插值时不会读取在任何同位置图块的边界之外的样本。可以为编码器配置ROI网格,使其使用qp_delta信息来关于帧的特定区域对特定流进行编码(框1018)。此外,在如上所述的示例PE配置过程中,也可以禁用TMVP(框1020)。

应该注意的是,在一个实施例中,示例PE配置过程与BIE配置过程大致相似,可以根据GOP大小对每个“相位化”流执行该过程。此外,类似于使用某些参数的BIE配置过程800A,PE配置过程的附加或替代实施例可以涉及作为图10A的流程图中例示的参数的补充或替代的其他参数。

图10B是示出了根据本发明实施例的示例PE实施方式中的框、步骤和/或动作的流程图。通常,编码器可以配置为在基于PE的图块化编码期间实现若干判定,由此仅在每个相位编码流的特定帧位置处生成X帧。在框1034处,接收视频输入1032以进行编码。在框1040处,将图块化编码器配置用于如上所述地基于周期(框1036)和相位(框1038)来实施PE过程。对于每个流,将第一帧编码为I帧(框1042)。此后,可以实施迭代过程以逐帧地实现适当的编码判定,该迭代过程开始于确定视频序列是否已经到达末尾(框1044)。如果未到达末尾(即,视频序列中仍存在需要处理的帧),则递增帧索引(i)(框1046),并且获得下一帧并将其表示为第i帧(框1048)。确定是否满足模数关系{i Mod(周期)=相位}。如果是,则如框1054、1056和1058所述,将帧编码为X帧。否则,将帧编码为常规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方案(其中在无相位的情况下替代X帧,这可能导致漂移并导致较低的峰值信噪比(PSNR)值,进而导致GOP其余部分的较低QoE的流)相比,相位化编码提供了更好的QoE。如前所述,相位化编码的潜在缺点是需要多个流,而这可能导致大量的编码处理开销和存储空间。

将在下面阐述与如何使用PE或BIE方案来拼接图块编码比特流有关的示例实施例。如前所述,图块拼接实施例可以在流传递阶段期间在服务器处实施,或者在客户端侧实施以便进行播放。通常,用于拼接图块的示例实施例涉及:在可以从中选择图块的比特流之中,利用不同质量(例如,基于不同的QP、目标比特率或其他标记)的比特流,以及关于与视频图片有关的各种参数化数据(例如视频参数集(VPS)、序列参数集(SPS)、图片参数集(PPS)、补充增强信息(SEI)等)确保存在兼容性。通常,为了便于拼接,图块结构优选地应该是随时间流逝恒定不变,而这又与由本发明的编码器执行的图块编码过程有关。比特流拼接器模块响应于输入而操作,该输入包括来自不同图块编码流的图块的列表,这些图块可以组合来生成新的输出比特流,其中离视口更近的图块与离视口更远的图块相比具有更高的质量。此外,可以将根据本发明的教导的用于执行图块组合和流复用的示例实施例配置为使得输出流生成仍然保持与已知编解码器标准(诸如MPEG HEVC/ITU-T/ISO23008部分2/H.265规范)以及新兴标准(诸如AV1、H.266、VCC等)兼容。

为了拼接BIE编码流,默认情况下可以使用来自常规流的图块进行接合(例如,直到基于用户的注视或带宽分配提供某种控制输入为止)。获取来自BIE编码流的图块的唯一情况是在视口发生变化时(由此需要X帧,X帧是具有可以适合在GOP中间的P切片首部的帧,但是图块是帧内编码的,因而可呈现新的视口)或者在带宽退火处理确定升级图块的质量时(在这种情况下,具有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)较低质量的常规流(例如,QP设置为30);(2)较高质量的常规流(例如,QP设置为22);以及(3)较高质量的BIE(全帧内)流。广泛地讲,当视口发生改变时,某些图块的质量可能会提高。这一点是在框1312中完成的,这就意味着:例如,在先前图片中是从流(1)中获取的位置A处的图块现在是从流(3)中获取的。在下一张图片中,如果图块仍在视口内,则应从流(2)中获取位置A处的图块。如果图块不再位于视口内,则可以从流(1)中获取位置A图块。更具体地,它可以进一步取决于注视矢量信息。换言之,不仅仅是位置A处的图块是否在视口中;而是在于,在用于图块选择的视线至权重(gaze-to-weight)确定方案中,图块所在的位置(下面进一步详细描述)。因此应当理解的是,在本发明的示例实施例中,视口内的取决于它们所处位置的图块可基于图块距离直接视线有多远来进行升级或降级。

以类似的方式,图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,其中示出的是根据本发明实施例的示例360°视频帧1400,该视频帧包括从具有不同质量或QP的编码比特流中选择和接合的图块。作为说明,视频帧1400由4K视频输入的128个图块(16列乘以8行)形成,其以未包装格式示出(即,未投影在3D球形空间中),其中基于视口或注视矢量位置,区段1402可以对应于帧1400的ROI。根据本文的教导,ROI 1402可以通过接合高质量图块(即,从具有低QP(例如,105.6Mbps下的QP-16)的编码比特流中选择并在拼接过程中级联的图块)而形成。设置在ROI 1402附近/旁边的区域或区段可以具有中等质量的图块(例如,区段1404)。另一方面,远离ROI 1402设置的区段或区域(例如,远离视口的区段或区域)可以由较低质量的图块形成,如区域1406和1408所例示的。

为了促进基于注视的图块选择控制,本发明的附加实施例涉及:监视用户正在360°沉浸式视频节目中观看的位置(即用户的视口),并基于用户的注视来确定适当的图块权重。通常,注视矢量(GV)可以由用户/客户端设备返回,该注视矢量定义了3D沉浸式空间中的显示360°视频的注视方向,例如头戴式视图器指向的位置。在其他实施例中,可以出于类似目的跟踪用户的眼球运动。如下面将看出的,基于3D显示环境中帧的映射方式,图块化帧的图块还具有方向矢量(其不取决于用户的注视)。可以计算图块矢量和注视矢量的点积(也被称为标量积或内积),以确定注视方向与帧的任何图块中间的方向之间的角度间隔,可以将该角度间隔提供给加权函数模块,以确定对应的图块权重。

图15A和图15B是示出了根据本发明的一个或多个实施例的注视控制方案的各种框、步骤和/或动作的流程图,所述框、步骤和/或动作可以在具有或不具有本公开的附加流程图的框、步骤和/或动作的情况下(重新)组合成一个或多个布置,用于促进优化的图块选择。过程1500A涉及从操作以向用户显示360°沉浸式视频资产的客户端设备接收注视矢量,其中每个视频帧包括投影在用户所观看的3维(3D)显示环境(用户沉浸在其中)上的图块阵列,注视矢量定义了用户在任何特定时间观看的3D显示环境中的注视方向(框1502)。在一个实施例中,注视矢量信息可以包括可与显示环境相关联的3D笛卡尔坐标系中的(x,y,z)信息。在另一个实施例中,注视矢量信息可以包括基于等矩形投影映射的3D球坐标系中的(ρ,θ,

过程1500B阐述了在示例实施例中关于实现基于注视的控制的附加细节。在框1522处,可以根据注视矢量和方向矢量之间的角度间隔的余弦来确定图块权重,该方向矢量与在360度沉浸式视频资产的2D视频帧的合适3D空间投影中的图块位置相对应。在框1524处,可以将图块权重连同动态带宽分配输入一起作为输入提供给图块选择和带宽退火过程,这在本专利申请的其他地方进一步描述。

在一个示例实施例中,根据图块相对于注视矢量所处的位置,确定将多少带宽分配给与权重对应的那个图块位置。在注视矢量

在归一化后,即如果

本发明的实施例不是将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度,则将x=-0.5提供给加权函数,由此得到0.05的权重值(假设α=0.1),这与图块方向与注视矢量相距240°的情况相同。

进一步地,注视矢量信息和图块方向矢量信息都可以关于在媒体准备期间用于图块编码的图块网格而被转换为适当的图块坐标信息,以便于通过行和列来标识图块,这种图块坐标信息可以与权重信息一起输入到图块选择和带宽退火过程。本领域技术人员将认识到的是,图块坐标信息的确定取决于在示例实施例中使用的投影映射。图16B示出了等矩形投影映射方案,该方案产生了球形显示环境1600B,其中各图块形成表面。一个示例实施方式规定了在{0,1,0}方向上放置北极1605并在相反方向上放置南极1607,而图块化帧的左边缘和右边缘在{0,0,1}的方向上,图像(即,图块化帧)的中心在[0,0,-1}的方向上。在涉及均匀的图块大小的示例实施方式中,本发明的实施例提供了用于确定具有方向矢量1611的图块1609的位置的装置和方法,该装置和方法可以配置为具体如下地计算具有n

θ={[t

z=r*cosθ

x=r*sinθ

在编码具有不均匀的图块大小的情况下,可以基于例如各个图块的像素面积等来修改前述方程式。作为说明,(i)用作图块列i的左边缘的图块索引,(j)用作图块行j的顶部边缘的图块索引,w是像素列的数量,而h是像素行的数量,本发明的实施例可以配置为确定以下内容,其中x

图16C示出了出于本发明的一个或多个实施例的目的的示例360°沉浸式视频观看环境1600C。与订户房屋1640相关联的房屋节点或网关(GW)1642由用于提供沉浸式媒体内容的传递管道1644服务。在一个布置中,可以在订户/用户佩戴的合适头戴式视图器中所观看到的3D全景虚拟空间中呈现这样的沉浸式媒体内容。示例UE可以包括由GW 1642服务的CPE 1646(诸如游戏主机、膝上型计算机或智能电话),CPE 1646执行一个或多个游戏或媒体应用,以便向一个或多个设备提供合适的信号,所述设备诸如安装到或安装在用户头部1628上的显示设备1636。此类设备的其他示例可以包括能够显示或实现围绕用户的沉浸式观看空间的护目镜、防护镜、有线/无线头饰或头盔、面罩等。在示例显示设备布置中,可以存在诸如陀螺仪、加速度计和磁力计等其他仪器来帮助进行头部跟踪,也就是说,当用户1628移动其头部时,所模拟空间周围的视野可以连同该空间的正在被用户所注视的部分(即视口)一起相应地移动。因此,在头部跟踪头戴式视图器中,视锥或视野以及用户的视口随着用户向上看、向下看和左右转头或偏头而四处移动。示例系统可以包括所谓的6DoF(六个自由度)布置,该布置可以按照X轴、Y轴和Z轴绘制用户头部以便测量头部移动,也被称为俯仰、偏转和翻滚,这可以用于在模拟3D全景观看空间内跟踪用户的视角。

作为说明,CPE 1646可以体现为平台1648,平台1648包括一个或多个处理器1656、易失性和非易失性/持久性存储器1654、输入/输出(I/O)接口1660(例如,触摸屏、游戏控制器、手部跟踪手套等)以及可以为佩戴头戴式显示器(HMD)1636的用户1628实现3D虚拟观看空间或“屏幕”1620的一个或多个360度媒体/游戏应用1638。在一个示例布置中,HMD 1636可以经由无线接口1642无线地耦合到CPE 1646。可以提供多个解码器缓冲区1645,作为与用户1628可用的一个或多个360°沉浸式视频内容频道相对应的示例CPE平台1646/1648的一部分。

其他的具有3D媒体功能的CPE 1634(例如,平板电脑、平板手机或智能手机等)也可以单独地或可选地提供。与HMD 1636一起操作或分开操作的示例CPE装置1646/1634可以操作以实现3D虚拟观看空间1620,该3D虚拟观看空间1620是沉浸式环境,在该沉浸式环境中,用户1628可以在3D环境中定义的垂直平面、水平平面或者垂直平面及水平平面之一中以360°的完整角度移动其视角,其中视口相应地发生变化。在附加或替代布置中,与HMD1636相结合地操作的CPE装置1646/1634可以操作以实现3D虚拟观看空间1620,该3D虚拟观看空间1620可以是部分沉浸式的,这是因为它沿着任一轴小于360°。

移动和注视检测模块1662操作以检测用户/订户1628关于3D虚拟观看空间1620在视角或注视方向上的移动,并且当订户1628在观看空间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模块提供了包括组合图块的一个帧/图片的数据段,该数据段可以以合适的容器格式进行容器化(containerize),例如,MPEG-2传输流容器格式(M2TS;有时也被称为MP2TS)、MPEG 4部分14(MP4)容器格式或ISO基本媒体文件格式(ISOBMFF)容器格式等(框1766)。传递服务器可以配置为通过合适的网络将复用图片/帧传递给客户端设备(框1768)。如图17B的实施例中所述,包括过程1700B的BWA-TS、TC-SG和传递服务的操作可以继续进行,直到传递通信套接字被关闭或超时为止(框1770)。此后,可以终止与客户端设备的360°视频会话(框1772)。

在示例实施例中,用于示例性360°沉浸式视频会话的带宽分配可以是19Mb/s。可以使用128图块的网格以完整的360视频对视频进行编码,覆盖比特率从QP值为16的高值105.6Mb/s到QP值为30的低值7Mb/s变化。高质量图块针对的是用户的直接视野。图块质量降级(即QP值上升)与距用户直接视野的距离成比例。BWA-TS的功能可确保不超过360视频会话的总带宽。图块选择是建立在每个图块的比特率的基础上。在用户在场景中仰望多云天空的示例中,该视口中提供的大多数图块都具有相对较高的质量。当在这种情形下向上看时,图块的内容是相对静态的(即,非常少的运动),因此,编码器将不那么多的比特专用于低运动区域。这导致有能力显示来自QP值为16的最高质量视频编码的图块。当用于360视频的带宽分配减少(例如,从19Mb/s减少到7Mb/s)时,图块的质量也会降低。在前述示例中,直接视野中的最高质量图块的比特率可以为22.4Mb/s,QP值为22。

图18A示出了包括16x8的图块阵列的图块加权帧I800A,其中在示例实施方式中,为每个图块指派由客户端设备提供的基于权重的注视矢量{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图块,但是在所示出的随后的帧中,视口1820具有P切片。

如上所述,BWA-TS模块的功能的一个方面是确保示例360°沉浸式视频会话的总带宽不超过指定的带宽分配(例如,基于网络运营商策略、内容提供商策略、订户/设备策略或其任意组合),同时仍能最大化质量和观看体验。因此,可以响应于用户的视野、带宽分配/限制、每个图块的比特率以及发送缓冲区模型来配置具有合适比特率质量的优化图块选择,从而使得直接视线中的图块具有可能的最佳质量,同时随着远离直接注视移动,质量降低。

图19是示出了根据本发明的一个或多个实施例的BWA-TS过程1900的各种框、步骤和/或动作的流程图,所述框、步骤和/或动作可以在具有或不具有本公开的附加流程图的框、步骤和/或动作的情况下(重新)组合成一个或多个布置。如框1902所述,过程1900可以开始于或响应于接收、检索或以其他方式获得由360°视频资产打包器(例如,图2中的打包器214)提供的关于多个图块编码流的一个或多个流清单文件,所述图块编码流可以根据BIE或PE方案生成。通常,针对与媒体输入流的多个比特率表示中的一个特定比特率表示相对应的每个图块编码比特流,清单文件可以包括对每帧图块分组的各种特性进行描述的信息或数据,包括位置URL、比特率、切片/块类型、媒体类型等。在一个布置中,清单可以通过分层的方式来组织,即某些清单用于描述整体编码比特流的,而其他清单被提供来描述流中的各个图块。如本专利申请中各处所阐述的那样,每个流是源媒体的具有视频质量的特定比特率表示(例如,与用于比特率表示和/或目标比特率或者其他标记的对应QP有关或受其控制),其中图块编码比特流的每个帧包括被组织为每帧至少一个切片的图块阵列,其中多个帧形成图块编码比特流的GOP结构。在框1904处,过程1900继续进行以接收、检索或以其他方式获得注视矢量信息,并且响应于此,例如基于注视矢量或按照默认设置,确定与形成帧的图块阵列相对应的图块权重。在框1906处,过程1900继续进行以接收、检索或以其他方式获得与媒体输入流的该多个比特率表示或相关联的图块编码比特流相对应的变量权重。在一个布置中,变量权重可以被定义为流的基于策略的特性,其中更高质量的流表示(即变量)被赋予更高的优先级或权重,其可以在涉及基于权重的背包(knapsack)打包选择的其他计算中使用。在框1908处,对于每个图块编码比特流,在跨GOP结构的帧集合上,根据每个图块/GOP元组组合的变量权重和图块权重,确定适用性(adequacy)度量值。在框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处,将图块初始化为最低质量。可以将适用性度量确定为流变量权重与图块权重之间的比率,这种比率可以关于所有的<图块,GOP>元组或组合来提供(框2104)。确定对具有最小适用性(即最大不适用性)的<图块,GOP>元组进行升级,如框2108所述。确定是违背还是满足发送缓冲区模型(框2110)。如果不满足缓冲区模型(即违背),则可取消该图块/GOP组合的升级资格,过程流程返回,考虑对下一个图块/GOP组合进行升级,如框2112所述。如果没有违背缓冲区模型,则对图块/GOP组合的质量进行升级(框2114)。前述过程可以反复地执行,直到不存在低于最大质量的非不合格图块/GOP组合为止(框2116)。如果不存在,则如框2118所示,通过将所选图块发送给图块复用和流生成过程来完成过程2100A。

转向图21B,示出了性能得到优化的图块选择和退火过程2100B,在一些实施方式中,该过程可以实现更快的图块选择,由此产生大约10毫秒左右的总图块接合时间。广义上讲,可以关于I图块升级施加惩罚因子(由于I图块会打包更多数据,因此,它的升级比P图块升级开销更大),并且无论图块升级是否符合适用性度量,如果没有对照着发送缓冲区模型检查这些图块升级,则都可能在一开始出现“天真”升级序列。此外,由于ROI/视口中的图块首先被升级并且帧的其余图块随后被升级/更新,示例实施例可以基于图块的位置所在来考虑惩罚。例如,如果图块位置接近注视矢量,则与该位置相关联的惩罚可以较低。此外,作为待升级的图块的质量/类型与该图块在帧中的位置之间的平衡,惩罚也可以与图块位置有关。在示例实施例中,通过适当地调节在天真升级序列中使用的适用性度量,可以将惩罚因子或组合的影响纳入退火过程中。

类似于图21A的实施例,所有视频编码的图块被初始化为最低质量(框2132)。可以将适用性度量确定为流变量权重与图块权重之间的比率乘以惩罚因子,可以关于所有<图块,GOP>元组或组合来提供该惩罚因子(框2136)。在框2134处,可以将堆(heap)结构(例如,作为大型存储器池)配置用于包含针对所有<图块,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-4GOP范围,可以在过程迭代时分别对其进行升级,其中未来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/图21B的实施例中阐述的示例适用性度量公式可以配置来使得:随着流质量的增加,适用性值也增加,并且更靠近注视矢量的图块比起距离注视矢量更远的具有相同质量的图块来说具有更低的适用性(这将退火过程配置为在升级远离注视矢量的图块之前升级更靠近注视矢量的图块)。

此外,示例实施例还包括针对升级过程对图块进行评分的惩罚因子,如上所述。在一个布置中,当需要利用I图块的提早刷新时,可能会施加惩罚,其中当前GOP中的图块要被升级到超过它在前一切片/帧中具备的质量。这样的惩罚的效果是提高图块的适用性,而这延迟了关于堆中的其他图块的升级。此举可以在注视发生足够变化时进行图块升级,但在变化微小的情况下推迟提早刷新。

对于本领域技术人员而言显而易见的是,在本发明范围内的一些变型中,还可以使用附加的/替代的公式对图块升级进行评分。

图22示出了根据本发明示例实施例的用于图块选择和带宽退火布置的发送缓冲区模型过程。通常,根据实施方式,可以将发送缓冲区模型配置为与帧速率一致(例如,30fps、60fps等),其中可以对如何将数据添加到缓冲区中和从缓冲区中发送出去的时间变化进行参数化,以确定是否以及何时可能会发生溢出(即违背)。在示例发送缓冲区模型2200中,b

b

buffer_size参数可以如下定义:

buffer_size=r(latency_frames)Δt

根据前述模型,如果Max(a

转向图23,其中描绘的是布置2300,其中出于本专利公开的实施例的目的,客户端UE设备可以配置为执行360°沉浸式视频优化的某些方面。具有合适的360°显示设备的用户2310用已连接的UE设备2302进行操作,UE设备2302包括视频优化客户端模块2306和已连接的播放器2308,播放器2308设置为向显示设备生成合适的播放信号。在一个实施例中,播放器2308可以包括配置有适当的视频解码器2314、显示渲染器2316、音频解码器2318和声音渲染器2320的HEVC或AV1播放器。类似于上文阐述的示例实施例,可以向注视跟踪模块2312提供已连接的UE设备2302,UE设备2302可以配置为消费ABR流传输环境中通过互联网2304传递的360°沉浸式视频内容。

客户端优化模块2306优选地包括360°沉浸式视频接口模块2321,该模块2321包括清单解析器2328、视频图块和音频流下载器2330、带宽估计模块2326和图块选择模块2324,在作必要的修改后,它们可以配置为使用合适的以设备为中心的修改来按照与上述实施例类似的方式进行操作。可以基于关于特定内容的清单2340,经由互联网2304向网络位置(例如,内容提供商网络或基于云的存储)生成HEVC图块/音频请求2344。可以经由路径2342接收所请求的视频图块和音频数据。从注视跟踪模块2312提供给沉浸式视频接口模块2321(例如,经由路径2322)的注视矢量信息可以与带宽估计一起用于选择每帧图块,该图块可以经由视频信号路径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。因此,各种网络接口(例如,I/F 2414-1至2414-L,其操作用于实现与网络基础设施元素的通信,所述网络基础设施元素包括视频后台元素、DRM实体、原始服务器、客户端控制器节点、源媒体节点、管理节点和缓存数据库)以及用于实现与一个或多个下游节点(例如,包括传递服务器、DSLAM/CMTS元素、RAN基础设施元素、房屋网关节点等)的通信会话的接口2412-1至2412-K可以作为装置2400的一部分提供,这具体取决于网络层次级别和/或集成。

图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和其他内容信号并作为其接口。在将STB配置成示例客户端设备或应用的情况下,还可以包括合适的解调器。可以提供一个或多个媒体播放器2514,以与客户端设备2500的其他子系统(例如,用户接口2520)结合地操作,该用户接口2520可以进一步配置有附加子系统,以促进用户对媒体播放的控制,包括频道改变请求和任何技巧模式操作。例如,客户端/用户控制功能可以包括关于正在播放的特定360度沉浸式视频资产的暂停、恢复、快进、回退、搜索、添加书签等。可以将示例媒体播放器配置为基于已知或迄今未知的标准或规范,以一种或多种A/V编码器/解码器(编解码器)功能进行操作。

其他I/O或接口(诸如沉浸式显示接口2515、触摸屏或小键盘接口2520、USB/HDMI端口2518、以太网I/F 2508以及短距离和广域无线连接接口2512)也可以根据设备配置来提供。还可以包括各种运动检测和注视跟踪传感器2516,它们中的一些可以包括陀螺仪、加速计、位置传感器等。在示例实施方式中可以包括硬盘驱动器(HDD)或本地DVR系统2510,用于各种节目资产的本地存储。合适的电源框2522可以包括AC/DC电源转换,用以为设备2500提供电源。应理解,设备2500的实际电源架构可能会因所使用的硬件平台而变化,例如取决于特定平台中使用的核心SoC(片上系统)、存储器、模拟前端、模拟信号链组件和接口等。

在本发明的其他方面,以下阐述的是与将各种类型的辅助内容以共生且无缝的方式插入到360度沉浸式视频播放环境中有关的实施例,所述辅助内容例如第三方赞助内容和广告内容,包括静止图像、视频片段、图形文本图像等,其被统称为广告内容或者简称为“ad内容”。特别地,公开了有利地克服以下一个或多个技术问题的实施例。例如,在当前涉及辅助内容的视频流技术中,广告插入通常会降低原始视频的沉浸式体验,尤其是在要插入的辅助内容不是360度视频的情况下。即使广告内容是360度视频,用户也通常会正使用HM单元观看视频,并不得不靠近观看广告内容,这样,用户便可能会忘记沉浸于另一世界(原始视频到目前为止可能已经建立好的世界)中的所有印象,即虚拟3D显示体验。此外,广告插入通常发生在视频帧的底部,这可能会覆盖或阻挡原始视频中的关注区域(即使叠加的广告内容在一定程度上是透明的,情况也是如此),因而也会破坏正在播放的视频资产的360度沉浸感。

广泛地讲,本文的实施例可以有利地配置为利用上文详细阐述的示例性的基于图块的编码方案,其中要从多个图块组装而成的视频帧可以在图块复用/拼接之前进行操纵或以其他方式进行分析,以识别出可被替换为辅助或广告内容的一些图块,所述辅助或广告内容也被编码/转码成图块。在一个实施例中,关于将哪些视频图块用于广告内容替换的确定可以建立在内容创建者或编辑者事先作出的固定选择的基础上。在另一实施例中,可以基于在播放360度沉浸式视频时由客户端设备报告回的注视矢量信息来动态地执行用于广告替换的视频图块选择。在其他实施例中,可以实施两个方案的组合,以便选择帧的视频图块的一部分来由广告内容图块替换。与前述实施例有关的附加细节在下面加以阐述。

如先前参考源视频的基于图块的编码所述地,可以将360°视频帧划分成可以被独立地编码/解码的块或图块的矩形阵列或网格,甚至还可以允许随机访问特定区域。作为参考,关于4K视频资产帧400C,在图4C中示出了包括128个图块的16×8阵列的视频帧,其中图块可以如先前所述的那样均匀地间隔开或者可以不如先前所述的那样均匀地间隔开。此外,在本公开的实施例中,可以从基于BIE的流或基于PE的比特流中选择图块,如上文结合若干附图(例如,图5至图12)详细描述的。在一个实施方式中,每个广告内容图块可以首先被编码为I图块,该I图块要被包括在BIE帧(即,具有P切片首部且包括帧内编码数据的块(例如,I图块或I块)的X帧)中,或者包括在GOP的第一个I帧中。随后,针对其的I图块已被包括在前一帧中的广告可以在基于BIE的P切片中作为P图块进行发送。如上所述,这种编码技术能实现帧中的GOP中间变化,即使这些帧包括广告内容图块。因此,可以在视频序列中的GOP中间添加、删除或更新各种类型的辅助内容图块。在对此进行参考后,技术人员将认识到的是,这种能力可以为可基于内容提供商策略和/或网络运营商策略而配置的广告内容策略提供非常高的保真度。根据实施例的广告插入实施方式可以配置来使得可以在严格的时序容许范围或要求内满足个体的广告投放,例如,在说明性场景下,广告的开始和结束时间应在1秒的范围内。例如,如果广告内容策略要求基于图块的广告在视频开始后的2分3秒(00:2.00:03)开始并在2分4秒(00:2.00:04)结束,则在任一端的几毫秒内(即,开始时间和/或停止时间有微小变化),本发明实施例可以遵守该广告时序窗口。

为了说明根据本公开教导的与广告插入有关的发明构思,现在参考图28A至图28C,这些附图描绘了关于在360°沉浸式视频环境中插入广告内容的示例显示场景。特别地,图28A示出了来自360°沉浸式视频资产的示例性未包裹帧2800A,其说明了视频图块的矩形阵列,这些视频图块被单独地编号(例如,128个图块)或以其他方式唯一地标识。想象一下,视频中的对象(例如,飞机2803)从左向右飞行,当前正处于中央并形成了关注对象。取决于显示单元,对象2803周围的区域2802A可以包括任何形状(例如,圆形区域、椭圆形区域、方形区域等),该形状可以表示用户的直接FoV或视口。作为说明,根据示例实施例,位于区域2802A内的图块或者至少在其外围的图块(例如,图块7、8、9、10、22、23等)由此形成关注区域,以用于分析和/或确定其中的哪些图块是可用的或者可被替换来插入辅助内容图块。位于该区域外部的视频图块将包裹在用户FoV周围(或者形成在用户可见之前需要平移的显示区域)。因此,帧的一些视频图块可以超出用户的外围视觉范围,而当用户看向关注对象(例如,飞机2903)的方向时,一些视频图块甚至可能包括在用户注视正后方的区域。因此,在示例视频帧2800A中,关注区域或者正在发生最关注的事情的部分位于飞机附近或周围。另一方面,靠近FoV的底部外围的图块(诸如图块87、88、89、90、104、105)可以充当用户直接可见的一个或多个广告的位置(因为这些广告落在FoV内或落其外围)。此外,FoV外部的其余视频图块还可以充当用户在该场景期间四处张望的情况下会变得可见的广告的位置。在一个实施例中,可以对视频帧的包含很小的或轻微的动作或运动的图块或其他区域(例如,静态区)进行分析和/或确定,以便将某些图块位置调拨为适合被替换为辅助/广告内容。

图28B描绘了视频帧2800B,该视频帧2800B与上述帧2800A相同,但用于在其中展示基于图块位置的广告插入的示例,在该示例中,一个或多个图块被广告内容图块所替换。在一个实施例中,可包括静止图像、徽标或标语或者辅助视频片段的一部分的广告内容对象可以形成单个图块。在另一个实施例中,广告内容对象可以占据数个连续的图块。根据在包括FoV 2802B的区域中有多少“房地产”可用,可以将单图块广告(例如,较小的广告)或多图块广告(例如,较大的广告)放置在用户的视线内。同样地,FoV 2802B外部的区域也可以包括可被广告内容图块替换的图块位置。作为说明,连续图块98、99和100被指定为为AD-1A的多图块广告对象所替换。同样地,连续图块109、110和111的第二集合被指定为AD-1B的另一多图块广告对象所替换。作为进一步说明,将单图块广告对象AD-2A、AD-2B和AD-2C放置在与图块54、59和88对应的位置,图块54和59落在FoV 2802B的边界上,而图块88完全落在FoV 2802B内部,但却远离关注对象,例如飞机2803。

图28C描绘了随着播出时间的推移而在视频序列中稍后出现的示例视频帧2800C,该示例视频帧2800C展示了根据本公开教导的广告插入的动态性质。当关注对象2803向右移动时,对应的FoV 2802C也发生移动,由此在FoV 2802C内产生适合于广告替换的不同的图块位置集。作为说明,完全落入FoV 2802C中的图块94被广告对象AD-3A替换,落在FoV2802C的边界上的图块96被广告对象AD-3B替换。现在,先前的FoV 2802B中不可用于广告插入的一些图块可被用来进行广告插入,例如,图块40、41、56和57。落在先前的FoV 2802B的边界上的图块54可继续用于广告插入,现在显示的是指定为AD-4A的广告对象。

本领域技术人员将认识到的是,随着播出时间的推移,不必在视频帧中放置不同的广告对象。在一些实施例中,尽管一些广告对象可以在视频资产的一部分运行时间上持续地存在,但是其他广告对象可以例如根据视频/广告内容提供商策略、网络运营商策略、订户配置文件等而被配置为更短暂的。此外,可以基于偏好、人口统计信息等,关于正在播放的且针对用户进行了个性化或定制的视频内容对一些广告对象进行情境化处理。

显然,当观看特定的360°沉浸式视频资产时,为了保持出色的体验质量,选择合适的视频图块进行替换是关键所在。如前所述,在典型的360°沉浸式视频播放环境中,大多数动作通常都发生在帧的少量区域中,例如关注区域,而这些区域可能会因观看者所看位置的不同而变化。尽管观看者可以环顾360°沉浸式视频显示空间,但是在任何给定时间,观看者都会最关注某些区域。因此,虽然不用广告替换位于场景内的关注区域中心的图块(其可能会根据注视矢量信息而变化)非常重要,但是,360°场景中的许多其他区域仍可以用作优秀的广告插入位置(即合格的图块位置)。

根据本公开的教导,可以提供数个图块资格方案来标识360°帧中的哪些视频图块可以替换为辅助/广告内容。作为说明,以下实施例出于本专利申请的目的不受限制地例示了三个方案。在一个实施例中,内容提供商可以提供图块元数据规范,关于何时可以将图块替换为广告内容图块,该图块元数据规范为每个图块指定相对于已知时序参考(例如,视频资产的运行时间)的开始及结束时间的阵列。现参考图27,其中示出的是示例图块元数据规范2700,在一个实施例中,这种图块元数据规范可以作为上文参考图1和图2阐述的媒体准备和打包过程的一部分而生成,此图示出了针对视频帧的多个图块中每一个图块的图块特定的广告插入资格时序窗口(例如,逐图块地)。如图所示,示出了具有相应图块ID信息2704的128个图块2702-1至2702-128,每个图块具有资格时序窗口2705-1至2705-128的对应行,统称为广告可用性时序信息2706。在视频资产的运行时间为5分钟的示例场景中,每个资格时序窗口阵列或行2705-1至2705-128将针对特定图块ID值的多个时序窗口标识为:在图块位置可被用于广告插入时,5分钟时间段内的开始及结束时间的元组集合。在一个示例中,可以从形成帧的图块网格的左侧到右侧以及从上方到下方依次地向帧的各图块指派唯一ID。作为说明,图块1提供有资格时序窗口阵列2705-1,其包括三个时序窗口2708-1、2708-2和2708-3,每个时序窗口具有相应的开始和结束时间。时序窗口2708-1指定可以在从进入视频的1.0秒将图块1用于替换,直到时间=3.0秒。同样地,时序窗口2708-2指定在进入视频的3分钟时可以再次使用图块以多用5秒,并且时序窗口2708-3指定在4分钟时可以又一次将图块1用于替换,以多用6秒。另一方面,如单个条目资格/可用性时序窗口阵列2705-128所示,可以在整个5分钟视频内将图块128用于广告插入。

在对此进行参考后,技术人员将认识到的是,尽管前述图块元数据规范2700示出了基于视频运行时间信息的广告可用性时序数据,但是附加/替代实施例可以基于其他类型的时序数据,例如呈现时间戳(PTS)信息、解码时间戳(DTS)信息、节目时钟参考(PCR)信息、系统时钟参考(SCR)信息、挂钟参考信息和/或全球定位系统(GPS)时序参考信息等。

在另一个实施例中,可以基于由客户端设备报告的注视矢量信息来动态地确定资格选择,而不是采用固定元数据规范,上文已经参考多个附图对此进行了详细描述,例如图15A至图15B至图16A至图16C。如前所述,可以使用3维注视矢量信息(归一化的或非归一化的)来确定或以其他方式定义FoV,并相应地标识哪些图块完全落入FoV内。可以选择落在FoV内且被确定为在FoV内部不包含一个或多个关注对象的图块子集来替换为辅助/广告内容。技术人员将认识到的是,基于注视矢量信息选择图块的优势在于:与固定元数据规范技术不同的是,它无需逐图块的的先验固定时序窗口,因而可以用于现场活动。当用户环顾四周时,如果注视突然发生了变化,则广告可能会被重新组织,但却可能会短暂地出现在FoV中心。另一方面,基于固定元数据规范的实施例(该实施例更适合于在运行时促进广告插入的360°沉浸式VOD/MOD内容)可以配置为通过精确地定义适用的时序窗口来避免这种情况。

本发明的另一个实施例可以包括固定元数据规范和注视矢量信息的组合。在示例实施方式中,可以首先基于注视矢量信息来选择视频图块,但是之后根据图块元数据规范对视频图块进行过滤,避免无意中替换了关注区域中的图块。又一个实施例可以涉及单独的或与任何前述方案组合的逐图块的进一步像素数据分析,从而进一步细化用于广告替换的图块资格。

图26A至图26C描绘了流程图,这些流程图示出了根据与前述教导的至少一部分相一致的本发明一个或多个实施例的与播放期间在360°沉浸式视频资产中插入广告内容有关的各种框、步骤和/或动作。如框2602所示,图26A的过程2600A开始于从客户端设备接收播放特定沉浸式视频资产的请求。如前所述,视频资产的每个视频帧可以包括投影在由操作客户端设备的用户观看的3维(3D)显示环境上的图块阵列。在框2604处,选择特定沉浸式视频资产的多个视频图块以组装为传递给客户端设备的视频帧。如先前详细描述的,可以根据基于PE或基于BIE的编码,从特定视频资产的一个或多个图块编码比特率表示中选择该特定沉浸式视频资产的该多个视频图块,其中每个比特率表示具有单独的视频质量,该视频质量受用于每个比特率表示的量化参数(QP)值控制。在框2606处,标识视频图块的可以由对应的广告内容图块集合替换的部分,所述广告内容图块可以从静止图像、视频片段等的适当源文件生成、编码和/或转码。在框2608处,视频图块的被标识为具备替换资格的部分可被替换为对应的广告内容图块集合。在框2610处,对在选定位置处包括广告内容图块的完整视频帧进行复用和组装,然后再将其传输给客户端设备。

图26B的过程2600B阐述了可以在上述过程2600A内进行组合的附加框、步骤和/或动作。在框2622处,可以获得、访问或以其他方式分析图块元数据规范,该图块元数据规范关于视频帧的多个视频图块中的每一个视频图块来标识广告插入可用性时序信息。随后,响应于广告插入可用性时序信息,选择或以其他方式标识视频图块中适合由广告内容图块替换的部分(框2624)。在框2626处,获得适合的广告内容文件,以进行替换和与视频图块的其余部分进行复用,将这些广告内容文件提供给图块拼接和流生成过程(框2628)。在框2630处,过程流程可以继续进行,这具体取决于在视频资产的运行时间期间是否需要处理其他视频帧。

图26C的过程2600C阐述了可以在上述过程2600A内进行组合的附加框、步骤和/或动作。在框2642处,关于特定沉浸式视频资产获得来自客户端设备的注视矢量,该注视矢量定义了:在3D显示环境中的关于用户正在观看的参照投影视频帧的位置的视野(FoV)。响应于注视矢量,可以选择或以其他方式标识视频图块的适合由广告内容图块替换的部分(框2644)。类似于过程2600B,获得适合的广告内容文件,以进行替换和与视频图块的其余部分进行复用,将这些广告内容文件提供给图块拼接和流生成过程(框2646和2648)。在框2650处,过程流程可以继续进行,这具体取决于在视频资产的运行时间期间是否需要处理其他视频帧。

图30是根据一个示例实施例中本发明的组合过程3000的与播放期间在360°沉浸式视频资产中插入广告内容有关的各种框、步骤和/或动作的流程图。类似于以上过程2600A中的框2602,过程3000开始于从客户端设备接收关于特定360度沉浸式视频资产的请求(框3002)。在框3004处,从客户端设备接收注视矢量。在框3006处,选择所请求视频资产的多个视频图块(例如,4K视频帧中的128个图块),以将其组装成传递给客户端设备的视频帧。在框3008处,基于注视矢量来标识或以其他方式确定关于FoV的图块的各种集合或组。例如,图块的第一集合(集合A)可以包括完全落在FoV中的图块,图块的第二集合(集合B)可以包括部分在FoV中的图块(即,落在FoV边界上的图块),而图块的第三集合(集合C)落在FoV之外。在框3010处,判定或确定图块元数据规范是否可用于所请求的视频资产。如果是,则根据进一步的资格分析,删除按照当前视频运行时间被标识为不可用于广告插入的图块(框3012)。否则,可以考虑框3008中标识的所有图块组的广告插入资格。因此,对于广告插入资格,可以基于广告内容策略配置、图块图像活动、内容提供商策略配置等来考虑是对集合A至C的图块进行过滤选择还是全部选择集合A至C的图块。响应于资格分析,可以从每个集合标识和/或获得某个数量的图块以用于替换,并可以对其进行替换,如框3014中所述。例如,集合A中的“x”个数量的图块、集合B中“y”个数量的图块以及集合C中“z”个数量的图块可以替换为对应的广告内容图块,如前所述。之后,在框3016处,可以将所选的广告内容图块和剩余的视频图块提供给流生成器,以便采用本专利公开中先前阐述的任何图块拼接和流生成方案来组装成帧。随后,将组装的帧传递给客户端设备(框3018)。可以确定在所请求的视频资产的视频序列中是否存在更多的帧(框3020)。如果是,则过程流程返回到框3004,继续接收后续的注视矢量信息。否则,过程3000终止(框3022)。

图29描绘了根据本发明实施例的可以在360°沉浸式视频网络部分2900中实现以促进广告插入的系统或装置。技术人员将认识到的是,网络部分2900与图1和图2中所示的网络架构的部分大体相似。网络节点或元件2902可以配置为与后台功能和/或360°视频优化功能(如图2的网络部分中所述)相结合地操作的视频服务器。视频服务器2902进一步操作以与适当的360°视频资产存储库2922(其可以包括图块编码媒体的具有不同质量的不同比特率表示,以及图块元数据规范(如果提供))以及合适的传递服务器基础设施(本附图中未具体示出)进行接口连接,以便在与图24所示的装置2400类似的计算机实现平台中促进视频建立控制、承载传递、注视矢量处理等。因此,根据本文阐述的实施例,合适的模块(诸如资产管理器,包括视频图块选择器2904、广告内容图块选择器2906、图块复用/流生成器2907、会话管理器2908和注视处理器2910)可以配置为在处理器控制下操作,以便于进行视频图块替换资格逻辑、广告内容插入逻辑、广告内容检索等,其中一个或多个客户端设备2812A、2812B操作以请求相应的360度视频资产,以便结合与其相关联的合适显示单元来加以显示。

如前所述,辅助/广告内容可以包括各种类型的数字资产,包括但不限于静止图像、图形文本框、短视频片段等,这些数字资产可进行图块编码或可以不进行图块编码。可以向广告服务器2918提供合适的编码/转码功能,从而以与用于生成360度视频资产的图块编码方案相兼容的合适格式来生成广告内容图块。因此,类似于上文关于源媒体准备而阐述的编码方案,可以使用HEVC H.265压缩、AV1压缩、H.266多功能视频编码(VVC)压缩和/或未来视频编解码器(FVC)压缩中的至少一种来生成广告内容图块。广告图块选择模块2906操作以在关于一个或多个正在进行的360度视频会话的适当运行时间经由接口2920从广告服务器2918检索或获得合适的广告内容图块。图块复用/流生成器2907配置为将所请求的视频资产图块和所选的广告内容图块组装为可以在适当的会话管理器控制下传递给相应观看者的复用帧。因此,作为说明,每个客户端设备2912A/2912B操作以发起视频会话并在相应的会话2914A/2914B中接收对应的360°视频流,该视频流可以包括可关于用户/资产组合进行定制化、情境化和个性化的广告内容图块。同样地,客户端设备2912A/2912B可以将相应的注视矢量信息2916A/2916B提供给注视处理模块2910。

基于前述内容,技术人员将认识到的是,本文的实施例有利地提供了一种广告插入方案,其中所显示的广告内容对象不仅与360度视频更加连贯,而且还配置为放置在视频帧中,这样一来,不管用于创建3D空间效果的投影映射方案如何,这些广告内容对都不会妨碍沉浸式体验。此外,广告是嵌入在视频内并且没有被覆盖,使得广告插入方案在面对广告拦截时适应性更强。由于是根据标准视频编解码器技术将广告内容图块拼接成复用帧,因此,客户端的播放不再需要额外的解码器。此外,内容制作者或编辑者可以通过适当的方式设置或配置插入策略,从而限制视频内的关键性区域,在该关键性区域,这种广告不能放置且不会阻挡任何关注区域。另一方面,可以专门定义描述了要在哪个精确时间显示哪个(些)广告的广告插入策略,由于在视频序列的GOP中间期间可以添加或删除广告,因此,这些广告插入策略可以按几毫秒的精度严格地实施。

本领域技术人员将进一步认识到的是,在本专利公开的附加或替代实施例中,可以根据网络功能虚拟化(NFV)架构在虚拟化环境中构建关于前述实施例的各种装置和系统以及以上所述的基础网络基础设施。例如,上文阐述的在本申请的示例流传输网络内执行的各种物流资源、数据库、服务、应用和功能(包括源媒体处理基础设施、媒体容器化、PE/BIE图块编码和打包等)可以作为虚拟装备、机器或功能来提供,其中资源和应用经由合适的虚拟化层虚拟化为合适的虚拟网络功能(VFN)或虚拟网元(VNE)。包括计算资源、内存资源和网络基础设施资源的资源被虚拟化为对应的虚拟资源,其中虚拟计算资源、虚拟内存资源和虚拟网络资源共同操作以支持VNF层,该VNF层的整体管理和编排功能可以由虚拟化基础设施管理器(VIM)结合VNF管理器和NFV编排器进行支持。通常可以提供运营支持系统(OSS)和/或业务支持系统(BSS)组件,以处理网络级别功能,诸如网络管理、故障管理、配置管理、服务管理和订户管理等,所述组件可以经由合适的接口与VNF层和NFV编排组件进行接口连接。

此外,本文所公开的示例网络架构的至少一部分可以如上所述地进行虚拟化,并在包括可配置虚拟资源的共享池的云计算环境中构建。与PE/BIE图块编码和打包、带宽退火和图块选择、图块复用和容器化等相关联的各种硬件/软件可以在面向服务的架构(例如软件即服务(SaaS)、平台即服务(PaaS)、基础设施即服务(IaaS)等)中实现,其中多个实体提供了本发明示例实施例的不同特征,其中一层或多层虚拟化环境可以在商业现货实(COTS)硬件上实例化。技术人员还将理解的是,这种云计算环境可以包括私有云、公共云、混合云、社区云、分布式云、多云和互联云(例如,“云中云”)等中的一种或多种。

在以上对本公开的各种实施例的描述中,应理解,本文所使用的术语仅是出于描述特定实施例的目的,无意于限制本发明。除非另有定义,否则本文中使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域的普通技术人员通常所理解的含义相同的含义。还将理解的是,诸如在常用词典中定义的那些术语应被解释为具有与其在本说明书和相关技术的上下文中的含义一致的含义,并且不会以本文中定义的理想化或过度正式的意义来加以解释。

在此,参考计算机实现方法、装置(系统和/或设备)和/或计算机程序产品的框图和/或流程图描述了至少一些示例实施例。应当理解,框图和/或流程图的框以及框图和/或流程图中各框的组合可以通过由一个或多个计算机电路执行的计算机程序指令来实现。可以将这样的计算机程序指令提供给通用计算机电路、专用计算机电路和/或其他可编程数据处理电路的处理器电路以产生机器,从而使得经由计算机和/或其他可编程数据处理装置的处理器执行的指令变换和控制晶体管、存储在存储器位置中的值和此类电路中的其他硬件组件,以实现框图和/或流程图的一个或多个框中指定的功能/动作,进而创建用于实现框图和/或流程图的框中指定的功能/动作的装置(功能)和/或结构。另外,计算机程序指令也可以存储在有形计算机可读介质中,该有形计算机可读介质可以指导计算机或其他可编程数据处理装置以特定方式运行,从而使存储在计算机可读介质中的指令产生制造品,该制造品包括实现在框图和/或流程图的一个或多个框中指定的功能/动作的指令。

如先前指出的,有形非暂时性计算机可读介质可以包括电子、磁性、光学、电磁或半导体数据存储系统、装置或设备。计算机可读介质的更具体示例将包括以下内容:便携式计算机磁盘、随机存取存储器(RAM)电路、只读存储器(ROM)电路、可擦可编程只读存储器(EPROM或闪存)电路、便携式光盘只读存储器(CD-ROM)和便携式数字视频光盘只读存储器(DVD/Blu-ray)。计算机程序指令还可以加载到计算机和/或其他可编程数据处理装置上或以其他方式下载到计算机和/或其他可编程数据处理装置上,以使得在计算机和/或其他可编程装置上执行一系列操作步骤,进而产生计算机实现过程。因此,本发明的实施例可以通过在处理器或控制器上运行的硬件和/或软件(包括固件、常驻软件、微代码等)而体现,所述硬件和/或软件可以被统称为“电路”、“模块”或其变型。此外,作为说明,示例处理单元可以包括通用处理器、专用处理器、常规处理器、数字信号处理器(DSP)、多个微处理器、与DSP核心相关联的一个或多个微处理器、控制器、微控制器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)电路、任何其他类型的集成电路(IC)和/或状态机。可以理解的是,在某些实施例中,示例处理器单元可以采用分布式处理。

此外,在至少一些附加或替代实施方式中,各框中描述的功能/动作可以不按照流程图所示的顺序发生。例如,实际上可以大体上同时地执行连续示出的两个框,或者有时可以按相反的顺序执行各框,具体取决于所涉及的功能/动作。此外,流程图和/或框图的给定框的功能可以被分成多个框,和/或流程图和/或框图的两个或更多框的功能可以至少部分地集成在一起。此外,尽管一些图在通信路径上包括示出了通信的主要方向的箭头,但应当理解的是,通信可以相对于所描绘的箭头在相反的方向上发生。最后,可以在所示的框之间添加/插入其他框。

因此,应当清楚地理解的是,在本公开附图部分中描绘的任何流程图中示出的动作、步骤、功能、组件或框的顺序或次序可以在特定流程图内被修改、改变、替换、定制或重新排列,包括删除或省略特定动作、步骤、功能、组件或框。此外,在特定流程图中示出的动作、步骤、功能、组件或框可以与另一流程图中示出的动作、步骤、功能、组成或框相互混合或者以其他方式相互排列或重新排列,由此实现关于用于实践本专利公开的教导的一个或多个过程的附加变化、修改和配置。

尽管已经示出并详细描述了各种实施例,但是权利要求并不局限于任何特定的实施例或示例。以上详细描述中的任何内容都不应当被理解为暗示了:任何特定组件、元件、步骤、动作或功能是必不可少的,因而其必须包括在权利要求的范围内。以单数形式提及元件并非旨在表示“一个且仅有一个”,而是表示“一个或多个”,除非明确作出了这样的说明。本领域普通技术人员已知的上述实施例的元件的所有结构和功能等同物均通过引用的方式明确地并入本文,并且旨在被本权利要求所涵盖。因此,本领域技术人员将认识到的是,在以下所附权利要求的精神和范围内,可以通过各种修改和变更来实践本文描述的示例性实施例。

优选实施例:

1.一种用于在360度沉浸式视频环境中插入广告内容的方法(2600A),所述方法包括:

从客户端设备接收(2602)播放特定沉浸式视频资产的请求,其中每个视频帧包括被投影在由操作所述客户端设备的用户观看的3维3D显示环境上的图块阵列;

选择(2604)所述特定沉浸式视频资产的多个视频图块以组装为传递给所述客户端设备的视频帧;

标识(2606)所述视频图块的能够由对应的广告内容图块集合替换的部分;

将所述视频图块的所述部分替换(2608)为所述对应的广告内容图块集合;以及

组装(2610)在所选位置处包括所述广告内容图块的视频帧,并将已组装视频帧发送给所述客户端设备。

2.根据实施例1所述的方法,还包括:

获得(2622)图块元数据规范,所述图块元数据规范标识关于所述视频帧的所述多个视频图块中的每一个视频图块的广告插入可用性时序信息;

响应于所述广告插入可用性时序信息,标识(2624)所述视频图块的由所述广告内容图块替换的所述部分;以及

将所述广告内容图块和所述视频图块提供(2628)给复用流生成器,以组装包括所述广告内容图块的视频帧。

3.根据实施例1所述的方法,还包括:

获得(2642)来自所述客户端设备的关于所述特定沉浸式视频资产的注视矢量,所述注视矢量定义了所述3D显示环境中的关于所述用户参考已投影视频帧正在观看的位置的视野FoV;

响应于所述注视矢量,标识(2644)所述视频图块的由所述广告内容图块替换的所述部分;以及

将所述广告内容图块和所述视频图块提供(2648)给复用流生成器,以组装包括所述广告内容图块的所述视频帧。

4.根据实施例3所述的方法,还包括:

确定(3010)图块元数据规范是否可用,所述图块元数据规范标识关于所述视频帧的所述多个视频图块中的每一个视频图块的广告插入可用性时序信息;

如果所述图块元数据规范可用,则响应于所述图块元数据规范从所述视频图块的所述部分中删除(3012)被标识为不可用的视频图块,以获得适合用于替换的视频图块子集;以及

获得(3014)与被确定为适合用于替换的所述视频图块子集相对应的多个广告内容图块;以及

将所述多个广告内容图块和所述视频图块子集提供(3016)给所述复用流生成器,以组装包括所述广告内容图块的所述视频帧。

5.根据实施例1所述的方法,其中,响应于确定所述视频帧的具有低活动性的视频图块,标识视频图块的被标识为由广告内容图块替换的所述部分。

6.根据实施例5所述的方法,其中,具有低活动性的视频图块子集被确定为位于与所述客户端设备相关联的显示单元的视野FoV内。

7.根据实施例1所述的方法,其中,所述特定沉浸式视频资产的所述多个视频图块是从所述特定视频资产的一个或多个图块编码比特率表示中选择的,每个比特率表示具有单独的视频质量。

8.根据实施例1所述的方法,其中,从广告内容的一个或多个静止图像生成所述广告内容图块。

9.根据实施例1所述的方法,其中,从广告内容的一个或多个视频序列生成所述广告内容图块。

10.一种与360度沉浸式视频环境相关联地操作的视频服务器系统,所述系统包括:

一个或多个处理器;以及

一个或多个持久性存储器模块,所述一个或多个持久性存储器模块上存储有程序指令,所述程序指令在由所述一个或多个处理器执行时与一个或多个模块相关联地执行以下动作:

从客户端设备接收播放特定沉浸式视频资产的请求,其中每个视频帧包括被投影在由操作所述客户端设备的用户观看的3维3D显示环境上的图块阵列;

选择所述特定沉浸式视频资产的多个视频图块以组装为传递给所述客户端设备的视频帧;

标识所述视频图块的能够由对应的广告内容图块集合替换的部分;

将所述视频图块的所述部分替换为所述对应的广告内容图块集合;以及

组装在所选位置处包括所述广告内容图块的视频帧,并将已组装视频帧发送给所述客户端设备。

11.根据实施例10所述的系统,其中,所述程序指令还包括用于执行以下动作的指令:

获得图块元数据规范,所述图块元数据规范标识关于所述视频帧的所述多个视频图块中的每一个视频图块的广告插入可用性时序信息;

响应于所述广告插入可用性时序信息,标识所述视频图块的由所述广告内容图块替换的所述部分;以及

将所述广告内容图块和所述视频图块提供给复用流生成器,以组装包括所述广告内容图块的视频帧。

12.根据实施例10所述的系统,其中,所述程序指令还包括用于执行以下动作的指令:

获得来自所述客户端设备的关于所述特定沉浸式视频资产的注视矢量,所述注视矢量定义了所述3D显示环境中的关于所述用户参考已投影视频帧正在观看的位置的视野FoV;

响应于所述注视矢量,标识所述视频图块的由所述广告内容图块替换的所述部分;以及

将所述广告内容图块和所述视频图块提供给复用流生成器,以组装包括所述广告内容图块的所述视频帧。

13.根据实施例12所述的系统,其中,所述程序指令还包括用于执行以下动作的指令:

确定图块元数据规范是否可用,所述图块元数据规范标识关于所述视频帧的所述多个视频图块中的每一个视频图块的广告插入可用性时序信息;

如果所述图块元数据规范可用,则响应于所述图块元数据规范从所述视频图块的所述部分中删除被标识为不可用的视频图块,以获得适合用于替换的视频图块子集;以及

获得与被确定为适合用于替换的所述视频图块子集相对应的多个广告内容图块;以及

将所述多个广告内容图块和所述视频图块子集提供给所述复用流生成器,以组装包括所述广告内容图块的所述视频帧。

14.根据实施例10所述的系统,其中,响应于确定所述视频帧的具有低活动性的视频图块,标识视频图块的被标识为由广告内容图块替换的所述部分。

15.根据实施例14所述的系统,其中,具有低活动性的视频图块子集被确定为位于与所述客户端设备相关联的显示单元的视野FoV内。

16.根据实施例10所述的系统,其中,所述特定沉浸式视频资产的所述多个视频图块是从所述特定视频资产的一个或多个图块编码比特率表示中选择的,每个比特率表示具有单独的视频质量。

17.根据实施例10所述的系统,其中,从广告内容的一个或多个静止图像生成所述广告内容图块。

18.根据实施例10所述的系统,其中,从广告内容的一个或多个视频序列生成所述广告内容图块。

19.一种非暂时性有形计算机可读介质,所述非暂时性有形计算机可读介质上存储有程序指令,所述程序指令在由网元的一个或多个处理器执行时实现用于在360度沉浸式视频环境中插入广告内容的过程,所述非暂时性有形计算机可读介质包括:

用于处理来自客户端设备的播放特定沉浸式视频资产的请求的代码部分,其中每个视频帧包括被投影在由操作所述客户端设备的用户观看的3维3D显示环境上的图块阵列;

用于选择所述特定沉浸式视频资产的多个视频图块以组装为传递给所述客户端设备的视频帧的代码部分;

用于标识所述视频图块的能够由对应的广告内容图块集合替换的部分的代码部分;

用于将所述视频图块的所述部分替换为所述对应的广告内容图块集合的代码部分;以及

用于组装在所选位置处包括所述广告内容图块的视频帧并将已组装视频帧发送给所述客户端设备的代码部分。

20.根据实施例19所述的非暂时性有形计算机可读介质,其中,所述程序指令还包括用于执行以下操作的指令:

获得图块元数据规范,所述图块元数据规范标识关于所述视频帧的所述多个视频图块中的每一个视频图块的广告插入可用性时序信息;

响应于所述广告插入可用性时序信息,标识所述视频图块的由所述广告内容图块替换的所述部分;以及

将所述广告内容图块和所述视频图块提供给复用流生成器,以组装包括所述广告内容图块的视频帧。

21.根据实施例19所述的非暂时性有形计算机可读介质,其中,所述程序指令还包括用于执行以下操作的指令:

获得来自所述客户端设备的关于所述特定沉浸式视频资产的注视矢量,所述注视矢量定义了所述3D显示环境中的关于所述用户参考已投影视频帧正在观看的位置的视野FoV;

响应于所述注视矢量,标识所述视频图块的由所述广告内容图块替换的所述部分;以及

将所述广告内容图块和所述视频图块提供给复用流生成器,以组装包括所述广告内容图块的所述视频帧。

22.根据实施例21所述的非暂时性有形计算机可读介质,其中,所述程序指令还包括用于执行以下操作的指令:

确定图块元数据规范是否可用,所述图块元数据规范标识关于所述视频帧的所述多个视频图块中的每一个视频图块的广告插入可用性时序信息;

如果所述图块元数据规范可用,则响应于所述图块元数据规范从所述视频图块的所述部分中删除被标识为不可用的视频图块,以获得适合用于替换的视频图块子集;以及

获得与被确定为适合用于替换的所述视频图块子集相对应的多个广告内容图块;以及

将所述多个广告内容图块和所述视频图块子集提供给所述复用流生成器,以组装包括所述广告内容图块的所述视频帧。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号