CN116939231A - 基于虚拟现实的直播方法、装置、设备及存储介质 - Google Patents

基于虚拟现实的直播方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN116939231A
CN116939231A CN202210368843.1A CN202210368843A CN116939231A CN 116939231 A CN116939231 A CN 116939231A CN 202210368843 A CN202210368843 A CN 202210368843A CN 116939231 A CN116939231 A CN 116939231A
Authority
CN
China
Prior art keywords
live broadcast
live
virtual space
frame
panoramic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210368843.1A
Other languages
English (en)
Inventor
史潇
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.)
Beijing Zitiao Network Technology Co Ltd
Original Assignee
Beijing Zitiao Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Zitiao Network Technology Co Ltd filed Critical Beijing Zitiao Network Technology Co Ltd
Priority to CN202210368843.1A priority Critical patent/CN116939231A/zh
Publication of CN116939231A publication Critical patent/CN116939231A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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
    • 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
    • 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/156Mixing image signals
    • 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/194Transmission of image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • 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)
  • Processing Or Creating Images (AREA)

Abstract

本申请提供了基于虚拟现实的直播方法、装置、设备及存储介质。该方法包括:针对第一虚拟空间内的每一直播帧,获取该直播帧在所述第一虚拟空间内预设的每一视角下的纹理图像;合并所述直播帧在每一视角下的纹理图像,得到所述直播帧的全景直播画面;将所述直播帧的全景直播画面发送给观众端。本申请中,主播端为观众端在虚拟空间内的全景直播提供全景画面支持,观众端对于接收到的每一直播帧的全景直播画面,会分离出该直播帧在第一虚拟空间内每一视角下的纹理图像,并渲染到第二虚拟空间内,实现虚拟空间内的实时全景直播,使得观众体验到与主播相同的全景沉浸感,增强虚拟空间直播的沉浸式体验。

Description

