CN117714968A - 音频渲染方法和系统 - Google Patents

音频渲染方法和系统 Download PDF

Info

Publication number
CN117714968A
CN117714968A CN202211374150.XA CN202211374150A CN117714968A CN 117714968 A CN117714968 A CN 117714968A CN 202211374150 A CN202211374150 A CN 202211374150A CN 117714968 A CN117714968 A CN 117714968A
Authority
CN
China
Prior art keywords
sound source
source unit
audio
virtual scene
audio rendering
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
CN202211374150.XA
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.)
Shanghai Kaifa Huanyu Technology Development Co ltd
Original Assignee
Shanghai Kaifa Huanyu Technology Development 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 Shanghai Kaifa Huanyu Technology Development Co ltd filed Critical Shanghai Kaifa Huanyu Technology Development Co ltd
Priority to CN202211374150.XA priority Critical patent/CN117714968A/zh
Publication of CN117714968A publication Critical patent/CN117714968A/zh
Pending legal-status Critical Current

Links

Abstract

本发明实施例提供一种音频渲染方法和系统,该方法包括:获取多个音源单位对应的音频信号;获取第一音源单位相对于第二音源单位的音频渲染参数,其中,第二音源单位为多个音源单位中的任一音源单位,第一音源单位为多个音源单位中除第二音源单位外的音源单位;向第二音源单位对应的客户端发送音频渲染参数、第一音源单位对应的音频信号以及第一音源单位在虚拟场景中的位置。采用本发明,可以在虚拟场景中与各个音源单位对应的位置上设置音源,通过相应的音频渲染参数对各个音源对应的音频信号进行音频渲染,最终形成复合音频。能够模拟线下演唱会的复杂音频听感,从而复现线下演唱会的临场感。

Description