基于虚拟现实的直播方法、装置、设备及存储介质
技术领域
本申请实施例涉及视频处理技术领域,尤其涉及一种基于虚拟现实的直播方法、装置、设备及存储介质。
背景技术
随着虚拟现实(Virtual Reality,简称为VR)技术的普及,越来越多的用户对在各种VR应用内所提供的虚拟环境内执行各项互动操作的互动画面存在直播需求,例如对VR游戏内玩家的游戏画面进行直播等。
目前,主播通过登录某一VR应用进入到相应的VR环境内,主播在VR环境内的视角可以随着头部转动,为主播带来一种身临其境的感觉。然后,VR应用通过实时采集主播当前视角下的VR画面,并传输给各个观众端进行直播。因此,现有的VR直播在观众端仅能展示主播当前视角下的VR画面,无法根据观众的头部转动来变换不同视角画面,使得观众无法具备与主播相同的沉浸式体验。
发明内容
本申请实施例提供一种基于虚拟现实的直播方法、装置、设备及存储介质,实现虚拟空间内的实时全景直播,使得观众体验到与主播相同的全景沉浸感,增强虚拟空间直播的沉浸式体验。
第一方面,本申请实施例提供了一种基于虚拟现实的直播方法,该方法应用于主播端,包括:
针对第一虚拟空间内的每一直播帧,获取该直播帧在所述第一虚拟空间内预设的每一视角下的纹理图像;
合并所述直播帧在每一视角下的纹理图像,得到所述直播帧的全景直播画面;
将所述直播帧的全景直播画面发送给观众端。
第二方面,本申请实施例提供了一种基于虚拟现实的直播方法,该方法应用于观众端,包括:
针对接收到的主播端在第一虚拟空间内每一直播帧的全景直播画面,按照所述直播帧的全景直播画面的合并规则,分离出所述直播帧在所述第一虚拟空间内预设的每一视角下的纹理图像;
将所述直播帧在所述第一虚拟空间内每一视角下的纹理图像渲染到第二虚拟空间内。
第三方面,本申请实施例提供了一种基于虚拟现实的直播装置,该装置配置于主播端,包括:
纹理获取模块,用于针对第一虚拟空间内的每一直播帧,获取该直播帧在所述第一虚拟空间内预设的每一视角下的纹理图像;
全景合并模块,用于合并所述直播帧在每一视角下的纹理图像,得到所述直播帧的全景直播画面;
全景画面传输模块,用于将所述直播帧的全景直播画面发送给观众端。
第四方面,本申请实施例提供了一种基于虚拟现实的直播装置,该装置配置于观众端,包括:
全景分离模块,用于针对接收到的主播端在第一虚拟空间内每一直播帧的全景直播画面,按照所述直播帧的全景直播画面的合并规则,分离出所述直播帧在所述第一虚拟空间内预设的每一视角下的纹理图像;
直播渲染模块,用于将所述直播帧在所述第一虚拟空间内每一视角下的纹理图像渲染到第二虚拟空间内。
第五方面,本申请实施例提供了一种电子设备,该电子设备包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行本申请任一实施例提供的基于虚拟现实的直播方法。
第六方面,本申请实施例提供了一种计算机可读存储介质,用于存储计算机程序,所述计算机程序使得计算机执行如本申请任一实施例提供的基于虚拟现实的直播方法。
第七方面,本申请实施例提供了一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现如本申请任一实施例提供的基于虚拟现实的直播方法。
本申请实施例提供的一种虚拟现实的直播方法、装置、设备及存储介质,主播端在实时直播过程中,针对第一虚拟空间内的每一直播帧,会获取该直播真在第一虚拟空间内预设的每一视角下的纹理图像,并合并得到该直播帧的全景直播画面,然后将该直播帧的全景直播画面发送给观众端,从而为观众端在虚拟空间内的全景直播提供全景画面支持。观众端对于接收到的主播端在第一虚拟空间内每一直播帧的全景直播画面,会从该直播帧的全景直播画面中分离出该直播帧在第一虚拟空间内预设的每一视角下的纹理图像,然后在第二虚拟空间内渲染该直播帧下的各个纹理图像,从而实现虚拟空间内的实时全景直播,避免观众端仅能支持主播当前视角下的画面直播,使得观众体验到与主播相同的全景沉浸感,增强虚拟空间直播的沉浸式体验。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例示出的直播方法所处的场景架构图;
图2为本申请实施例示出的一种基于虚拟现实的直播方法的流程图;
图3为本申请实施例示出的表示第一虚拟空间的立方体的示意图;
图4为本申请实施例示出的立方体贴图的示意图;
图5为本申请实施例示出的一种基于虚拟现实的直播方法的流程图;
图6为本申请实施例示出的观众端全景渲染的示意图;
图7为本申请实施例示出的一种基于虚拟现实的直播装置的原理框图;
图8为本申请实施例示出的一种基于虚拟现实的直播装置的原理框图;
图9是本申请实施例提供的电子设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
图1为本申请实施例示出的直播方法所处的场景架构图。该应用场景可以包括主播端110、直播服务端120和至少一个观众端130。
其中,考虑到本申请主要针对主播和观众在VR场景内的实时画面直播,所以主播端110和观众端130可以为任一种VR设备内的头戴显示器。而且,为了能够为主播端110和观众端130提供特定直播内容下的三维虚拟场景,会在主播端110和观众端130上分别安装有相应的三维应用程序。
示例性的,主播和观众分别佩戴好主播端110和观众端130的头戴显示器并启动后,会进入相应的虚拟空间。然后,主播端110通过登录该三维应用程序,可以在虚拟空间内展示特定直播内容的三维虚拟场景,并通过触发相应的直播控件,来生成对应的VR直播间。例如,主播通过佩戴好头戴显示器进入虚拟空间后,通过登录某一三维游戏应用,即可在虚拟空间内展示相应的游戏场景,同时主播触发相应的直播控件后,可以在该三维游戏应用内生成该主播的VR直播间。
然而,观众在进入相应的虚拟空间后,通过登录观众端130所安装的三维应用程序,即可在虚拟空间内展示特定直播内容的三维虚拟场景。然后,观众通过触发主播的VR直播间的加入操作,即可作为该主播的观众存在,实时获取主播端110的直播画面。
此时,主播端110对于主播在虚拟空间内每一直播时刻下的直播画面,均会发送给直播服务端120,通过直播服务端120对每一直播画面进行相应的处理,以通过该直播服务端120将其转发给各个观众端130,从而实现观众端对于主播在虚拟空间内的准确直播。
接下来分别从主播端和观众端对VR场景下的直播过程进行详细的解释说明。
图2为本申请实施例示出的一种基于虚拟现实的直播方法的流程图。该方法应用于主播端,可以由本公开提供配置于主播端的基于虚拟现实的直播装置来执行,其中,该基于虚拟现实的直播装置可以通过任意的软件和/或硬件的方式实现。示例性地,该基于虚拟现实的直播装置可以应用于任一电子设备中,该电子设备包括但不限于为增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备等支持虚拟场景的物联网(the internet of things,IOT)设备,本申请对电子设备的具体类型不作任何限制。
具体的,如图2所示,该方法可以包括如下步骤:
S210,针对第一虚拟空间内的每一直播帧,获取该直播帧在第一虚拟空间内预设的每一视角下的纹理图像。
在本申请中,考虑到观众端如果实现主播所处VR场景的全景直播,首先需要主播端向观众端提供全景直播画面的支持。因此,主播端在直播过程中,需要为每一直播时刻下的直播帧,生成对应的全景直播画面。
作为本申请中的一种可选实现方案,主播端所处的VR直播场景为本申请中的第一虚拟空间。此时,在第一虚拟空间内可以通过配置的虚拟相机参数,来表示主播在第一虚拟空间内的VR属性,例如相机视场角可以表示主播在第一虚拟空间内的视场角,而相机位置可以表示主播进入第一虚拟空间内的位置。
此时,为了能够获取主播端的全景直播画面,会预先通过设定第一虚拟空间内的相机角度,来提前为主播的全景直播设定多个视角,使得第一虚拟空间内预设的多个视角能够组合成全景视角,来摄取主播在第一虚拟空间内的场景全貌。其中,全景视角为主播在第一虚拟空间内能够摄取第一虚拟空间的场景全貌的360度环绕角度。
示例性的,本申请可以基于第一虚拟空间内的相机视场角和全景视角间的关联关系,来设定第一虚拟空间内的各个相机角度,得到第一虚拟空间内的各个视角。例如,如果第一虚拟空间内的相机视场角为90度,那么需要设定6个视角才能够从不同角度下获取到第一虚拟空间在全景视角下的场景全貌,这6个视角可以依次为Vector1(0,0,0)、Vector2(0,-90,0)、Vector3(0,180,0)、Vector4(0,90,0)、Vector5(-90,180,0)和Vector6(90,180,0)。
因此,对于主播端在第一虚拟空间内需要向观众端实时直播展示的每一直播帧而言,本申请在该直播帧对应的直播时刻下,可以按照第一虚拟空内预设的各个视角,通过依次调整第一虚拟空间内的相机角度,来摄取该直播帧在第一虚拟空间内每一视角下的纹理图像,以便后续组合得到该直播帧的全景直播画面。此时,本申请中依次调整第一虚拟空间内的相机角度较为简便,无需增加额外的开发工具,极大提高VR直播的高效性。
S220,合并直播帧在每一视角下的纹理图像,得到直播帧的全景直播画面。
本申请中,在获取到直播帧在第一虚拟空间内每一视角下的纹理图像后,可以按照第一虚拟空间内各个视角的相邻关系,对该直播帧在每一视角下的纹理图像进行拼接合并,从而得到该直播帧在第一虚拟空间内的场景全貌,也就是该直播帧的全景直播画面。
作为本申请中的一种可选实现方案,本申请中直播帧在每一视角下的纹理图像为一个平面图像,使得每一视角在第一虚拟空间内能够指向一个平面。而且,第一虚拟空间内的各个视角的角度大小与相机视场角的角度大小相同,使得每一视角在第一虚拟空间内指向的平面形状也相同。因此,本申请可以通过第一正多面体来表示第一虚拟空间,且第一虚拟空间内的每一视角与第一正多面体内的每一面一一对应。
此时,本申请中合并直播帧在每一视角下的纹理图像,得到直播帧的全景直播画面,具体可以为:将直播帧在每一视角下的纹理图像映射到第一正多面体内该视角指向的目标面,得到对应的多面体贴图,作为直播帧的全景直播画面。
也就是说,由于第一虚拟空间内的每一视角与第一正多面体内的每一面一一对应,那么直播帧在每一视角下的纹理图像与第一正多面体内的每一面一一对应。因此,根据第一虚拟空间内的每一视角与第一正多面体内的每一面之间的对应关系,可以从第一正多面体中确定出每一视角指向的目标面。然后,将直播帧在每一视角下的纹理图像依次渲染映射到该视角指向的目标面内,即可得到对应的多面体贴图,该多面体贴图即为本申请中直播帧的全景直播画面。
优选的,从第一虚拟空间为三维立体空间的角度来看,为了确保用户在三维虚拟空间内的沉浸式体验,如图3所示,本申请可以通过立方体来表示第一虚拟空间,那么如图4所示,本申请中的多面体贴图为立方体贴图。
作为本申请中的一种可选实现方案,为了确保直播帧在每一视角下的纹理图像的高效处理,本申请可以采用双进程来实现对于直播帧在每一视角下的纹理图像的获取和合并步骤。也就是说,通过第一进程执来获取直播帧在每一视角下的纹理图像,而通过第二进程从第一进程中读取直播帧在每一视角下的纹理图像,并执行合并操作。
此时,为了避免第二进程从第一进程读取直播帧在每一视角下的纹理图像时,第一进程还未完整获取到直播帧在每一视角下的纹理图像,而导致第二进程合并直播帧在每一视角下的纹理图像时出现纹理撕裂的情况,本申请为第一进程和第二进程设置对应的双向进程锁,以便第二进程在第一进程读取直播帧在每一视角下的纹理图像前,首选判断第一进程是否完整获取到直播帧在每一视角下的纹理图像。
示例性的,在第一进程内设置一个共享内容,用于按序存储每一直播帧的纹理标签,每一直播帧的纹理标签用于表示第一进程对于该直播帧在每一视角下的纹理图的完整获取情况。因此,本申请在执行直播帧在每一视角下的纹理图像的合并步骤前,首先会查看该直播帧的纹理标签,来判断是否完整获取到该直播帧在每一视角下的纹理图像,例如纹理标签为“1”表示已经完整获取到直播帧在每一视角下的纹理图像,而纹理标签为“0”表示还未完整获取到直播帧在每一视角下的纹理图像。在确定完整获取到直播帧在每一视角下的纹理图像后,通过第二进程从第一进程读取直播帧在每一视角下的纹理图像并进行合并,从而得到该直播帧的全景直播画面。
S230,将直播帧的全景直播画面发送给观众端。
在得到直播帧的全景直播画面后,直接将该全景直播画面发动给各个观众端,以在观众端的第二虚拟空间内对应渲染该全景直播画面,使得观众体验到与主播相同的全景沉浸感。
作为本申请中的一种可选实现方案,为了确保直播帧的全景直播画面的准确高效传输,本申请可以先将直播帧的全景直播画面发送给直播服务端。此时,直播服务端内会预先设定一种具备低延时性的实时音视频通信(Real Time Communication,简称为RTC)算法,依托核心音视频编解码、信道传输和网络调度技术,提供高可用、高品质、超低延时的音视频通信服务。因此,通过直播服务端可以采用RTC算法对该直播帧的全景直播画面进行相应编码,并将编码后的全景直播画面转发给各个观众端,以提高全景直播画面的低延时准确传输。
此外,由于通常情况下某一应用软件包(Software Development Kit,简称为SDK)内生成的任何纹理并不允许其他SDK使用。因此,为了在观众端能够正常实现主播端的纹理图像渲染,本申请会在主播端的SDK内设定相应的共享纹理属性,以便观众端正常使用主播端的直播帧在每一视角下的纹理图像。
本申请实施例提供的技术方案,主播端在实时直播过程中,针对第一虚拟空间内的每一直播帧,会获取该直播真在第一虚拟空间内预设的每一视角下的纹理图像,并合并得到该直播帧的全景直播画面,然后将该直播帧的全景直播画面发送给观众端,从而为观众端在虚拟空间内的全景直播提供全景画面支持,避免观众端仅能支持主播当前视角下的画面直播,使得观众体验到与主播相同的全景沉浸感,增强虚拟空间直播的沉浸式体验。
图5为本申请实施例示出的一种基于虚拟现实的直播方法的流程图。该方法应用于观众端,可以由本公开提供配置于观众端的基于虚拟现实的直播装置来执行,其中,该基于虚拟现实的直播装置可以通过任意的软件和/或硬件的方式实现。示例性地,该基于虚拟现实的直播装置可以应用于任一电子设备中,该电子设备包括但不限于为AR/VR设备等支持虚拟场景的IOT设备,本申请对电子设备的具体类型不作任何限制。
具体的,如图5所示,该方法可以包括如下步骤:
S510,针对接收到的主播端在第一虚拟空间内每一直播帧的全景直播画面,按照直播帧的全景直播画面的合并规则,分离出直播帧在第一虚拟空间内预设的每一视角下的纹理图像。
在VR直播过程中,主播端会将每一直播帧的全景直播画面,通过直播服务端不断转发给各个观众端。此时,任一观众端均会接收到主播端在第一虚拟空间内每一直播帧的全景直播画面,需要将每一直播帧的全景直播画面在观众端所处的第二虚拟空间内进行全景渲染,以实现观众端的VR全景直播。
作为本申请中的一种可选实现方案,由于每一直播帧的全景直播画面是由该直播帧在第一虚拟空间内每一视角下的纹理图像合并而成,所以观众端对于所接收到的每一直播帧的全景直播画面,首先会分析该直播帧的全景直播画面的合并规则,例如每一视角下的纹理图像在各个平面的映射情况等。然后,采用从该直播帧在每一视角下的纹理图像合并成该直播帧的全景直播画面时的反向操作,从该直播帧的全景直播画面中分离出该直播帧在第一虚拟空间内每一视角下的各个纹理图像,以便后续对每一视角下的纹理图像进行第二虚拟空间内相应平面的渲染。
作为本申请中的一种可选实现方案,考虑到主播端在第一虚拟空间内每一直播帧的全景直播画面可以为多面体贴图,那么本申请通过对多面体贴图的每一面进行裁剪,并判断多面体贴图的每一面在第一虚拟空间内对应的视角,即可得到该直播帧在第一虚拟空间内每一视角下的纹理图像。
此外,由于主播端在第一虚拟空间内每一直播帧的全景直播画面会通过直播服务端采用RTC算法进行编码后转发给各个观众端,因此观众端在接收到每一直播帧的全景直播画面后,首先会对该直播帧的全景直播画面进行相应解码,然后在对解码后的全景直播画面进行相应的分离处理,以得到该直播帧在第一虚拟空间内每一视角下的纹理图像。
S520,将直播帧在第一虚拟空间内每一视角下的纹理图像渲染到第二虚拟空间内。
在得到直播帧在第一虚拟空间内每一视角下的纹理图像后,可以在观众端所处的第二虚拟空间内设定出与第一虚拟空间内的每一视角匹配的多个平面。然后,将直播帧在每一视角下的纹理图像,对应渲染到该第二虚拟空间内与该视角匹配的预设平面内,从而在第二虚拟空间内不同视角下同步展示与主播端相同的全景直播画面,使得观众端体验到与主播端相同的全景直播沉浸感。
作为本申请中的一种可选实现方案,在直播帧的全景直播画面为多面体贴图时,可以裁剪还原出多面体贴图的每一面对应视角下的纹理图像。此时,为了在第二虚拟空间内准确展示该多面体贴图所表示的全景直播画面,本申请会预先构建一个对应的第二正多面体,且该第二正多面体的规模(Scale)能够缩放到无限大,用于准确表示该第二虚拟空间,避免观众端通过主播端角度在第二虚拟空间内移动时超出第二正多面体的范围,而出现VR直播画面失效的问题。而且,该第二正多面体与用于表示第一虚拟空间的第一正多面体的形状相同,使得第二正多面体与第一正多面体的面数量相同,也就是视角数量相同,从而确保直播帧在第一虚拟空间内每一视角下的纹理图像在第二虚拟空间内的全面准确渲染。同时,考虑到主播端在第一虚拟空间移动时,可近似认为一直处于第一虚拟空间内的中心位置,因此本申请可以将第二虚拟空间内的相机位置设定为该第二正多面体的中心位置,以表示观众端在第二正多面体内的位置,从而全面复制主播端的全景视角。
然后,在将直播帧在第一虚拟空间内每一视角下的纹理图像渲染到第二虚拟空间内时,可以获取已构建的用于表示第二虚拟空间的第二正多面体。然后,确定在直播帧在第一虚拟空间内的每一视角在第二正多面体内指向的目标面。进而,将该直播帧在第一虚拟空间内每一视角下的纹理图像分别渲染到第二正多面体内该视角指向的目标面内,从而实现第二虚拟空间内的全景直播。
示例性的,如图6所示,第二正多面体可以为立方体,通过对直播帧在第一虚拟空间内的立方体贴图进行每一面的裁剪还原,然后将每一面裁剪后的纹理图像对应渲染到第二正多面体的相应面内。
本申请实施例提供的技术方案,观众端对于接收到的主播端在第一虚拟空间内每一直播帧的全景直播画面,会从该直播帧的全景直播画面中分离出该直播帧在第一虚拟空间内预设的每一视角下的纹理图像,然后在第二虚拟空间内渲染该直播帧下的各个纹理图像,从而实现虚拟空间内的实时全景直播,避免观众端仅能支持主播当前视角下的画面直播,使得观众体验到与主播相同的全景沉浸感,增强虚拟空间直播的沉浸式体验。
图7为本申请实施例示出的一种基于虚拟现实的直播装置的原理框图,该装置700配置于主播端。如图7所示,该装置700可以包括:
纹理获取模块710,用于针对第一虚拟空间内的每一直播帧,获取该直播帧在所述第一虚拟空间内预设的每一视角下的纹理图像;
全景合并模块720,用于合并所述直播帧在每一视角下的纹理图像,得到所述直播帧的全景直播画面;
全景画面传输模块730,用于将所述直播帧的全景直播画面发送给观众端。
进一步的,所述第一虚拟空间内预设的每一视角基于所述第一虚拟空间内的相机视场角与全景视角间的关联关系设定,且与用于表示所述第一虚拟空间的第一正多面体内的每一面一一对应。
进一步的,所述全景合并模块720,可以具体用于:
将所述直播帧在每一视角下的纹理图像映射到所述第一正多面体内该视角指向的目标面,得到对应的多面体贴图,作为所述直播帧的全景直播画面。
进一步的,所述多面体贴图为立方体贴图。
进一步的,所述直播帧在每一视角下的纹理图像采用双进程来实现获取和合并的步骤;
相应的,所述全景合并模块720,可以具体用于:
根据所述直播帧的纹理标签,判断是否完整获取到所述直播帧在每一视角下的纹理图像;
若是,则合并所述直播帧在每一视角下的纹理图像,得到所述直播帧的全景直播画面。
进一步的,所述全景画面传输模块730,可以具体用于:
将所述直播帧的全景直播画面发送给直播服务端,由所述直播服务端采用RTC算法对所述直播帧的全景直播画面进行编码,并将编码后的全景直播画面转发给所述观众端。
图8为本申请实施例示出的一种基于虚拟现实的直播装置的原理框图,该装置800配置于观众端。如图8所示,该装置800可以包括:
全景分离模块810,用于针对接收到的主播端在第一虚拟空间内每一直播帧的全景直播画面,按照所述直播帧的全景直播画面的合并规则,分离出所述直播帧在所述第一虚拟空间内预设的每一视角下的纹理图像;
直播渲染模块820,用于将所述直播帧在所述第一虚拟空间内每一视角下的纹理图像渲染到第二虚拟空间内。
进一步的,如果所述直播帧的全景直播画面为多面体贴图,所述全景分离模块810,可以具体用于:
对所述多面体贴图内的每一面进行裁剪,得到所述直播帧在所述第一虚拟空间内每一视角下的纹理图像。
进一步的,所述直播渲染模块820,可以具体用于:
获取已构建的用于表示所述第二虚拟空间的第二正多面体,所述第二正多面体与用于表示所述第一虚拟空间的第一正多面体的形状相同;
将所述直播帧在所述第一虚拟空间内每一视角下的纹理图像分别渲染到所述第二正多面体内该视角指向的目标面内,实现所述第二虚拟空间内的全景直播。
进一步的,所述基于虚拟现实的直播装置800,还可以包括:
位置设定模块,用于将所述第二虚拟空间内的相机位置设定为所述第二正多面体的中心位置。
进一步的,所述基于虚拟现实的直播装置800,还可以包括:
全景解码模块,用于对所述直播帧的全景直播画面进行解码,以对解码后的全景直播画面进行处理。
本申请实施例中,主播端在实时直播过程中,针对第一虚拟空间内的每一直播帧,会获取该直播真在第一虚拟空间内预设的每一视角下的纹理图像,并合并得到该直播帧的全景直播画面,然后将该直播帧的全景直播画面发送给观众端,从而为观众端在虚拟空间内的全景直播提供全景画面支持。观众端对于接收到的主播端在第一虚拟空间内每一直播帧的全景直播画面,会从该直播帧的全景直播画面中分离出该直播帧在第一虚拟空间内预设的每一视角下的纹理图像,然后在第二虚拟空间内渲染该直播帧下的各个纹理图像,从而实现虚拟空间内的实时全景直播,避免观众端仅能支持主播当前视角下的画面直播,使得观众体验到与主播相同的全景沉浸感,增强虚拟空间直播的沉浸式体验。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图7所示的装置700可以执行本申请提供的应用于主播端的任一方法实施例,图8所示的装置800可以执行本申请提供的应用于观众端的任一方法实施例,并且装置700和装置800中的各个模块的前述和其它操作和/或功能分别为了实现本申请实施例的各个方法中的相应流程,为了简洁,在此不再赘述。
上文中结合附图从功能模块的角度描述了本申请实施例的装置700和装置800。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图9是本申请实施例提供的电子设备900的示意性框图。
如图9所示,该电子设备900可包括:
存储器910和处理器920,该存储器910用于存储计算机程序,并将该程序代码传输给该处理器920。换言之,该处理器920可以从存储器910中调用并运行计算机程序,以实现本申请实施例中的方法。
例如,该处理器920可用于根据该计算机程序中的指令执行上述方法实施例。
在本申请的一些实施例中,该处理器920可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本申请的一些实施例中,该存储器910包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
在本申请的一些实施例中,该计算机程序可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器910中,并由该处理器920执行,以完成本申请提供的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序在该电子设备中的执行过程。
如图9所示,该电子设备还可包括:
收发器930,该收发器930可连接至该处理器920或存储器910。
其中,处理器920可以控制该收发器930与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器930可以包括发射机和接收机。收发器930还可以进一步包括天线,天线的数量可以为一个或多个。
应当理解,该电子设备中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
本申请还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
以上该,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。