音频渲染方法和系统
技术领域
本发明涉及互联网技术领域,尤其涉及一种音频渲染方法和系统。
背景技术
随着科技的不断发展,一些线下的活动已不断地迁移到了线上,给用户带来了极大的便利。例如,以往需要在演唱会场馆开办的演唱会也可以搬移到线下,听众用户可以登陆特定平台在线上欣赏表演者的演唱表演。
相关技术中,在线上开办演唱会的方式主要包括两种。其中一种是直播模式:表演者在后台表演,可以将表演者的表演过程拍摄下来,并以直播的方式将直播视频传送给各听众用户对应的客户端,各听众用户可以通过客户端在直播间与表演者以及其他听众用户进行互动。另一种是网络游戏模式,听众用户和表演者以虚拟角色身份进入到虚拟场景中,在虚拟场景中与表演者以及其他听众用户进行互动。
在相关技术中的直播模式中,听众用户仅能借助直播视频来欣赏演唱会,如果听众用户想要与表演者或者其他听众用户进行互动,通常也只能以输入文字的方式进行互动,这样的互动方式较为单一且沉浸感弱。在另一方面,在相关技术中的网络游戏模式中,听众用户与表演者各自化身虚拟形象在同一虚拟场景中,不同听众用户之间、听众用户和表演者之间虽然有了形式更为丰富的互动动作,但是难以复现线下演唱会的临场感,导致听众用户很难在虚拟场景中感受其他听众用户的情绪状态,进而使得线上演唱会的沉浸感比较弱。
发明内容
本发明实施例提供一种音频渲染方法和系统,用以模拟线下演唱会的复杂音频听感,从而复现线下演唱会的临场感。
第一方面,本发明实施例提供一种音频渲染方法,应用于服务器,该方法包括:
获取多个音源单位对应的音频信号;
获取第一音源单位相对于第二音源单位的音频渲染参数,其中,所述第二音源单位为所述多个音源单位中的任一音源单位,所述第一音源单位为所述多个音源单位中除所述第二音源单位外的音源单位;
向所述第二音源单位对应的客户端发送所述音频渲染参数、所述第一音源单位对应的音频信号以及所述第一音源单位在虚拟场景中的位置。
可选地,所述音源单位为所述虚拟场景中设置的地图块,所述获取第一音源单位相对于第二音源单位的音频渲染参数,包括:
获取预先建立的所述虚拟场景中各地图块间相对的音频渲染参数的对应关系;
基于所述对应关系,确定第一地图块相对于第二地图块的音频渲染参数。
可选地,所述对应关系的建立过程,包括:
根据第一音源单位以及第二音源单位各自在虚拟场景中的位置,通过模拟各音源单位对应的音频信号在所述虚拟场景中的物理传播过程,确定所述第一音源单位相对于所述第二音源单位的音频渲染参数。
可选地,所述根据第一音源单位以及第二音源单位各自在虚拟场景中的位置,通过模拟各音源单位对应的音频信号在所述虚拟场景中的物理传播过程,确定所述第一音源单位相对于所述第二音源单位的音频渲染参数,包括:
根据第一音源单位以及第二音源单位各自在虚拟场景中的位置,确定所述第一音源单位与所述第二音源单位之间的距离;
若所述距离小于或者等于第一预设阈值,则基于各音源单位对应的音频信号的包围盒,对所述各音源单位对应的音频信号进行碰撞检测;
基于碰撞检测结果,确定所述第一音源单位相对于所述第二音源单位的音频渲染参数。
可选地,所述基于各音源单位对应的音频信号的包围盒,对所述各音源单位对应的音频信号进行碰撞检测,包括:
在所有包围盒中,将满足预设条件的包围盒确定为一组包围盒,得到多组包围盒;
对于所述多组包围盒中的任一组包围盒,对所述任一组包围盒进行合并;
基于合并后的包围盒,对所述各音源单位对应的音频信号进行碰撞检测。
可选地,所述地图块对应的音频信号为多个目标听众用户各自对应的音频信号的同步合并结果,所述多个目标听众用户为虚拟形象位于所述地图块中的听众用户。
第二方面,本发明实施例提供一种音频渲染方法,应用于客户端,所述方法包括:
接收服务器发送的第一音源单位相对于第二音源单位的音频渲染参数、所述第一音源单位对应的音频信号以及所述第一音源单位在虚拟场景中的位置;
基于所述音频渲染参数、所述音频信号以及第一音源单位在虚拟场景中的位置,进行音频渲染,以获得复合音频;
输出所述复合音频。
可选地,所述方法还包括:
接收所述服务器发送的基于第三音源单位对应的音频信号识别出的文字内容信息;
在与所述第三音源单位关联的信息显示区域中,显示所述文字内容信息。
可选地,所述基于所述音频渲染参数、所述音频信号以及第一音源单位在虚拟场景中的位置,进行音频渲染,包括:
在第一音源单位在虚拟场景中的位置上放置虚拟音源组件;
通过所述虚拟音源组件,渲染所述音频渲染参数和所述音频信号。
可选地,所述方法还包括:
设置所述虚拟音源组件对应的包围盒;
基于所述包围盒,对所述音频信号进行碰撞检测,以模拟所述音频信号在所述虚拟场景中的传播过程。
可选地,所述模拟所述音频信号在所述虚拟场景中的传播过程,包括:
模拟所述音频信号在所述虚拟场景中的反射过程;和/或,
模拟所述音频信号在所述虚拟场景中的衍射过程。
可选地,所述基于所述包围盒,对所述音频信号进行碰撞检测,包括:
在所有包围盒中,将满足预设条件的包围盒确定为一组包围盒,得到多组包围盒;
分别对各组包围盒进行合并;
基于合并后的包围盒,进行各音频信号的碰撞检测。
第三方面,本发明实施例提供一种音频渲染系统,所述系统包括服务器和客户端,其中:
所述服务器,用于获取多个音源单位对应的音频信号;获取第一音源单位相对于第二音源单位的音频渲染参数,其中,所述第二音源单位为所述多个音源单位中的任一音源单位,所述第一音源单位为所述多个音源单位中除所述第二音源单位外的音源单位;向所述第二音源单位对应的所述客户端发送所述音频渲染参数、所述第一音源单位对应的音频信号以及所述第一音源单位在虚拟场景中的位置;
所述客户端,用于接收所述服务器发送的第一音源单位相对于第二音源单位的音频渲染参数、所述第一音源单位对应的音频信号以及所述第一音源单位在虚拟场景中的位置;基于所述音频渲染参数、所述音频信号以及第一音源单位在虚拟场景中的位置,进行音频渲染,以获得复合音频;输出所述复合音频。
采用本发明,可以确定各个音源单位间相对的音频渲染参数,该音频渲染参数与各个音源单位间的距离相关。在虚拟场景中与各个音源单位对应的位置上设置音源,通过相应的音频渲染参数对各个音源对应的音频信号进行音频渲染,最终形成复合音频。复合音频中参照各个音频单位的远近距离将各个音源单位对应的音频信号融合进来,能够模拟线下演唱会的复杂音频听感,从而复现线下演唱会的临场感。因此,采用本发明,可以让听众用户在线上也同样能够感受到线下演唱会的欢快氛围,提高线上演唱会的沉浸感。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种音频渲染方法的流程示意图;
图2为本发明实施例提供的一种虚拟场景示意图;
图3为本发明实施例提供的一种获取音频渲染参数方案的流程示意图;
图4为本发明实施例提供的另一种获取音频渲染参数方案的流程示意图;
图5为本发明实施例提供的一种共用同一虚拟播放器播放音频信号的场景示意图;
图6为本发明实施例提供的另一种音频渲染方法的流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
图1为本发明实施例提供的一种音频渲染方法的流程图,该方法可以应用于服务器。如图1所示,该方法包括如下步骤:
101、获取多个音源单位对应的音频信号。
102、获取第一音源单位相对于第二音源单位的音频渲染参数,其中,第二音源单位为多个音源单位中的任一音源单位,第一音源单位为多个音源单位中除第二音源单位外的音源单位。
103、向第二音源单位对应的客户端发送音频渲染参数、第一音源单位对应的音频信号以及第一音源单位在虚拟场景中的位置。
实际应用中,可以采用线上的方式开办演唱会或者其他文艺演出,表演者、 NPC(non-player character,是游戏中的一种角色类型,意思是非玩家角色)、听众用户可以登入到同一虚拟场景,以各自的虚拟形象来表示登入虚拟场景的表演者、NPC、听众用户。在听众用户欣赏表演者表演的过程中,有些时候有些听众用户可能会发出一些声音,比如说给表演者进行应援活动,为表演者的表演喝彩、助威等。在这样的情况下,听众用户所使用的客户端可以采集当前听众用户发声形成的音频信号,将采集到的音频信号上传到服务器。
可选地,上述获取多个音源单位对应的音频信号的过程可以实现为:接收各个客户端上传的原始的音频信号。或者,上述获取多个音源单位对应的音频信号的过程也可以实现为:接收各个客户端上传的原始的音频信号,对原始的音频信号进行预处理,获取预处理后的音频信号。
其中,预处理可以包括:符合监管规定的敏感音频的过滤或者消音处理、音频特效处理(音频美化;降噪;男女老幼、卡通、二次元、明星等风格化处理)。其中,预处理可以是服务器默认的对每个接收到的音频信号进行的处理,或者,也可以由听众用户指定需要对音频信号进行哪些类型的预处理,听众用户可以通过客户端进行预处理类型的勾选。
在服务器获取到多个音源单位对应的音频信号之后,可以以音源单位为单位对这些获取到的音频信号进行处理。其中,可选地,音源单位可以包括听众用户和/或虚拟场景中设置的地图块。当音源单位是一个听众用户时,服务器可以接收该听众用户对应的客户端上传的该听众用户对应的音频信号,该音频信号可以是该听众用户在欣赏演唱会时的发声所形成的音频信号。当音源单位是一个地图块时,虚拟形象位于该地图块内的所有听众用户各自对应的客户端分别上传的音频信号共同确定出该地图块对应的音频信号,具体确定方式会在后文中介绍,在此暂不展开说明。
服务器还可以获取第一音源单位相对于第二音源单位的音频渲染参数。其中,可选地,音频渲染参数可以包括衰减系数、音量中的至少一项。需要说明的是,两个音源单位之间的音频渲染参数主要与该两个音源单位分别在虚拟场景中对应的位置、或者该两个音源单位之间的距离相关。以两个音源单位之间的距离对音频渲染参数中的音量的影响来说,与当前听众用户距离较近的其他听众用户对应的音频信号的音量较大,与当前听众用户距离较远的其他听众用户对应的音频信号的音量较小。通俗来说,也就是离得近听的清,离得远声音小。
可以理解的是,同一虚拟场景中可以对应有多个音源单位,比如说参与同一演唱会的听众用户存在多个,在某一演唱会对应的虚拟场景中设置的地图块有多个。针对每个音源单位i(第二音源单位),都可以确定出其他各个音源单位(第一音源单位)相对于音源单位i的音频渲染参数。
以音频单位为听众用户为例,简单举例来说,如图2所示,假设某个虚拟场景内有4个听众用户,包括听众用户A、B、C、D,假设听众用户B、C、D同时有音频信号输出,则对于听众用户A来说,需要确定3组音频渲染参数,它们分别是听众用户B相对于听众用户A的音频渲染参数、听众用户C相对于听众用户A的音频渲染参数以及听众用户D相对于听众用户A的音频渲染参数。如果该听众用户A也同时在发声,那么相对于听众用户B、C、D中的任一听众用户来说,也同样可以各自确定3组音频渲染参数。
另外,需要说明的是,在本申请中提供两种不同的获取音频渲染参数的方式,具体的获取方式将在后面的实施例中详细介绍,在此暂不展开叙述。
在获取到各个第一音源单位相对于第二音源单位的音频渲染参数之后,服务器可以向第二音源单位对应的客户端发送各个第一音源单位对应的音频渲染参数、各个第一音源单位对应的音频信号以及各个第一音源单位在虚拟场景中的位置。
实际应用中,当第二音源单位是一个听众用户时,可以将上述信息发送至该听众用户对应的客户端。当第二音源单位是一个地图块时,可以将上述信息发送至虚拟形象在该地图块中的各个听众用户对应的客户端。
需要说明的是,虚拟场景中可以包括多个地图块,这些地图块中有些地图块中是存在虚拟形象的,也就是有听众用户加入到该地图块的,而有些地图块中是不存在虚拟形象的,也就是说这样的地图块中还未有听众用户加入到其中。服务器可以将所有地图块对应的音频渲染参数发送至客户端,由客户端判断哪些地图块存在听众用户、哪些地图块需要进行音频渲染。
或者,服务器也可以只将存在听众用户的地图块对应的音频渲染参数发送至客户端,这样可以减少客户端的计算压力,将计算压力放置在服务器。其中,如果服务器只将存在听众用户的地图块对应的音频渲染参数发送至客户端,那么服务器在计算音频渲染参数的过程中,也可以不将全部的地图块对应的音频渲染参数计算出,只计算这些存在听众用户的地图块对应的音频渲染参数。基于此,在计算音频渲染参数之前,服务器可以先判断哪些地图块中存在听众用户,然后可以计算存在听众用户的地图块对应的音频渲染参数,跳过那些没有听众用户的地图块。采用这样的方式,可以在一定程度上降低服务器的计算量,减轻服务器的计算压力,提高服务器的运力,使得当线上参与演唱会的用户的数量庞大时服务器也能有很好的运力。
在另一方面,第二音源单位对应的客户端可以作为当前客户端。对于当前客户端来说,它可以通过各个第一音源单位对应的音频渲染参数、各个第一音源单位对应的音频信号以及各个第一音源单位在虚拟场景中的位置,进行音频渲染。
其中,需要说明的是,当前客户端根据各个第一音源单位在虚拟场景中的位置,可以在本地的同一虚拟场景中针对每个第一音源单位在相应的位置上设置一个虚拟音源组件。每个虚拟音源组件可以视为是一个虚拟播放器,可以播放对应的第一音源单位的音频信号。这样,当前客户端中的虚拟场景中所有虚拟音源组件输出的音频信号共同形成复合音频。
另外,还需要说明的是,由于不同听众用户以各自的虚拟形象进入到同一虚拟场景中,不同听众用户的虚拟形象在虚拟场景中的位置可以不同。进而对于当前听众用户来说,有的其他听众用户距离当前听众用户较近,有的其他听众用户距离当前听众用户较远。当前听众用户听到的这些其他听众用户发出的声音的效果是不一样的,因此不以完全相同的方式播放所有的音频信号,具体的播放方式由各个音频渲染参数决定。也就是说,音频信号决定了播放什么样的语音内容,音频渲染参数决定了以什么样的方式播放当前的语音内容。
最后,还需要说明的是,服务器还需要获取表演者对应的音频信号,将表演者对应的音频信号也发送到当前客户端。在当前客户端中,以表演者对应的音频信号为主音源,以其他听众用户对应的音频信号为次音源,共同渲染出最终的复合音频。
采用本发明,可以将虚拟场景中的音源分为两组,包括表演者音源组、其他听众用户音源组。两个音源组共同完成整个虚拟场景中的音频渲染,模拟线下演唱会的复杂音频听感,从而复现线下演唱会的临场感。
在某些可选实施例中,服务器还可以对第三音源单位对应的音频信号进行语音识别,以识别出第三音源单位对应的音频信号的文字内容信息;向第三音源单位对应的客户端发送文字内容信息。其中,第三音源单位可以是虚拟场景中包括的所有听众用户中的任一听众用户或者所有地图块中的任一地图块。第三音源单位可以包括那些需要进行音频渲染的音源单位,也可以包括不需要进行音频渲染的音源单位。其中,哪些音源单位不需要进行音频渲染会在后文中进行介绍,在此暂不展示叙述。
相应地,客户端可以接收服务器发送的第三音源单位对应的音频信号的文字内容信息,并将该文字内容信息展示在与该第三音源单位相关联的信息显示区域。其中,信息显示区域可以是信息公告板。多个听众用户对应的信息公告板可以错开显示,以避免重叠。
通过上述方式,如果第二音源单位对应的听众用户无法在渲染后的复合音频中听清某第三音源单位对应的听众用户所说的内容,还可以通过信息显示区域中提示的文字内容信息,进一步了解该第三音源单位对应的听众用户所说的内容。
采用本发明,可以确定各个音源单位间相对的音频渲染参数,该音频渲染参数与各个音源单位间的距离相关。在虚拟场景中与各个音源单位对应的位置上设置音源,通过相应的音频渲染参数对各个音源对应的音频信号进行音频渲染,最终形成复合音频。复合音频中参照各个音频单位的远近距离将各个音源单位对应的音频信号融合进来,能够模拟线下演唱会的复杂音频听感,从而复现线下演唱会的临场感。因此,采用本发明,可以让听众用户在线上也同样能够感受到线下演唱会的欢快氛围,提高线上演唱会的沉浸感。
在一可选实施例中,提供一种确定音频渲染参数的方案。如图3所示,该方案包括如下步骤:
301、获取多个音源单位对应的音频信号。
302、根据第一音源单位以及第二音源单位各自在虚拟场景中的位置,通过模拟各音源单位对应的音频信号在虚拟场景中的物理传播过程,确定第一音源单位相对于第二音源单位的音频渲染参数,其中,第二音源单位为多个音源单位中的任一音源单位,第一音源单位为多个音源单位中除第二音源单位外的音源单位。
303、向第二音源单位对应的客户端发送音频渲染参数、第一音源单位对应的音频信号以及第一音源单位在虚拟场景中的位置。
其中,上述步骤301、303已在上一实施例中详细介绍过,在本实施例中可以参照上一实施例的描述来理解这两个步骤,在此不再重复赘述。
在本实施例中,当音源单位为听众用户时,也就是针对发声的单个听众用户就要在虚拟场景中设置一个虚拟音源组件。当音源单位为地图块时,单个地图块内可能对应有多个听众用户,但是针对单个地图块也只设置一个虚拟音源组件,那么就需要地图块内的多个听众用户共用同一个虚拟音源组件。
针对每个音源单位,可以在虚拟场景中对应的位置上设置相应的虚拟音源组件。当音源单位为听众用户时,可以在听众用户的虚拟形象在虚拟场景中的位置上设置相应的虚拟音源组件。当音源单位为地图块时,可以在地图块在虚拟场景中的位置上设置相应的虚拟音源组件。
实际应用中,可以在虚拟场景中模拟各音源单位对应的音频信号的物理传播过程。进而通过模拟操作,可以确定第一音源单位相对于第二音源单位的音频渲染参数。
其中,需要说明的是,在虚拟场景中设置有不同听众用户对应的虚拟形象、建筑物模型、植物模型等,在音频信号的物理传播过程中,会与这些物体模型发生交互。模拟各音源单位对应的音频信号在虚拟场景中的物理传播过程,其目的是要获得音频信号与上述物体模型之间的交互结果,而该交互结果可以体现为两个音源单位之间的音频渲染参数。
可选地,模拟各音源单位对应的音频信号在虚拟场景中的物理传播过程的方式,可以包括:模拟音频信号在虚拟场景中的反射过程;和/或,模拟音频信号在虚拟场景中的衍射过程。
在某些可选实施例中,可以通过音频中间件wwise来实现模拟各音源单位对应的音频信号在虚拟场景中的物理传播过程。
值得注意的是,如果第一音源单位距离第二音源单位远到一定程度,对于第二音源单位来说,第一音源单位对应的音频信号到达第二音源单位所在的位置时已衰减的非常弱了,第二音源单位可能无法感知到第一音源单位传播过来的音频信号。对于这样的情况,可以基于距离判断相对于第二音源单位,第一音源单位发出的音频信号是否能够被第二音源单位感知,如果超出了第二音源单位的感知范围,可以直接不对该第一音源单位对应的音频信号进行音频渲染,这样可以减少设置一些虚拟音源组件,进而可以提高音频渲染效率。
基于此,可选地,根据第一音源单位以及第二音源单位各自在虚拟场景中的位置,通过模拟各音源单位对应的音频信号在虚拟场景中的物理传播过程,确定第一音源单位相对于第二音源单位的音频渲染参数的过程可以实现为:根据第一音源单位以及第二音源单位各自在虚拟场景中的位置,确定第一音源单位与第二音源单位之间的距离;若距离小于或者等于第一预设阈值,则根据第一音源单位以及第二音源单位各自在虚拟场景中的位置,通过模拟各音源单位对应的音频信号在虚拟场景中的物理传播过程,确定第一音源单位相对于第二音源单位的音频渲染参数。
其中,第一预设阈值可以设置为人的正常听觉范围。
在另一方面,可选地,若距离大于第一预设阈值,则不针对第一音源单位进行音频渲染。也就是说,如果第一音源单位与第二音源单位之间的距离大于第一预设阈值,则可以不对应于该第一音源单位在虚拟场景中设置相应的虚拟音源组件。
采用通过距离初步判定相对于第二音源单位是否需要针对某个第一音源单位设置虚拟音源组件的方式,可以降低非必要的虚拟音源组件的设置数量,从而可以提高音频渲染效率。
可选地,还可以判断第一音源单位与第二音源单位之间的距离是否超过预设阈值L1,如果该距离超过了预设阈值L1,则可以不针对该第一音源单位设置虚拟音源组件。如果该距离在预设阈值L1和预设阈值L2之间,则可以以地图块为音源单位来针对第一音源单位设置虚拟音源组件,其中,L1大于L2。如果该距离小于预设阈值L2,则可以以听众用户为音源单位针对第一音源单位设置虚拟音源组件。
前文提及到,服务器还可以对第三音源单位对应的音频信号进行语音识别,以识别出第三音源单位对应的音频信号的文字内容信息,并向第二音源单位对应的客户端发送该文字内容信息。其中,第三音源单位可以是与第二音源单位之间的距离超出第一预设阈值的音源单位。当第三音源单位与第二音源单位之间的距离超出第一预设阈值时,相对于第二音源单位,可以不在虚拟场景中针对第三音源单位设置虚拟音源组件,那么第二音源单位也就无法接收到第三音源单位所输出的音频信号,但是第二音源单位可以通过与上述第三音源单位相关联的信息显示区域了解第三音源单位所说的内容。
在另一可选实施例中,当音源单位是地图块时,还提供另一种确定音频渲染参数的方案。如图4所示,该方案包括如下步骤:
401、获取多个地图块各自对应的音频信号。
402、获取预先建立的虚拟场景中各地图块间相对的音频渲染参数的对应关系。
403、基于对应关系,确定第一地图块相对于第二地图块的音频渲染参数。
404、向第二地图块对应的客户端发送音频渲染参数、第一地图块对应的音频信号以及第一地图块在虚拟场景中的位置。
当音源单位为地图块时,单个地图块内可能对应有多个听众用户,但是针对单个地图块也只设置一个虚拟音源组件,那么就需要地图块内的多个听众用户共用同一个虚拟音源组件。
可选地,如图5所示的示意,上述共用的方式可以为,通过一个虚拟播放器同步播放地图块内的多个听众用户对应的音频信号。其中,同步播放可以实现为参照各音频信号的采集时间点同步地播放各音频信号。这些听众用户对应的音频信号通过同一虚拟播放器播放,可以认为以这样的方式播放的多个音频信号是同步合并结果。基于此,单个地图块对应的音频信号可以是虚拟形象位于该地图块内的多个听众用户各自对应的音频信号的同步合并结果。
基于上述分析可知,当音源单位为地图块时,可以将多个听众用户对应的音源信号合并为同一个同步合并结果。后续在以地图块为音源单位计算音频渲染参数时,通过同步合并结果代替各个听众用户单独设置的虚拟音源组件,可以大大减少虚拟音源组件设置数量,提高音频渲染效率。音频渲染参数的计算过程跟加入到虚拟场景中的听众用户的数量无关,而是与地图块的数量相关。采用本发明能承载超大人数规模的演唱会,同时还可以减少服务器的压力。复杂音效(如音频渲染参数)的计算都放在服务器中,无需客户端计算音效,客户端只要按照服务器计算好的音效进行适当的输出即可。
在本实施例中,由于是以地图块为音源单位来渲染音频的,而在渲染音频的过程中需要使用到的不同地图块之间的音频渲染参数主要与地图块之间的距离相关,同时由于地图块之间的相对位置关系是不会像单个听众用户那样可以在虚拟场景中随意移动而发生变化的,因此不同地图块之间的音频渲染参数是相对固定的。
基于此,可以预先确定出各个地图块之间相对的音频渲染参数,建立各地图块间相对的音频渲染参数的对应关系。可选地,对应关系的建立过程可以实现为:根据第一地图块以及第二地图块各自在虚拟场景中的位置,通过模拟各地图块对应的音频信号在虚拟场景中的物理传播过程,确定第一地图块相对于第二地图块的音频渲染参数。
可选地,上述模拟音频信号的物理传播过程可以通过对音频信号进行碰撞检测实现。可以通过包围盒实现不同地图块对应的音频信号的碰撞检测。具体来说,可以根据第一地图块以及第二地图块各自在虚拟场景中的位置,确定第一地图块与第二地图块之间的距离;若距离小于或者等于第一预设阈值,则基于各地图块对应的音频信号的包围盒,对各地图块对应的音频信号进行碰撞检测;基于碰撞检测结果,确定第一地图块相对于第二地图块的音频渲染参数。
在本公开实施例中还提供一种优化碰撞检测过程的实现方式。可选地,该实现方式可以是:在所有包围盒中,将满足预设条件的包围盒确定为一组包围盒,得到多组包围盒;对于多组包围盒中的任一组包围盒,对任一组包围盒进行合并;基于合并后的包围盒,对各地图块对应的音频信号进行碰撞检测。
其中,满足预设条件的包围盒例如可以是距离小于第二预设阈值的包围盒。进而,可以在所有包围盒中,将距离小于第二预设阈值的包围盒进行合并,得到合并后的包围盒。针对每个合并后的包围盒,只进行一次碰撞检测。
可选地,还可以以第二地图块所在的位置为中心,将距离第二地图块超过预设阈值L1的所有第一地图块对应的包围盒合并为一个,将距离第二地图块在预设阈值L1和预设阈值L2之间的相邻的第一地图块对应的包围盒进行合并,不对距离第二地图块小于预设阈值L2的各个第一地图块对应的包围盒进行合并。
通过上述方式,可以使得原本需要多次进行的碰撞检测,在合并包围盒之后,只对合并后的每一个包围盒进行一次碰撞检测,进而大大减少了碰撞检测的次数,提高了音频渲染参数的计算效率。
实际应用中,当某个听众用户进入到某个地图块时,可以通过前述对应关系,直接查找该听众用户所进入的地图块与虚拟场景中其他地图块之间相对的音频渲染参数。采用这样的方式,就无需实时计算虚拟场景中各个地图块间相对的音频渲染参数,通过查找对应关系,可以直接获取已预先计算好的音频渲染参数,可以提高确定音频渲染参数的效率。
可选地,虚拟场景中可以包括多个地图块,这些地图块中有些地图块中是存在虚拟形象的,也就是有听众用户加入到该地图块的,而有些地图块中是不存在虚拟形象的,也就是说这样的地图块中还未有听众用户加入到其中。服务器可以计算所有地图块对应的音频渲染参数,或者也可以只计算这些存在听众用户的地图块对应的音频渲染参数。基于此,在计算音频渲染参数之前,服务器可以先判断哪些地图块中存在听众用户,然后可以计算存在听众用户的地图块对应的音频渲染参数,跳过那些没有听众用户的地图块。采用这样的方式,可以在一定程度上降低服务器的计算量,减轻服务器的计算压力,提高服务器的运力,使得当线上参与演唱会的用户的数量庞大时服务器也能有很好的运力。
在获取到音频渲染参数之后,可以向第二地图块对应的客户端发送音频渲染参数、第一地图块对应的音频信号以及第一地图块在虚拟场景中的位置。其中,发送的这些信息的作用已在图1对应的实施例中详细介绍过,在本实施例中可以参照图1对应的实施例的描述来理解这些信息的作用,在此不再重复赘述。
图6为本发明实施例提供的一种音频渲染方法的流程图,该方法可以应用于客户端。如图6所示,该方法包括如下步骤:
601、接收服务器发送的第一音源单位相对于第二音源单位的音频渲染参数、第一音源单位对应的音频信号以及第一音源单位在虚拟场景中的位置。
602、基于音频渲染参数、音频信号以及第一音源单位在虚拟场景中的位置,进行音频渲染,以获得复合音频。
603、输出复合音频。
其中,可选地,音源单位可以包括听众用户和/或地图块。当音源单位为听众用户时,本发明实施例提供的方法可以应用于第二音源单位对应的客户端。当音源单位为地图块时,本发明实施例提供的方法可以应用于虚拟形象在地图块内的各个听众用户对应的客户端。
其中,可选地,音频渲染参数可以包括衰减系数、音量中的至少一项。需要说明的是,两个音源单位之间的音频渲染参数主要与该两个音源单位分别在虚拟场景中对应的位置、或者该两个音源单位之间的距离相关。
客户端可以基于从服务器接收到的各个第一音源单位对应的音频渲染参数、各个第一音源单位对应的音频信号以及各个第一音源单位在虚拟场景中的位置,进行音频渲染。
其中,需要说明的是,客户端根据各个第一音源单位在虚拟场景中的位置,可以在本地的同一虚拟场景中针对每个第一音源单位在相应的位置上设置一个虚拟音源组件。基于此,可选地,基于音频渲染参数、音频信号以及第一音源单位在虚拟场景中的位置,进行音频渲染的过程可以实现为:在第一音源单位在虚拟场景中的位置上放置虚拟音源组件;通过虚拟音源组件,渲染音频渲染参数和音频信号。
每个虚拟音源组件可以视为是一个虚拟播放器,可以播放对应的第一音源单位的音频信号。这样,当前客户端中的虚拟场景中所有虚拟音源组件输出的音频信号共同形成复合音频。
另外,还需要说明的是,由于不同听众用户以各自的虚拟形象进入到同一虚拟场景中,不同听众用户的虚拟形象在虚拟场景中的位置可以不同。进而对于当前听众用户来说,有的其他听众用户距离当前听众用户较近,有的其他听众用户距离当前听众用户较远。当前听众用户听到的这些其他听众用户发出的声音的效果是不一样的,因此不以完全相同的方式播放所有的音频信号,具体的播放方式由各个音频渲染参数决定。也就是说,音频信号决定了播放什么样的语音内容,音频渲染参数决定了以什么样的方式播放当前的语音内容。
最后,还需要说明的是,服务器还可以将表演者对应的音频信号也发送到客户端。在客户端中,以表演者对应的音频信号为主音源,以其他听众用户对应的音频信号为次音源,共同渲染出最终的复合音频。
可选地,客户端输出复合音频的方式可以包括本地播放复合音频,或者可以将复合音频发送到与客户端数据连接的外接音频播放设备,通过外接音频播放设备播放复合音频。其中,外接音频播放设备例如可以是蓝牙音箱。
可选地,客户端还可以接收服务器发送的基于第三音源单位对应的音频信号识别出的文字内容信息,其中,第三音源单位对应的音频信号可以是需要进行音频渲染的音源单位,也可以是不进行音频渲染的音源单位;在与第三音源单位关联的信息显示区域中,显示文字内容信息。
其中,当第三音源单位与客户端对应的第二音源单位之间的距离未超出第一预设阈值时,第三音源单位对应的音频信号需要进行音频渲染,当第三音源单位与客户端对应的第二音源单位之间的距离超出第一预设阈值时,第三音源单位对应的音频信号不进行音频渲染。
当第三音源单位与第二音源单位之间的距离超出第一预设阈值时,相对于客户端,可以不在虚拟场景中针对第三音源单位设置虚拟音源组件,那么客户端也就无法接收到第三音源单位所输出的音频信号,但是客户端对应的听众用户可以通过与上述第三音源单位相关联的信息显示区域了解第三音源单位所说的内容。
在某些可选实施例中,当听众用户通过客户端中信息显示区域了解到第三音源单位所说的内容,并对该内容表示感兴趣,该听众用户可以控制将虚拟形象移动到与第三音源单位对应的虚拟形象距离较近的位置上。这样,第三音源单位输出的音频信号就可以添加到复合音频中,听众用户就可以听到第三音源单位所说的内容。
可选地,如果听众用户想要与其他听众用户单独交流,可以向其他听众用户发送单独交流申请。如果其他听众用户同意了该申请,则客户端可以接收到单独交流同意信息。进而,如果接收到单独交流同意信息,则可以停止输出复合音频,同时输出该其他听众用户单独交流的音频信号。
可选地,可以设置虚拟音源组件对应的包围盒;基于包围盒,对音频信号进行碰撞检测,以模拟音频信号在虚拟场景中的传播过程。
可选地,模拟各音源单位对应的音频信号在虚拟场景中的物理传播过程的方式,可以包括:模拟音频信号在虚拟场景中的反射过程;和/或,模拟音频信号在虚拟场景中的衍射过程。
在本公开实施例中还提供一种优化碰撞检测过程的实现方式。可选地,该实现方式可以是:在所有包围盒中,将满足预设条件的包围盒确定为一组包围盒,得到多组包围盒;对于多组包围盒中的任一组包围盒,对任一组包围盒进行合并;基于合并后的包围盒,对各音源单位对应的音频信号进行碰撞检测。
其中,满足预设条件的包围盒例如可以是距离小于第二预设阈值的包围盒。进而,可以在所有包围盒中,将距离小于第二预设阈值的包围盒进行合并,得到合并后的包围盒。针对每个合并后的包围盒,只进行一次碰撞检测。
通过上述方式,可以使得原本需要多次进行的碰撞检测,在合并包围盒之后,只对合并后的每一个包围盒进行一次碰撞检测,进而大大减少了碰撞检测的次数,提高了音频渲染参数的计算效率。
采用本发明,可以确定各个音源单位间相对的音频渲染参数,该音频渲染参数与各个音源单位间的距离相关。在虚拟场景中与各个音源单位对应的位置上设置音源,通过相应的音频渲染参数对各个音源对应的音频信号进行音频渲染,最终形成复合音频。复合音频中参照各个音频单位的远近距离将各个音源单位对应的音频信号融合进来,能够模拟线下演唱会的复杂音频听感,从而复现线下演唱会的临场感。因此,采用本发明,可以让听众用户在线上也同样能够感受到线下演唱会的欢快氛围,提高线上演唱会的沉浸感。
本发明实施例提供一种音频渲染系统,所述系统包括服务器和客户端,其中:
所述服务器,用于获取多个音源单位对应的音频信号;获取第一音源单位相对于第二音源单位的音频渲染参数,其中,所述第二音源单位为所述多个音源单位中的任一音源单位,所述第一音源单位为所述多个音源单位中除所述第二音源单位外的音源单位;向所述第二音源单位对应的所述客户端发送所述音频渲染参数、所述第一音源单位对应的音频信号以及所述第一音源单位在虚拟场景中的位置。
所述客户端,用于接收所述服务器发送的第一音源单位相对于第二音源单位的音频渲染参数、所述第一音源单位对应的音频信号以及所述第一音源单位在虚拟场景中的位置;基于所述音频渲染参数、所述音频信号以及第一音源单位在虚拟场景中的位置,进行音频渲染,以获得复合音频;输出所述复合音频。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例提供的音频渲染方法可以由某种程序/软件来执行,该程序/ 软件可以由网络侧提供,前述实施例中提及的服务器可以将该程序/软件下载到本地的非易失性存储介质中,并在其需要执行前述音频渲染方法时,通过CPU 将该程序/软件读取到内存中,进而由CPU执行该程序/软件以实现前述实施例中所提供的音频渲染方法,执行过程可以参见前述图1至图6中的示意。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种音频渲染方法,其特征在于,应用于服务器,所述方法包括:
获取多个音源单位对应的音频信号;
获取第一音源单位相对于第二音源单位的音频渲染参数,其中,所述第二音源单位为所述多个音源单位中的任一音源单位,所述第一音源单位为所述多个音源单位中除所述第二音源单位外的音源单位;
向所述第二音源单位对应的客户端发送所述音频渲染参数、所述第一音源单位对应的音频信号以及所述第一音源单位在虚拟场景中的位置。
2.根据权利要求1所述的方法,其特征在于,所述音源单位为所述虚拟场景中设置的地图块,所述获取第一音源单位相对于第二音源单位的音频渲染参数,包括:
获取预先建立的所述虚拟场景中各地图块间相对的音频渲染参数的对应关系;
基于所述对应关系,确定第一地图块相对于第二地图块的音频渲染参数。
3.根据权利要求2所述的方法,其特征在于,所述对应关系的建立过程,包括:
根据第一音源单位以及第二音源单位各自在虚拟场景中的位置,通过模拟各音源单位对应的音频信号在所述虚拟场景中的物理传播过程,确定所述第一音源单位相对于所述第二音源单位的音频渲染参数。
4.根据权利要求3所述的方法,其特征在于,所述根据第一音源单位以及第二音源单位各自在虚拟场景中的位置,通过模拟各音源单位对应的音频信号在所述虚拟场景中的物理传播过程,确定所述第一音源单位相对于所述第二音源单位的音频渲染参数,包括:
根据第一音源单位以及第二音源单位各自在虚拟场景中的位置,确定所述第一音源单位与所述第二音源单位之间的距离;
若所述距离小于或者等于第一预设阈值,则基于各音源单位对应的音频信号的包围盒,对所述各音源单位对应的音频信号进行碰撞检测;
基于碰撞检测结果,确定所述第一音源单位相对于所述第二音源单位的音频渲染参数。
5.根据权利要求4所述的方法,其特征在于,所述基于各音源单位对应的音频信号的包围盒,对所述各音源单位对应的音频信号进行碰撞检测,包括:
在所有包围盒中,将满足预设条件的包围盒确定为一组包围盒,得到多组包围盒;
对于所述多组包围盒中的任一组包围盒,对所述任一组包围盒进行合并;
基于合并后的包围盒,对所述各音源单位对应的音频信号进行碰撞检测。
6.根据权利要求2所述的方法,其特征在于,所述地图块对应的音频信号为多个目标听众用户各自对应的音频信号的同步合并结果,所述多个目标听众用户为虚拟形象位于所述地图块中的听众用户。
7.一种音频渲染方法,其特征在于,应用于客户端,所述方法包括:
接收服务器发送的第一音源单位相对于第二音源单位的音频渲染参数、所述第一音源单位对应的音频信号以及所述第一音源单位在虚拟场景中的位置;
基于所述音频渲染参数、所述音频信号以及第一音源单位在虚拟场景中的位置,进行音频渲染,以获得复合音频;
输出所述复合音频。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
接收所述服务器发送的基于第三音源单位对应的音频信号识别出的文字内容信息;
在与所述第三音源单位关联的信息显示区域中,显示所述文字内容信息。
9.根据权利要求7所述的方法,其特征在于,所述基于所述音频渲染参数、所述音频信号以及第一音源单位在虚拟场景中的位置,进行音频渲染,包括:
在第一音源单位在虚拟场景中的位置上放置虚拟音源组件;
通过所述虚拟音源组件,渲染所述音频渲染参数和所述音频信号。
10.一种音频渲染系统,其特征在于,所述系统包括服务器和客户端,其中:
所述服务器,用于获取多个音源单位对应的音频信号;获取第一音源单位相对于第二音源单位的音频渲染参数,其中,所述第二音源单位为所述多个音源单位中的任一音源单位,所述第一音源单位为所述多个音源单位中除所述第二音源单位外的音源单位;向所述第二音源单位对应的所述客户端发送所述音频渲染参数、所述第一音源单位对应的音频信号以及所述第一音源单位在虚拟场景中的位置;
所述客户端,用于接收所述服务器发送的第一音源单位相对于第二音源单位的音频渲染参数、所述第一音源单位对应的音频信号以及所述第一音源单位在虚拟场景中的位置;基于所述音频渲染参数、所述音频信号以及第一音源单位在虚拟场景中的位置,进行音频渲染,以获得复合音频;输出所述复合音频。
CN202211374150.XA 2022-11-03 2022-11-03 音频渲染方法和系统 Pending CN117714968A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211374150.XA CN117714968A (zh) 2022-11-03 2022-11-03 音频渲染方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211374150.XA CN117714968A (zh) 2022-11-03 2022-11-03 音频渲染方法和系统