Claims (15)

1.一种基于虚拟现实的直播方法,其特征在于,应用于主播端,包括:
针对第一虚拟空间内的每一直播帧,获取该直播帧在所述第一虚拟空间内预设的每一视角下的纹理图像;
合并所述直播帧在每一视角下的纹理图像,得到所述直播帧的全景直播画面;
将所述直播帧的全景直播画面发送给观众端。
2.根据权利要求1所述的方法,其特征在于,所述第一虚拟空间内预设的每一视角基于所述第一虚拟空间内的相机视场角与全景视角间的关联关系设定,且与用于表示所述第一虚拟空间的第一正多面体内的每一面一一对应。
3.根据权利要求2所述的方法,其特征在于,所述合并所述直播帧在每一视角下的纹理图像,得到所述直播帧的全景直播画面,包括:
将所述直播帧在每一视角下的纹理图像映射到所述第一正多面体内该视角指向的目标面,得到对应的多面体贴图,作为所述直播帧的全景直播画面。
4.根据权利要求3所述的方法,其特征在于,所述多面体贴图为立方体贴图。
5.根据权利要求1所述的方法,其特征在于,所述直播帧在每一视角下的纹理图像采用双进程来实现获取和合并的步骤;
相应的,所述合并所述直播帧在每一视角下的纹理图像,得到所述直播帧的全景直播画面,包括:
根据所述直播帧的纹理标签,判断是否完整获取到所述直播帧在每一视角下的纹理图像;
若是,则合并所述直播帧在每一视角下的纹理图像,得到所述直播帧的全景直播画面。
6.根据权利要求1所述的方法,其特征在于,所述将所述直播帧的全景直播画面发送给观众端,包括:
将所述直播帧的全景直播画面发送给直播服务端,由所述直播服务端采用实时音视频通信RTC算法对所述直播帧的全景直播画面进行编码,并将编码后的全景直播画面转发给所述观众端。
7.一种基于虚拟现实的直播方法,其特征在于,应用于观众端,包括:
针对接收到的主播端在第一虚拟空间内每一直播帧的全景直播画面,按照所述直播帧的全景直播画面的合并规则,分离出所述直播帧在所述第一虚拟空间内预设的每一视角下的纹理图像;
将所述直播帧在所述第一虚拟空间内每一视角下的纹理图像渲染到第二虚拟空间内。
8.根据权利要求7所述的方法,其特征在于,如果所述直播帧的全景直播画面为多面体贴图,所述按照所述直播帧的全景直播画面的合并规则,分离出所述直播帧在所述第一虚拟空间内预设的每一视角下的纹理图像,包括:
对所述多面体贴图内的每一面进行裁剪,得到所述直播帧在所述第一虚拟空间内每一视角下的纹理图像。
9.根据权利要求8所述的方法,其特征在于,所述将所述直播帧在所述第一虚拟空间内每一视角下的纹理图像渲染到第二虚拟空间内,包括:
获取已构建的用于表示所述第二虚拟空间的第二正多面体,所述第二正多面体与用于表示所述第一虚拟空间的第一正多面体的形状相同;
将所述直播帧在所述第一虚拟空间内每一视角下的纹理图像分别渲染到所述第二正多面体内该视角指向的目标面内,实现所述第二虚拟空间内的全景直播。
10.根据权利要求9所述的方法,其特征在于,在将所述直播帧在所述第一虚拟空间内每一视角下的纹理图像渲染到第二虚拟空间内之前,还包括:
将所述第二虚拟空间内的相机位置设定为所述第二正多面体的中心位置。
11.根据权利要求7所述的方法,其特征在于,在按照所述直播帧的全景直播画面的合并规则,分离出所述直播帧在所述第一虚拟空间内预设的每一视角下的纹理图像之前,还包括:
对所述直播帧的全景直播画面进行解码,以对解码后的全景直播画面进行处理。
12.一种基于虚拟现实的直播装置,其特征在于,配置于主播端,包括:
纹理获取模块,用于针对第一虚拟空间内的每一直播帧,获取该直播帧在所述第一虚拟空间内预设的每一视角下的纹理图像;
全景合并模块,用于合并所述直播帧在每一视角下的纹理图像,得到所述直播帧的全景直播画面;
全景画面传输模块,用于将所述直播帧的全景直播画面发送给观众端。
13.一种基于虚拟现实的直播装置,其特征在于,配置于观众端,包括:
全景分离模块,用于针对接收到的主播端在第一虚拟空间内每一直播帧的全景直播画面,按照所述直播帧的全景直播画面的合并规则,分离出所述直播帧在所述第一虚拟空间内预设的每一视角下的纹理图像;
直播渲染模块,用于将所述直播帧在所述第一虚拟空间内每一视角下的纹理图像渲染到第二虚拟空间内。
14.一种电子设备,其特征在于,包括:
处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,以执行权利要求1-11中任一项所述的基于虚拟现实的直播方法。
15.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行如权利要求1-11中任一项所述的基于虚拟现实的直播方法。
CN202210368843.1A 2022-04-08 2022-04-08 基于虚拟现实的直播方法、装置、设备及存储介质 Pending CN116939231A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210368843.1A CN116939231A (zh) 2022-04-08 2022-04-08 基于虚拟现实的直播方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210368843.1A CN116939231A (zh) 2022-04-08 2022-04-08 基于虚拟现实的直播方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN116939231A true CN116939231A (zh) 2023-10-24

Family

ID=88381517

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210368843.1A Pending CN116939231A (zh) 2022-04-08 2022-04-08 基于虚拟现实的直播方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN116939231A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116112699A (zh) * 2022-12-13 2023-05-12 北京奇艺世纪科技有限公司 一种直播方法、装置、电子设备及可读存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116112699A (zh) * 2022-12-13 2023-05-12 北京奇艺世纪科技有限公司 一种直播方法、装置、电子设备及可读存储介质
CN116112699B (zh) * 2022-12-13 2024-07-19 北京奇艺世纪科技有限公司 一种直播方法、装置、电子设备及可读存储介质

Similar Documents

Publication Publication Date Title
EP3606082B1 (en) Panoramic video playback method and client terminal
US11653065B2 (en) Content based stream splitting of video data
US11706403B2 (en) Positional zero latency
CN112470482B (zh) 视频播放方法、装置、终端及存储介质
US10897646B2 (en) Video stream transmission method and related device and system
CN113347405B (zh) 缩放相关的方法和装置
CN110419224B (zh) 消费视频内容的方法、电子设备和服务器
US11539983B2 (en) Virtual reality video transmission method, client device and server
KR20170008725A (ko) 콘텐트를 스트리밍하기 위한 방법들 및 장치
CN110663067B (zh) 用于生成现实世界场景的定制视图的虚拟化投影以包括在虚拟现实媒体内容中的方法和系统
CN113891117B (zh) 沉浸媒体的数据处理方法、装置、设备及可读存储介质
CN102984560B (zh) 从断点处播放视频的方法和设备
US20240015197A1 (en) Method, apparatus and device for encapsulating media file, and storage medium
CN113438495A (zh) Vr直播方法、装置、系统、设备及存储介质
CN108401163B (zh) 一种实现vr直播的方法、装置及ott业务系统
CN116939231A (zh) 基于虚拟现实的直播方法、装置、设备及存储介质
JP2020187706A (ja) 画像処理装置、画像処理システム、画像処理方法およびプログラム
WO2023024839A1 (zh) 媒体文件封装与解封装方法、装置、设备及存储介质
CN117115395A (zh) 虚拟现实与真实场景的融合方法、装置、设备及介质
CN112423108B (zh) 码流的处理方法、装置、第一终端、第二终端及存储介质
CN118101982A (zh) 直播方法、装置、设备及存储介质
CN112752032B (zh) 一种全景视频生成方法、视频采集方法与相关装置
WO2019034803A1 (en) METHOD AND APPARATUS FOR PROCESSING VIDEO INFORMATION
US20230034304A1 (en) Atsc over-the-air (ota) broadcast of public volumetric augmented reality (ar)
CN117671198A (zh) 图像处理方法、装置、设备、存储介质及程序产品

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