Publications (1)

Publication Number Publication Date
CN117714968A true CN117714968A (zh) 2024-03-15

Family

ID=90153928

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211374150.XA Pending CN117714968A (zh) 2022-11-03 2022-11-03 音频渲染方法和系统

Country Status (1)

Country Link
CN (1) CN117714968A (zh)

Similar Documents

Publication Publication Date Title
US7113610B1 (en) Virtual sound source positioning
EP1754393B1 (en) System and method for use in creating an audio scene
JP4745375B2 (ja) 対話型立体的オーディオビジュアル・システム
US20200372917A1 (en) Methods and Systems for Speech Presentation Based on Simulated Binaural Audio Signals
US10979842B2 (en) Methods and systems for providing a composite audio stream for an extended reality world
US11809773B2 (en) Application of geometric acoustics for immersive virtual reality (VR)
Lentz et al. Virtual reality system with integrated sound field simulation and reproduction
KR100542129B1 (ko) 객체기반 3차원 오디오 시스템 및 그 제어 방법
US10924875B2 (en) Augmented reality platform for navigable, immersive audio experience
Schütze et al. New Realities in Audio: A Practical Guide for VR, AR, MR and 360 Video.
US11082796B2 (en) Methods and systems for generating audio for an extended reality world
Andersen et al. Evaluation of individualized HRTFs in a 3D shooter game
Yeoward et al. Real-time binaural room modelling for augmented reality applications
CN117714968A (zh) 音频渲染方法和系统
CA3044260A1 (en) Augmented reality platform for navigable, immersive audio experience
US20210322880A1 (en) Audio spatialization
Thery et al. Impact of the visual rendering system on subjective auralization assessment in VR
CN112992186B (zh) 音频处理方法、装置、电子设备及存储介质
Sudarsono Soundscape composition and relationship between sound objects and soundscape dimensions of an urban area
Ibánez et al. A study on an efficient spatialisation technique for near-field sound in video games
Kojima et al. A Low Cost Method for Applying Acoustic Features to Each Sound in Virtual 3D Space Using Layered Quadtree Grids
Gutiérrez A et al. Audition
KR20230124304A (ko) 온라인 가상 공연 장치 및 방법, 온라인 가상 공연 시스템
Neidhardt et al. Multiplayer audio-only game: Pong on a massive multichannel loudspeaker system
CN116466909A (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