CN114339297B - 音频处理方法、装置、电子设备和计算机可读存储介质 - Google Patents
音频处理方法、装置、电子设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN114339297B CN114339297B CN202210221024.4A CN202210221024A CN114339297B CN 114339297 B CN114339297 B CN 114339297B CN 202210221024 A CN202210221024 A CN 202210221024A CN 114339297 B CN114339297 B CN 114339297B
- Authority
- CN
- China
- Prior art keywords
- audio data
- audio
- virtual scene
- information
- position information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Stereophonic System (AREA)
Abstract
本公开关于一种音频处理方法、装置、电子设备和计算机可读存储介质。音频处理方法包括:获取至少一个音频数据以及每个音频数据的虚拟场景位置信息,其中,所述至少一个音频数据包括由至少一个推流端推送的至少一个音频流数据,所述每个音频数据的虚拟场景位置信息指示对应音频数据在虚拟场景中的位置;基于所述每个音频数据的虚拟场景位置信息,计算对应音频数据的渲染信息,从而得到每个音频数据的渲染信息,其中,所述每个音频数据的渲染信息用于渲染对应音频数据以形成其在所述虚拟场景中的位置的空间感;基于所述至少一个音频数据以及所述每个音频数据的渲染信息,生成音频文件;将所述音频文件发送到客户端。
Description
技术领域
本公开涉及音频技术领域,更具体地说,涉及一种音频处理方法、装置、电子设备和计算机可读存储介质。
背景技术
随着互联网音视频直播的兴起,涌现出大量的音视频直播平台。为了丰富直播的内容,很多直播平台都有连麦的功能,即在同一直播平台上,两个或多个主播之间,或主播及用户之间可以通过语音连麦相互聊天。
目前互联网直播间音频连麦方式为:各主播客户端分别向服务器推流,服务器将多路直播音频流混合为一路直播音频流后通过内容分发网络(CDN, ContentDistribution Network)进行分发。由于此音频连麦方式在混流时未考虑各主播的空间位置,用户在客户端收听时,听到的各主播声音缺少空间区分度,亦无法根据个人喜好单独调整不同主播或氛围的收听效果。
发明内容
本公开提供一种音频处理方法、装置、电子设备和计算机可读存储介质,以至少解决上述相关技术中的问题,也可不解决任何上述问题。
根据本公开实施例的第一方面,提供一种音频处理方法,包括:获取至少一个音频数据以及每个音频数据的虚拟场景位置信息,其中,所述至少一个音频数据包括由至少一个推流端推送的至少一个音频流数据,所述每个音频数据的虚拟场景位置信息指示对应音频数据在虚拟场景中的位置;基于所述每个音频数据的虚拟场景位置信息,计算对应音频数据的渲染信息,从而得到每个音频数据的渲染信息,其中,所述每个音频数据的渲染信息用于渲染对应音频数据以形成其在所述虚拟场景中的位置的空间感;基于所述至少一个音频数据以及所述每个音频数据的渲染信息,生成音频文件;将所述音频文件发送到客户端。
可选地,所述获取每个音频数据对应的虚拟场景位置信息,可包括:从虚拟场景库中选择目标虚拟场景并获取所述目标虚拟场景对应的位置信息,其中,所述虚拟场景库中存储多种虚拟场景及每种虚拟场景对应的位置信息,所述每种虚拟场景对应的位置信息指示对应虚拟场景中的各音频数据与收听者之间的位置关系信息;基于所述目标虚拟场景对应的位置信息,配置所述至少一个音频数据中的每个音频数据在虚拟场景中的位置;基于每个音频数据被配置的位置,生成所述每个音频数据的虚拟场景位置信息。
可选地,所述基于每个音频数据的虚拟场景位置信息,计算对应音频数据的渲染信息,可包括:对所述每个音频数据的虚拟场景位置信息进行解析,得到球形谐波函数的线性权重系数,作为对应音频数据的渲染信息。
可选地,所述球形谐波函数的线性权重系数可为高阶高保真立体声HOA系数。
可选地,所述音频文件可为音频定义模型ADM音频文件;其中,所述基于所述至少一个音频数据以及所述每个音频数据的渲染信息,生成音频文件,可包括:将所述至少一个音频数据封装为广播波形格式BWF音频文件;对所述至少一个音频数据进行解析,生成ADM标准下的内容元数据;基于所述每个音频数据的渲染信息,生成ADM标准下的格式元数据;将所述BWF音频文件、所述内容元数据和所述格式元数据封装为ADM音频文件。
可选地,所述至少一个音频数据还可包括至少一个氛围音频数据。
可选地,音频处理方法还可包括:将所述每个音频数据的虚拟场景位置信息发送到所述客户端。
根据本公开实施例的第二方面,提供一种音频处理方法,包括:从服务器接收音频文件,其中,所述音频文件包括至少一个音频数据以及每个音频数据的渲染信息,所述至少一个音频数据包括由至少一个推流端推送的至少一个音频流数据,所述每个音频数据的渲染信息是基于每个音频数据的虚拟场景位置信息计算得到的,所述每个音频数据的虚拟场景位置信息指示对应音频数据在虚拟场景中的位置,所述每个音频数据的渲染信息用于渲染对应音频数据以形成其在所述虚拟场景中的位置的空间感;对所述音频文件进行解析,得到所述至少一个音频数据以及所述每个音频数据的渲染信息;基于所述每个音频数据的渲染信息,播放所述至少一个音频数据。
可选地,所述每个音频数据的虚拟场景位置信息可通过下述操作得到:从虚拟场景库中选择目标虚拟场景并获取所述目标虚拟场景对应的位置信息,其中,所述虚拟场景库中存储多种虚拟场景及每种虚拟场景对应的位置信息,所述每种虚拟场景对应的位置信息指示对应虚拟场景中的各音频数据与收听者之间的位置关系信息;基于所述目标虚拟场景对应的位置信息,配置所述至少一个音频数据中的每个音频数据在虚拟场景中的位置;基于每个音频数据配置的位置,得到所述每个音频数据的虚拟场景位置信息。
可选地,所述每个音频数据的渲染信息可通过下述操作计算得到:对所述每个音频数据的虚拟场景位置信息进行解析,得到球形谐波函数的线性权重系数,作为对应音频数据的渲染信息。
可选地,所述球形谐波函数的线性权重系数可为高阶高保真立体声HOA系数。
可选地,所述音频文件可为音频定义模型ADM音频文件;其中,所述音频文件可通过下述操作生成:将所述至少一个音频数据封装为广播波形格式BWF音频文件;对所述至少一个音频数据进行解析,生成ADM标准下的内容元数据;基于所述每个音频数据的渲染信息,生成ADM标准下的格式元数据;将所述BWF音频文件、所述内容元数据和所述格式元数据封装为ADM音频文件。
可选地,所述至少一个音频数据还可包括至少一个氛围音频数据。
可选地,音频处理方法还可包括:从所述服务器接收所述每个音频数据的虚拟场景位置信息;基于接收到的所述每个音频数据的虚拟场景位置信息,生成交互界面,其中,在所述交互界面中在每个音频数据对应的虚拟场景位置处显示该音频数据对应的图标。
可选地,音频处理方法还可包括:显示所述交互界面;响应于在所述交互界面上接收到第一图标的移动操作,根据第一图标对应的第一音频数据的移动后的虚拟场景位置,重新计算第一音频数据的渲染信息;基于重新计算的第一音频数据的渲染信息,播放第一音频数据。
根据本公开实施例的第三方面,提供一种音频处理装置,其特征在于,包括:数据获取单元,被配置为:获取至少一个音频数据以及每个音频数据的虚拟场景位置信息,其中,所述至少一个音频数据包括由至少一个推流端推送的至少一个音频流数据,所述每个音频数据的虚拟场景位置信息指示对应音频数据在虚拟场景中的位置;信息计算单元,被配置为:基于所述每个音频数据的虚拟场景位置信息,计算对应音频数据的渲染信息,从而得到每个音频数据的渲染信息,其中,所述每个音频数据的渲染信息用于渲染对应音频数据以形成其在所述虚拟场景中的位置的空间感;文件生成单元,被配置为:基于所述至少一个音频数据以及所述每个音频数据的渲染信息,生成音频文件;文件发送单元,被配置为:将所述音频文件发送到客户端。
可选地,数据获取单元可被配置为:从虚拟场景库中选择目标虚拟场景并获取所述目标虚拟场景对应的位置信息,其中,所述虚拟场景库中存储多种虚拟场景及每种虚拟场景对应的位置信息,所述每种虚拟场景对应的位置信息指示对应虚拟场景中的各音频数据与收听者之间的位置关系信息;基于所述目标虚拟场景对应的位置信息,配置所述至少一个音频数据中的每个音频数据在虚拟场景中的位置;基于每个音频数据被配置的位置,生成所述每个音频数据的虚拟场景位置信息。
可选地,信息计算单元可被配置为:对所述每个音频数据的虚拟场景位置信息进行解析,得到球形谐波函数的线性权重系数,作为对应音频数据的渲染信息。
可选地,所述球形谐波函数的线性权重系数可为高阶高保真立体声HOA系数。
可选地,所述音频文件可为音频定义模型ADM音频文件;其中,文件生成单元可被配置为:将所述至少一个音频数据封装为广播波形格式BWF音频文件;对所述至少一个音频数据进行解析,生成ADM标准下的内容元数据;基于所述每个音频数据的渲染信息,生成ADM标准下的格式元数据;将所述BWF音频文件、所述内容元数据和所述格式元数据封装为ADM音频文件。
可选地,所述至少一个音频数据还可包括至少一个氛围音频数据。
可选地,音频处理装置还可包括:信息发送单元,被配置为:将所述每个音频数据的虚拟场景位置信息发送到所述客户端。
根据本公开实施例的第四方面,提供一种音频处理装置,包括:文件接收单元,被配置为:从服务器接收音频文件,其中,所述音频文件包括至少一个音频数据以及每个音频数据的渲染信息,所述至少一个音频数据包括由至少一个推流端推送的至少一个音频流数据,所述每个音频数据的渲染信息是基于每个音频数据的虚拟场景位置信息计算得到的,所述每个音频数据的虚拟场景位置信息指示对应音频数据在虚拟场景中的位置,所述每个音频数据的渲染信息用于渲染对应音频数据以形成其在所述虚拟场景中的位置的空间感;文件解析单元,被配置为:对所述音频文件进行解析,得到所述至少一个音频数据以及所述每个音频数据的渲染信息;音频播放单元,被配置为:基于所述每个音频数据的渲染信息,播放所述至少一个音频数据。
可选地,所述每个音频数据的虚拟场景位置信息可通过下述操作得到:从虚拟场景库中选择目标虚拟场景并获取所述目标虚拟场景对应的位置信息,其中,所述虚拟场景库中存储多种虚拟场景及每种虚拟场景对应的位置信息,所述每种虚拟场景对应的位置信息指示对应虚拟场景中的各音频数据与收听者之间的位置关系信息;基于所述目标虚拟场景对应的位置信息,配置所述至少一个音频数据中的每个音频数据在虚拟场景中的位置;基于每个音频数据配置的位置,得到所述每个音频数据的虚拟场景位置信息。
可选地,所述每个音频数据的渲染信息可通过下述操作计算得到:对所述每个音频数据的虚拟场景位置信息进行解析,得到球形谐波函数的线性权重系数,作为对应音频数据的渲染信息。
可选地,所述球形谐波函数的线性权重系数可为高阶高保真立体声HOA系数。
可选地,所述音频文件可为音频定义模型ADM音频文件;其中,所述音频文件可通过下述操作生成:将所述至少一个音频数据封装为广播波形格式BWF音频文件;对所述至少一个音频数据进行解析,生成ADM标准下的内容元数据;基于所述每个音频数据的渲染信息,生成ADM标准下的格式元数据;将所述BWF音频文件、所述内容元数据和所述格式元数据封装为ADM音频文件。
可选地,所述至少一个音频数据还可包括至少一个氛围音频数据。
可选地,音频处理装置还可包括:信息接收单元,被配置为:从所述服务器接收所述每个音频数据的虚拟场景位置信息;界面生成单元,被配置为:基于接收到的所述每个音频数据的虚拟场景位置信息,生成交互界面,其中,在所述交互界面中在每个音频数据对应的虚拟场景位置处显示该音频数据对应的图标。
可选地,音频处理装置还可包括:界面显示单元,被配置为:显示所述交互界面;信息计算单元,被配置为:响应于在所述交互界面上接收到第一图标的移动操作,根据第一图标对应的第一音频数据的移动后的虚拟场景位置,重新计算第一音频数据的渲染信息;其中,所述音频播放单元还被配置为:基于重新计算的第一音频数据的渲染信息,播放第一音频数据。
根据本公开实施例的第五方面,提供一种电子设备,包括:至少一个处理器;至少一个存储计算机可执行指令的存储器,其中,所述计算机可执行指令在被所述至少一个处理器运行时,促使所述至少一个处理器执行根据本公开的音频处理方法。
根据本公开实施例的第六方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令被至少一个处理器运行时,促使所述至少一个处理器执行根据本公开的音频处理方法。
根据本公开实施例的第七方面,提供一种计算机程序产品,包括计算机指令,所述计算机指令被至少一个处理器执行时实现根据本公开的音频处理方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
根据本公开的音频处理方法,可通过对各音频流(例如,各主播的客户端推送的音频流)和/或氛围配置虚拟场景位置,并基于虚拟场景位置来产生渲染信息以用于在播放时对音频进行渲染,实现在不知晓收听者的客户端目标扬声器数量和位置的情况下,增加主播或氛围声音的空间区分度,为收听用户提供该虚拟场景下全景声收听体验,达到可适配个人计算机(PC, Personal Computer)端或移动端(例如,智能电话等)各类扬声器(如5.1声道或双声道或高阶立体声)或耳机的效果。
此外,根据本公开的音频处理方法,可预先建立虚拟场景库,虚拟场景库中存储有多种虚拟场景(例如,圆桌场景、讲台场景等),用户可根据直播内容或需求来选择虚拟场景,为收听者提供更符合直播内容或需求的虚拟场景下的全景声收听体验。
此外,根据本公开的音频处理方法,可将各音频流以及相应的关于虚拟场景的渲染信息封装成ADM音频文件,从而实现在ADM标准下,在PC客户端/移动客户端实现基于互联网传输的音频全景声编解码。
此外,根据本公开的音频处理方法,可在收听者的客户端根据各主播和/或氛围的虚拟场景位置生成交互界面,用户可在交互界面拖动虚拟场景下各主播或氛围的位置,从而可调整相应主播或氛围的音频的空间位置,达到对每个音源收听效果个性化实时调整的目的,从而实现根据用户自身喜好个性化调整收听体验。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是示出根据本公开的示例性实施例的音频处理方法的流程图。
图2是示出根据本公开的示例性实施例的虚拟场景的示意图。
图3是示出音频定义模型的整体结构示意图。
图4是示出根据本公开的示例性实施例的音频处理方法的流程图。
图5是示出根据本公开的示例性实施例的在PC客户端对ADM音频文件的解码流程的示意图。
图6是示出根据本公开的示例性实施例的在移动客户端对ADM音频文件的解码流程的示意图。
图7是示出根据本公开的示例性实施例的交互界面的示意图。
图8是示出根据本公开的示例性实施例的音频处理方法的具体实施流程的示意图。
图9是示出根据本公开的示例性实施例的音频处理装置的框图。
图10是示出根据本公开的示例性实施例的音频处理装置的框图。
图11是根据本公开的示例性实施例的电子设备1100的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在此需要说明的是,在本公开中出现的“若干项之中的至少一项”均表示包含“该若干项中的任意一项”、“该若干项中的任意多项的组合”、“该若干项的全体”这三类并列的情况。例如“包括A和B之中的至少一个”即包括如下三种并列的情况:(1)包括A;(2)包括B;(3)包括A和B。又例如“执行步骤一和步骤二之中的至少一个”,即表示如下三种并列的情况:(1)执行步骤一;(2)执行步骤二;(3)执行步骤一和步骤二。
目前的互联网直播音频连麦方式在混流时未考虑各主播的空间位置,混合后的音频流缺少各主播位置信息,因此,用户在客户端收听时,听到的各主播声音缺少空间区分度,无法实现沉浸式互联网直播间连麦体验,亦无法根据个人喜好单独调整不同主播或氛围的收听效果。
此外,国际电联无线电通信部门发布的ITU-R BS.2076-1 建议书中定义了音频定义模型(ADM, Audio Definition Model),描述了音频元数据模型的结构,可以准确描述音频文件的格式和内容,确保所有***的兼容性。然而,目前缺少PC客户端或移动客户端依托ADM标准传输、渲染全景声的产品体验。
为了解决上述技术问题,本公开了提出了一种音频处理方法,可通过对各音频流(例如,各主播的客户端推送的音频流)和/或氛围配置虚拟场景位置,并基于虚拟场景位置来产生渲染信息以用于在播放时对音频进行渲染,实现在不知晓收听者的客户端目标扬声器数量和位置的情况下,增加主播或氛围声音的空间区分度,为收听用户提供该虚拟场景下全景声收听体验,达到可适配PC端或移动端各类扬声器(如5.1声道或双声道或高阶立体声)或耳机的效果。此外,本公开的音频处理方法提供虚拟场景库,虚拟场景库中存储有多种虚拟场景(例如,圆桌场景、讲台场景等),用户可根据直播内容或需求来选择虚拟场景,为收听者提供该虚拟场景下的全景声收听体验。此外,本公开的音频处理方法可将各音频流以及相应的关于虚拟场景的渲染信息封装成ADM音频文件,从而实现在ADM标准下,在PC客户端/移动客户端实现基于互联网传输的音频全景声编解码。此外,本公开的音频处理方法可在收听者的客户端根据各主播和/或氛围的虚拟场景位置生成交互界面,用户可在交互界面拖动虚拟场景下各主播或氛围的位置,从而可调整相应主播或氛围的音频的空间位置,达到对每个音源收听效果个性化实时调整的目的,从而实现根据用户自身喜好个性化调整收听体验。当然,根据本公开的音频处理方法不仅可应用于直播间音频和/或视频连麦场景,还可应用于任何需要增加各音源对应音频的空间区分度的场景。下面,将参照图1至图11来详细描述根据本公开的音频处理方法和音频处理装置。
图1是示出根据本公开的示例性实施例的音频处理方法的流程图。这里,音频处理方法可应用于服务器端。例如,在直播连麦场景下,服务器端可将多个主播端推送的音频流数据或者将多个主播端推送的音频流数据和添加的各氛围音频数据封装成音频文件,通过CDN发送到各用户端或客户端。
参照图1,在步骤101,可获取至少一个音频数据以及每个音频数据的虚拟场景位置信息。这里,至少一个音频数据可包括由至少一个推流端(例如,主播端等)推送的至少一个音频流数据,每个音频数据的虚拟场景位置信息指示对应音频数据在虚拟场景中的位置。这里,音频数据在虚拟场景中的位置可指产生音频数据的音源在虚拟场景中的位置(例如,虚拟场景的平面坐标位置),音源可表示音频数据对应的发声主体。
根据本公开的示例性实施例,至少一个音频数据还可包括至少一个氛围音频数据。例如,氛围音频数据可以是从服务器端的氛围音频库中选择的直播所需的氛围音频数据。
根据本公开的示例性实施例,可从虚拟场景库中选择目标虚拟场景并获取目标虚拟场景对应的位置信息。这里,虚拟场景库可以是预先建立的存储有多种虚拟场景及每种虚拟场景对应的位置信息的数据库,每种虚拟场景对应的位置信息指示对应虚拟场景中的各音频数据与收听者之间的位置关系信息。例如,虚拟场景库可存储有“圆桌场景”、“讲台场景”等不同场景,每种虚拟场景对应不同的初始化位置数据,例如包括收听者与主播的方位角数据、仰角数据、距离数据等。图2是示出根据本公开的示例性实施例的虚拟场景的示意图。参照图2,在虚拟场景为示例性的圆桌场景的情况下,可指定收听者、各主播(例如,主播1、主播2、主播3、主播4、主播5)以及各氛围(例如,氛围a、氛围b、氛围c、氛围d)基于圆桌类型的虚拟场景的位置布局,从而可获得该虚拟场景下收听者与各主播和各氛围之间的位置关系信息,例如,但不限于,方位角数据、仰角数据、距离数据等。因此,用户可根据直播内容或需求从虚拟场景库中选择符合直播内容或需求的目标虚拟场景。例如,当前直播内容为各主播就某个主题进行讨论,类似于参与一个圆桌会议,则可选择符合圆桌会议的圆桌场景。在选择目标虚拟场景并获取目标虚拟场景对应的位置信息之后,可基于目标虚拟场景对应的位置信息,配置至少一个音频数据中的每个音频数据在虚拟场景中的位置,并基于每个音频数据被配置的位置,生成所述每个音频数据的虚拟场景位置信息。例如,至少一个音频数据包括三个主播的音频流数据以及两个氛围音频数据,目标虚拟场景为如图2所示的圆桌场景,则可从主播1、主播2、主播3、主播4、主播5中选择三个主播对应的位置,并从氛围a、氛围b、氛围c、氛围d中选择两个氛围对应的位置,并获取选择的主播和氛围对应的位置信息分别作为三个主播的音频流数据以及两个氛围音频数据的虚拟场景位置信息。
返回参照图1,在步骤102,可基于每个音频数据的虚拟场景位置信息,计算对应音频数据的渲染信息,从而得到每个音频数据的渲染信息。这里,每个音频数据的渲染信息用于渲染对应音频数据以形成其在虚拟场景中的位置的空间感。
根据本公开的示例性实施例,在基于场景的音频实现方式下,可由一组系数信号来代表内容的音频呈现方式。这些系数信号是空间正交基函数(如球形或圆形谐波函数)的线性权重。可通过将这些系数信号提供至目标扬声器或耳机,对场景进行重现。因此,可对每个音频数据的虚拟场景位置信息进行解析,得到球形谐波函数的线性权重系数,作为对应音频数据的渲染信息。
根据本公开的示例性实施例,球形谐波函数的线性权重系数可为,但不限于,高阶高保真立体声(HOA, Higher Order Ambisonics)系数。具体地说,在三维空间中,声音作为压力波传递,在给定时间内的声音场景中,每个点都通过数个压力函数来表现,如果在任何时候都知道该空间中每个点的压力值,就可完美重现这个空间中的声音。HOA系数用基于球面谐波变换的高阶精度系数来表示三维空间所有点的压力值。由于空间中每个点的压力都和其邻近的点有关,所以可以在声场中通过麦克风阵列全方位收集声音,并通过数学运算来推导上述系数。一旦通过HOA 系数得出了三维空间中的声音系数,仅需通过现有声道创建一个由声音对象生成的声场就可还原声音。
在步骤103,可基于至少一个音频数据以及每个音频数据的渲染信息,生成音频文件。
根据本公开的示例性实施例,可在ADM标准下,基于至少一个音频数据以及每个音频数据的渲染信息,生成ADM音频文件。这里,ADM由一组元素组成,元素用于描述音频的各个方面。每个元素由一个XML 元素表示,包含各种属性和子元素。这些元素通过引用相互连接,但音频块格式除外。
图3是示出音频定义模型的整体结构示意图。
参照图3,ADM音频文件可包括BWF文件、内容和格式三个部分。内容和格式部分组成了音频定义模型元数据,通常包含在BW64文件中的一个块(“axml”块)中。BWF文件部分包含“chna”块,这是一个连接音频定义模型元数据和文件中音轨的查找表。内容部分描述音频的技术内容,如对话、语言以及响度等元数据。格式部分描述音轨声道类型以及它们是如何组合在一起的,如立体声中的左声道和右声道。内容部分的元素通常对音频和节目而言是唯一的,而格式部分的元素可以重用。
在格式部分中,音频包格式将一个或多个属于同一组的音频声道格式组合在一起。这在渲染音频时至关重要,因为组内的声道可能需要相互交互。允许音频声道格式描述动态声道,即随时间以某种方式变化的声道。它使用音频块格式沿时间轴划分声道。音频块格式元素包含开始时间和持续时间。音频块格式中有描述声道的时间相关参数,而这些参数取决于音频声道格式类型。例如,基于对象类型的声道有子元素“方位角”“仰角”和“距离”来描述声音的位置。音频块格式的数量和持续时间不受限制,如果某样东西移动很快,每个样本可能会有一个音频块格式;而静态声道将只有一个包含声道参数的音频块格式。音频声道格式是对单个音频波形的描述。在音频声道格式中,有一个类型定义属性,用于定义声道的类型。类型定义属性可以设置为直接扬声器、HOA、矩阵、对象或双耳。这些类型中的每一种都有一组不同的子元素来指定与音频声道格式类型相关联的静态参数。例如,直接扬声器类型的声道具有子元素扬声器标签,用于为声道分配扬声器。音频流格式由一个或多个音频轨道格式组成。在音频流格式中,会有一个描述音频流的音频声道格式或音频包格式的引用。音频轨道格式包含音频流格式标识,用于识别音频轨道格式和音频流格式。
在内容部分中,音频对象用于确定音频轨道的组合和它们在文件中的位置。它将实际的音频数据与格式联系起来,是音频轨道唯一标识的来源。对于立体声,音频对象格式将包含两个音频轨道唯一标识,因此这两个轨道将包含立体声音频。它包含对音频包格式的引用。音频包格式将这两个音频轨道格式定义为立体声对。
根据本公开的示例性实施例,可将至少一个音频数据封装为广播波形格式(BWF,Broadcast Waveform Format)音频文件;对至少一个音频数据进行解析,生成ADM标准下的内容元数据;基于每个音频数据的渲染信息,生成ADM标准下的格式元数据;将BWF音频文件、内容元数据和格式元数据封装为ADM音频文件。
返回参照图1,在步骤104,可将音频文件发送到客户端。
根据本公开的示例性实施例,可将音频文件推送至CDN,CDN将音频文件分发至靠近终端用户的加速节点,使用户可以就近获得所需的内容,提高用户访问的响应速度和成功率,PC客户端或移动客户端通过各CDN节点接收音频文件。
根据本公开的示例性实施例,还可将至少一个音频数据的每个音频数据的虚拟场景位置信息发送到客户端,以用于在客户端生成交互界面,使得用户可在交互界面中调整各音频数据的虚拟场景位置,实时调整各音频数据的音源空间位置,从而向用户提供个性化调整音源收听效果的体验。这将在稍后具体描述。
图4是示出根据本公开的示例性实施例的音频处理方法的流程图。这里,音频处理方法可应用于客户端(也可称为用户端)。例如,在直播连麦场景下,客户端通过CDN接收由服务器端下发的音频文件,其中,音频文件是由服务器端将多个主播端推送的音频流数据或者将多个主播端推送的音频流数据和添加的各氛围音频数据封装而成的。
参照图4,在步骤401,可从服务器接收音频文件。例如,音频文件可由服务器推送至CDN,并且客户端可通过CDN接收音频文件。这里,音频文件包括至少一个音频数据以及每个音频数据的渲染信息,至少一个音频数据包括由至少一个推流端推送的至少一个音频流数据,每个音频数据的渲染信息是基于每个音频数据的虚拟场景位置信息计算得到的,每个音频数据的虚拟场景位置信息指示对应音频数据在虚拟场景中的位置,每个音频数据的渲染信息用于渲染对应音频数据以形成其在虚拟场景中的位置的空间感。
根据本公开的示例性实施例,至少一个音频数据还可包括至少一个氛围音频数据。例如,氛围音频数据可以是由服务器端从服务器端的氛围音频库中选择的直播所需的氛围音频数据。
根据本公开的示例性实施例,每个音频数据的虚拟场景位置信息可在服务器端通过下述操作得到:从虚拟场景库中选择目标虚拟场景并获取目标虚拟场景对应的位置信息,其中,虚拟场景库中存储多种虚拟场景及每种虚拟场景对应的位置信息,每种虚拟场景对应的位置信息指示对应虚拟场景中的各音频数据与收听者之间的位置关系信息;基于目标虚拟场景对应的位置信息,配置至少一个音频数据中的每个音频数据在虚拟场景中的位置;基于每个音频数据配置的位置,得到每个音频数据的虚拟场景位置信息。
根据本公开的示例性实施例,每个音频数据的渲染信息可在服务器端通过下述操作计算得到:对对应音频数据的虚拟场景位置信息进行解析,得到球形谐波函数的线性权重系数,作为对应音频数据的渲染信息。例如,球形谐波函数的线性权重系数可为高阶高保真立体声HOA系数。
根据本公开的示例性实施例,音频文件可为ADM音频文件。在ADM音频文件的情况下,音频文件可在服务器端通过下述操作生成:将至少一个音频数据封装为BWF音频文件;对至少一个音频数据进行解析,生成ADM标准下的内容元数据;基于每个音频数据的渲染信息,生成ADM标准下的格式元数据;将BWF音频文件、内容元数据和格式元数据封装为ADM音频文件。
在步骤402,对音频文件进行解析,得到至少一个音频数据以及每个音频数据的渲染信息。
在步骤403,可基于每个音频数据对应的渲染信息,播放至少一个音频数据。例如,可将每个音频数据对应的渲染信息提供至客户端声卡(在ADM音频文件下,可将ADM音频文件中的格式元数据提供至客户端声卡)来对对应音频数据进行渲染,从而在播放至少一个音频数据的同时对虚拟场景进行重现。因此,无论客户端的目标扬声器的数量和位置如何,都可增加各主播或氛围声音的空间区分度,为用户提供该虚拟场景下全景声收听体验。这里,客户端可包括PC客户端和移动客户端。
图5是示出根据本公开的示例性实施例的在PC客户端对ADM音频文件的解码流程的示意图。
参照图5,PC客户端内的微处理器(MCU)中的ADM渲染程序首先读取 ADM音频文件,然后对 ADM音频文件进行解析和解码,再根据 ADM音频文件描述实现每个音频对象(即,音频数据)的数字音频信号还原和混合,并编码成数字音频流(例如,杜比AC3(Dolby AC3)数字音频流)。然后通过集成电路内置音频总线(I2S, Inter-IC Sound)接口输出到数字声卡(例如,DAC声卡),并通过数字声卡的数字音频传输接口(例如,S/PDIF(Sony/PhilipsDigital Interface Format)接口)将编码后的音频信号(例如,杜比AC3音频信号)发送到解码器(例如,杜比AC3(Dolby AC3)解码器),由解码器解码并通过输出接口(例如,RAC接口)输出到外接立体声音箱(例如,但不限于,5.1声道(包括FL声道、FR声道、CEN声道、SL声道、SR声道))。
图6是示出根据本公开的示例性实施例的在移动客户端对ADM音频文件的解码流程的示意图。
参照图6,移动客户端内的ADM渲染程序首先读取ADM音频文件,然后对ADM音频文件进行解析和解码,再根据ADM音频文件描述实现每个音频对象的数字音频信号还原和混合,并编码成数字音频流(例如,WAV格式数字音频流)。然后输出至移动客户端内的虚拟声卡,虚拟声卡将数字音频流解码后输出到移动客户端设备的扬声器或耳机(例如,但不限于,包括左声道(L)和右声道(R))。
根据本公开的示例性实施例,客户端还可从服务器接收每个音频数据的虚拟场景位置信息,并基于接收到的每个音频数据的虚拟场景位置信息,生成交互界面,其中,在交互界面中在每个音频数据对应的虚拟场景位置处显示该音频数据对应的图标。图7是示出根据本公开的示例性实施例的交互界面的示意图。参照图7,交互界面中示出虚拟场景布局示意图,其中,虚拟场景布局示意图的中心圆点表示虚拟场景的中心位置,多个音频数据可包括Hamasaki_FL、Hamasaki_FR、Main_C、Main_L、Main_R、Viola、Cello、Cembalo、Violine、Main_LS、Main_RS、Hamasaki_BL、Hamasaki_BR,这些音频数据(或其音源)对应的图标(即,图7中的扬声器形状图标和对应音频数据的名称)分别显示在其对应的虚拟场景位置处。此外,交互界面还可包括一些可由用户操作的用于控制音频文件的播放的功能性按钮,例如,但不限于,播放音频文件的按钮、暂停播放音频文件的按钮、选择音频文件播放场景(例如,scenes/debo、scenes/romeo)的按钮等。
根据本公开的示例性实施例,可显示交互界面,响应于在交互界面上接收到第一图标(例如,图7中的Main_C的图标)的移动操作,根据第一图标对应的第一音频数据(例如,图7中的Main_C)的移动后的虚拟场景位置,重新计算第一音频数据的渲染信息,基于重新计算的第一音频数据的渲染信息,播放第一音频数据。例如,用户可将喜爱的主播或氛围向自己“拉近”,将不喜爱的主播或氛围“拉远”,将一个主播置于自己左侧,将另一个主播置于自己右侧,等等,从而实现根据自身喜好个性化调整收听体验。
根据本公开的示例性实施例,客户端接收到从服务器端下发的ADM音频文件,并对ADM音频文件进行解析并开始播放。另一方面,客户端调用服务器端的应用程序接口(API),服务器端通过API接口将ADM音频文件中的每个音频数据的虚拟场景位置信息(包括收听者与各音频数据之间的方位角数据、仰角数据、距离数据等)通过CDN下发到客户端,客户端在接收到每个音频数据的虚拟场景位置信息后,将每个音频数据的虚拟场景位置信息计算成ADM标准下格式元数据,保存在客户端本地。当客户端不打开交互界面时,客户端正常播放由CDN下发的ADM音频文件。当客户端打开交互界面时,保存在本地的格式元数据就会替换播放器即将读取的由CDN下发的格式元数据(当交互界面打开后,播放器在播放时实时不停的读取格式元数据)。当客户端在交互界面上拖动某音源的图标时,该音源的虚拟场景位置信息实时变化,将该音频的虚拟场景位置信息换算成的格式元数据也实时变化,形成播放效果实时变化。
图8是示出根据本公开的示例性实施例的音频处理方法的具体实施流程的示意图。在图8的具体实施过程中,涉及主播客户端(称为主播端)、服务器端、用户端的三端交互。多个主播端将直播流推送到服务器端,服务器端将接收到的多个直播流以及其它相关数据(例如,氛围数据、直播间背景、主播头像、广告位等等)通过CDN下发到用户端。服务器端可包括混流服务器集群和直播间管理后台。下面,将参照图8详细介绍根据本公开的示例性实施例的音频处理方法的具体实施流程。
参照图8,主播端(例如,主播1、主播2、主播3、主播4、主播5)的拾音功能将各主播的语音进行拾取,经过采样、量化、编码处理,形成数字音频流文件,推送至混流服务器集群。
直播间管理后台创建直播间,选择所需的氛围音频文件,从虚拟场景库选择虚拟场景,配置主播及氛围位置,并得到主播及氛围的虚拟场景位置信息。直播间管理后台以API接口形式将直播所需的氛围音频文件也推送至混流服务器集群。直播间管理后台以API接口形式将主播及氛围的虚拟场景位置信息提供给虚拟场景解析服务。此外,直播间管理后台通过API接口将主播及氛围的虚拟场景位置信息推送至用于素材分发的CDN,并通过用于素材分发的CDN下发至各用户端。
混流服务器集群的BWF音频封装服务将多路主播端推送的音频流以及氛围音频文件封装成为多声道的BWF格式音频文件,提供给混流服务器集群的ADM封装服务。混流服务器集群的音频解析服务对多路音频流以及氛围音频文件进行音频解析,生成ADM标准下的内容元数据,提供给混流服务器集群的ADM封装服务。
直播间管理后台从虚拟场景库选择虚拟场景,配置主播及氛围位置,并得到主播及氛围的虚拟场景位置信息。直播间管理后台以API接口形式将主播及氛围的虚拟场景位置信息提供给虚拟场景解析服务。虚拟场景解析服务将主播及氛围的虚拟场景位置信息进行解析,形成球形谐波函数的线性权重,例如,HOA权重系数,作为ADM标准下的格式元数据,提供给混流服务器集群的ADM封装服务。
混流服务器集群的ADM封装服务将BWF格式音频文件、ADM标准下的内容元数据和ADM标准下的格式元数据进行ADM标准封装,形成ADM音频文件(即,含chna块的BWF音频文件)。
混流服务器集群的推流服务将封装好的ADM音频文件推送至用于音频分发的CDN,CDN将ADM音频文件分发至靠近用户端的加速节点,使用户端可以就近获得所需的内容,提高用户访问的响应速度和成功率,例如,PC客户端或移动客户端通过各CDN节点接收ADM音频文件。
用户端对ADM音频文件进行解析、解码、渲染、播放,其中,可将ADM音频文件中的格式元数据提供至声卡,从而对虚拟场景进行重现。此外,用户端还可基于从服务器端接收的各主播及氛围的虚拟场景位置信息,计算并保存格式元数据,并生成交互界面,在该交互界面中,在各主播及氛围的虚拟场景位置显示对应主播或氛围的图标。用户可在该交互界面中拖动各主播或氛围的虚拟场景位置,通过拖动操作,实时改变被拖动的各主播或氛围的虚拟场景位置,实时计算被拖动的各主播或氛围的格式元数据,并将实时计算的被拖动的各主播或氛围的格式元数据提供给声卡,从而向用户提供对各主播或氛围的收听效果个性化实时调整的体验。
图9是示出根据本公开的示例性实施例的音频处理装置的框图。图9中示出的根据本公开的示例性实施例的音频处理装置900可应用于服务器端。
参照图9,根据本公开的示例性实施例的音频处理装置900可包括数据获取单元901、信息计算单元902、文件生成单元903和文件发送单元904。
数据获取单元901可获取至少一个音频数据以及每个音频数据的虚拟场景位置信息。这里,至少一个音频数据可包括由至少一个推流端(例如,主播端等)推送的至少一个音频流数据,每个音频数据的虚拟场景位置信息指示对应音频数据在虚拟场景中的位置。这里,音频数据在虚拟场景中的位置可指产生音频数据的音源在虚拟场景中的位置(例如,虚拟场景的平面坐标位置),音源可表示音频数据对应的发声主体。
根据本公开的示例性实施例,至少一个音频数据还可包括至少一个氛围音频数据。例如,氛围音频数据可以是从服务器端的氛围音频库中选择的直播所需的氛围音频数据。
根据本公开的示例性实施例,数据获取单元901可从虚拟场景库中选择目标虚拟场景并获取目标虚拟场景对应的位置信息。这里,虚拟场景库可以是预先建立的存储有多种虚拟场景及每种虚拟场景对应的位置信息的数据库,每种虚拟场景对应的位置信息指示对应虚拟场景中的各音频数据与收听者之间的位置关系信息。例如,虚拟场景库可存储有“圆桌场景”、“讲台场景”等不同场景,每种虚拟场景对应不同的初始化位置数据,例如包括收听者与主播的方位角数据、仰角数据、距离数据等。在选择目标虚拟场景并获取目标虚拟场景对应的位置信息之后,数据获取单元901可基于目标虚拟场景对应的位置信息,配置至少一个音频数据中的每个音频数据在虚拟场景中的位置,并基于每个音频数据被配置的位置,生成所述每个音频数据的虚拟场景位置信息。
信息计算单元902可基于每个音频数据的虚拟场景位置信息,计算对应音频数据的渲染信息,从而得到每个音频数据的渲染信息。这里,每个音频数据的渲染信息用于渲染对应音频数据以形成其在虚拟场景中的位置的空间感。
根据本公开的示例性实施例,信息计算单元902可对每个音频数据的虚拟场景位置信息进行解析,得到球形谐波函数的线性权重系数,作为对应音频数据的渲染信息。
根据本公开的示例性实施例,球形谐波函数的线性权重系数可为,但不限于,高阶高保真立体声HOA(Higher Order Ambisonics)系数。
文件生成单元903可基于至少一个音频数据以及每个音频数据的渲染信息,生成音频文件。
根据本公开的示例性实施例,文件生成单元903可在ADM标准下,基于至少一个音频数据以及每个音频数据的渲染信息,生成ADM音频文件。根据本公开的示例性实施例,文件生成单元903可将至少一个音频数据封装为广播波形格式BWF音频文件;对至少一个音频数据进行解析,生成ADM标准下的内容元数据;基于每个音频数据的渲染信息,生成ADM标准下的格式元数据;将BWF音频文件、内容元数据和格式元数据封装为ADM音频文件。
文件发送单元904可将音频文件发送到客户端。根据本公开的示例性实施例,文件发送单元904可将音频文件推送至CDN,CDN将音频文件分发至靠近终端用户的加速节点,使用户可以就近获得所需的内容,提高用户访问的响应速度和成功率,PC客户端或移动客户端通过各CDN节点接收音频文件。
根据本公开的示例性实施例,音频处理装置900还可包括信息发送单元(未示出),信息发送单元可将至少一个音频数据的每个音频数据的虚拟场景位置信息发送到客户端,以用于在客户端生成交互界面,使得用户可在交互界面中调整各音频数据的虚拟场景位置,实时调整各音频数据的音源空间位置,从而向用户提供个性化调整音源收听效果的体验。
图10是示出根据本公开的示例性实施例的音频处理装置的框图。图10示出的根据本公开的示例性实施例的音频处理装置1000可应用于客户端(也可称为用户端)。
参照图10,根据本公开的示例性实施例的音频处理装置1000可包括文件接收单元1001、文件解析单元1002和音频播放单元1003。
文件接收单元1001可从服务器接收音频文件。例如,音频文件可由服务器推送至CDN,并且客户端可通过CDN接收音频文件。这里,音频文件包括至少一个音频数据以及每个音频数据的渲染信息,至少一个音频数据包括由至少一个推流端推送的至少一个音频流数据,每个音频数据的渲染信息是基于每个音频数据的虚拟场景位置信息计算得到的,每个音频数据的虚拟场景位置信息指示对应音频数据在虚拟场景中的位置,每个音频数据的渲染信息用于渲染对应音频数据以形成其在虚拟场景中的位置的空间感。
根据本公开的示例性实施例,至少一个音频数据还可包括至少一个氛围音频数据。例如,氛围音频数据可以是由服务器端从服务器端的氛围音频库中选择的直播所需的氛围音频数据。
根据本公开的示例性实施例,每个音频数据的虚拟场景位置信息可在服务器端通过下述操作得到:从虚拟场景库中选择目标虚拟场景并获取目标虚拟场景对应的位置信息,其中,虚拟场景库中存储多种虚拟场景及每种虚拟场景对应的位置信息,每种虚拟场景对应的位置信息指示对应虚拟场景中的各音频数据与收听者之间的位置关系信息;基于目标虚拟场景对应的位置信息,配置至少一个音频数据中的每个音频数据在虚拟场景中的位置;基于每个音频数据配置的位置,得到每个音频数据的虚拟场景位置信息。
根据本公开的示例性实施例,每个音频数据的渲染信息可在服务器端通过下述操作计算得到:对对应音频数据的虚拟场景位置信息进行解析,得到球形谐波函数的线性权重系数,作为对应音频数据的渲染信息。例如,球形谐波函数的线性权重系数可为高阶高保真立体声HOA系数。
根据本公开的示例性实施例,音频文件可为ADM音频文件。在ADM音频文件的情况下,音频文件可在服务器端通过下述操作生成:将至少一个音频数据封装为BWF音频文件;对至少一个音频数据进行解析,生成ADM标准下的内容元数据;基于每个音频数据的渲染信息,生成ADM标准下的格式元数据;将BWF音频文件、内容元数据和格式元数据封装为ADM音频文件。
文件解析单元1002可对音频文件进行解析,得到至少一个音频数据以及每个音频数据的渲染信息。
音频播放单元1003可基于每个音频数据对应的渲染信息,播放至少一个音频数据。例如,音频播放单元1003可将每个音频数据对应的渲染信息提供至客户端声卡(在ADM音频文件下,可将ADM音频文件中的格式元数据提供至客户端声卡)来对对应音频数据进行渲染,从而在播放至少一个音频数据的同时对虚拟场景进行重现。
根据本公开的示例性实施例,根据本公开的示例性实施例的音频处理装置1000还可包括信息接收单元(未示出)和界面生成单元(未示出)。信息接收单元可从服务器接收每个音频数据的虚拟场景位置信息,界面生成单元基于接收到的每个音频数据的虚拟场景位置信息,生成交互界面,其中,在交互界面中在每个音频数据对应的虚拟场景位置处显示该音频数据对应的图标。
根据本公开的示例性实施例,根据本公开的示例性实施例的音频处理装置1000还可包括界面显示单元(未示出)和信息计算单元(未示出)。界面显示单元可显示交互界面。响应于在交互界面上接收到第一图标的移动操作,信息计算单元根据第一图标对应的第一音频数据的移动后的虚拟场景位置,重新计算第一音频数据的渲染信息,基于重新计算的第一音频数据的渲染信息,播放第一音频数据。
图11是根据本公开的示例性实施例的电子设备1100的框图。
参照图11,电子设备1100包括至少一个存储器1101和至少一个处理器1102,所述至少一个存储器1101中存储有计算机可执行指令集合,当计算机可执行指令集合被至少一个处理器1102执行时,执行根据本公开的示例性实施例的音频处理方法。
作为示例,电子设备1100可以是PC计算机、平板装置、个人数字助理、智能手机、或其他能够执行上述指令集合的装置。这里,电子设备1100并非必须是单个的电子设备,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。电子设备1100还可以是集成控制***或***管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子设备。
在电子设备1100中,处理器1102可包括中央处理器(CPU)、图形处理器(GPU)、可编程逻辑装置、专用处理器***、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
处理器1102可运行存储在存储器1101中的指令或代码,其中,存储器1101还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,网络接口装置可采用任何已知的传输协议。
存储器1101可与处理器1102集成为一体,例如,将RAM或闪存布置在集成电路微处理器等之内。此外,存储器1101可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库***可使用的其他存储装置。存储器1101和处理器1102可在操作上进行耦合,或者可例如通过I/O端口、网络连接等互相通信,使得处理器1102能够读取存储在存储器中的文件。
此外,电子设备1100还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。电子设备1100的所有组件可经由总线和/或网络而彼此连接。
根据本公开的示例性实施例,还可提供一种存储指令的计算机可读存储介质,其中,当指令被至少一个处理器运行时,促使至少一个处理器执行根据本公开的音频处理方法。这里的计算机可读存储介质的示例包括:只读存储器(ROM)、随机存取可编程只读存储器(PROM)、电可擦除可编程只读存储器(EEPROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、闪存、非易失性存储器、CD-ROM、CD-R、CD+R、CD-RW、CD+RW、DVD-ROM、DVD-R、DVD+R、DVD-RW、DVD+RW、DVD-RAM、BD-ROM、BD-R、BD-R LTH、BD-RE、蓝光或光盘存储器、硬盘驱动器(HDD)、固态硬盘(SSD)、卡式存储器(诸如,多媒体卡、安全数字(SD)卡或极速数字(XD)卡)、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,所述任何其他装置被配置为以非暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将所述计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行所述计算机程序。上述计算机可读存储介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,此外,在一个示例中,计算机程序以及任何相关联的数据、数据文件和数据结构分布在联网的计算机***上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。
根据本公开的示例性实施例,还可提供一种计算机程序产品,该计算机程序产品中的指令可由计算机设备的处理器执行以完成根据本公开的示例性实施例的音频处理方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (26)
1.一种音频处理方法,应用于服务器端,其特征在于,包括:
获取至少一个音频数据以及每个音频数据的虚拟场景位置信息,其中,所述至少一个音频数据包括由至少一个推流端推送的至少一个音频流数据,所述每个音频数据的虚拟场景位置信息指示对应音频数据在虚拟场景中的位置,并根据从虚拟场景库中选择的目标虚拟场景的位置信息确定,其中,所述位置信息指示对应虚拟场景中的各音频数据与收听者之间的位置关系信息,所述位置关系信息包括各音频数据与收听者之间的方位角数据、仰角数据和距离数据;
基于所述每个音频数据的虚拟场景位置信息,计算对应音频数据的渲染信息,从而得到每个音频数据的渲染信息,其中,所述每个音频数据的渲染信息用于渲染对应音频数据以形成其在所述虚拟场景中的位置的空间感;
将所述至少一个音频数据以及所述每个音频数据的渲染信息封装成音频文件;
将所述音频文件发送到客户端;
将所述每个音频数据的虚拟场景位置信息发送到所述客户端,其中,所述虚拟场景位置信息用于在所述客户端生成并显示交互界面,其中,在所述交互界面中在每个音频数据对应的虚拟场景位置处显示该音频数据对应的图标,所述客户端在所述交互界面上接收到针对第一图标的移动操作,根据第一图标对应的第一音频数据的移动后的虚拟场景位置,重新计算第一音频数据的渲染信息,并基于重新计算的第一音频数据的渲染信息,播放第一音频数据。
2.如权利要求1所述的音频处理方法,其特征在于,所述获取每个音频数据对应的虚拟场景位置信息,包括:
从所述虚拟场景库中选择所述目标虚拟场景并获取所述目标虚拟场景对应的所述位置信息,其中,所述虚拟场景库中存储多种虚拟场景及每种虚拟场景对应的位置信息;
基于所述目标虚拟场景对应的位置信息,配置所述至少一个音频数据中的每个音频数据在虚拟场景中的位置;
基于每个音频数据被配置的位置,生成所述每个音频数据的虚拟场景位置信息。
3.如权利要求1所述的音频处理方法,其特征在于,所述基于每个音频数据的虚拟场景位置信息,计算对应音频数据的渲染信息,包括:
对所述每个音频数据的虚拟场景位置信息进行解析,得到球形谐波函数的线性权重系数,作为对应音频数据的渲染信息。
4.如权利要求3所述的音频处理方法,其特征在于,所述球形谐波函数的线性权重系数为高阶高保真立体声HOA系数。
5.如权利要求1所述的音频处理方法,其特征在于,所述音频文件为音频定义模型ADM音频文件;
其中,所述将所述至少一个音频数据以及所述每个音频数据的渲染信息封装成音频文件,包括:
将所述至少一个音频数据封装为广播波形格式BWF音频文件;
对所述至少一个音频数据进行解析,生成ADM标准下的内容元数据;
基于所述每个音频数据的渲染信息,生成ADM标准下的格式元数据;
将所述BWF音频文件、所述内容元数据和所述格式元数据封装为ADM音频文件。
6.如权利要求1所述的音频处理方法,其特征在于,所述至少一个音频数据还包括至少一个氛围音频数据。
7.一种音频处理方法,应用于客户端,其特征在于,包括:
从服务器接收音频文件,其中,所述音频文件包括至少一个音频数据以及每个音频数据的渲染信息,所述至少一个音频数据包括由至少一个推流端推送的至少一个音频流数据,所述每个音频数据的渲染信息是基于每个音频数据的虚拟场景位置信息计算得到的,所述每个音频数据的虚拟场景位置信息指示对应音频数据在虚拟场景中的位置,所述每个音频数据的渲染信息用于渲染对应音频数据以形成其在所述虚拟场景中的位置的空间感,所述每个音频数据的虚拟场景位置信息是根据在所述服务器从虚拟场景库中选择的目标虚拟场景的位置信息确定的,其中,所述位置信息指示对应虚拟场景中的各音频数据与收听者之间的位置关系信息,所述位置关系信息包括各音频数据与收听者之间的方位角数据、仰角数据和距离数据;
从所述服务器接收所述每个音频数据的虚拟场景位置信息;
对所述音频文件进行解析,得到所述至少一个音频数据以及所述每个音频数据的渲染信息;
基于所述每个音频数据的渲染信息,播放所述至少一个音频数据;
基于接收到的所述每个音频数据的虚拟场景位置信息,生成交互界面,其中,在所述交互界面中在每个音频数据对应的虚拟场景位置处显示该音频数据对应的图标;
显示所述交互界面;
响应于在所述交互界面上接收到第一图标的移动操作,根据第一图标对应的第一音频数据的移动后的虚拟场景位置,重新计算第一音频数据的渲染信息;
基于重新计算的第一音频数据的渲染信息,播放第一音频数据。
8.如权利要求7所述的音频处理方法,其特征在于,所述每个音频数据的虚拟场景位置信息是通过下述操作得到的:
从所述虚拟场景库中选择所述目标虚拟场景并获取所述目标虚拟场景对应的所述位置信息,其中,所述虚拟场景库中存储多种虚拟场景及每种虚拟场景对应的位置信息;
基于所述目标虚拟场景对应的位置信息,配置所述至少一个音频数据中的每个音频数据在虚拟场景中的位置;
基于每个音频数据配置的位置,得到所述每个音频数据的虚拟场景位置信息。
9.如权利要求8所述的音频处理方法,其特征在于,所述每个音频数据的渲染信息是通过下述操作计算得到的:
对所述每个音频数据的虚拟场景位置信息进行解析,得到球形谐波函数的线性权重系数,作为对应音频数据的渲染信息。
10.如权利要求9所述的音频处理方法,其特征在于,所述球形谐波函数的线性权重系数为高阶高保真立体声HOA系数。
11.如权利要求8所述的音频处理方法,其特征在于,所述音频文件为音频定义模型ADM音频文件;
其中,所述音频文件是通过下述操作生成的:
将所述至少一个音频数据封装为广播波形格式BWF音频文件;
对所述至少一个音频数据进行解析,生成ADM标准下的内容元数据;
基于所述每个音频数据的渲染信息,生成ADM标准下的格式元数据;
将所述BWF音频文件、所述内容元数据和所述格式元数据封装为ADM音频文件。
12.如权利要求8所述的音频处理方法,其特征在于,所述至少一个音频数据还包括至少一个氛围音频数据。
13.一种音频处理装置,应用于服务器端,其特征在于,包括:
数据获取单元,被配置为:获取至少一个音频数据以及每个音频数据的虚拟场景位置信息,其中,所述至少一个音频数据包括由至少一个推流端推送的至少一个音频流数据,所述每个音频数据的虚拟场景位置信息指示对应音频数据在虚拟场景中的位置,并根据从虚拟场景库中选择的目标虚拟场景的位置信息确定,其中,所述位置信息指示对应虚拟场景中的各音频数据与收听者之间的位置关系信息,所述位置关系信息包括各音频数据与收听者之间的方位角数据、仰角数据和距离数据;
信息计算单元,被配置为:基于所述每个音频数据的虚拟场景位置信息,计算对应音频数据的渲染信息,从而得到每个音频数据的渲染信息,其中,所述每个音频数据的渲染信息用于渲染对应音频数据以形成其在所述虚拟场景中的位置的空间感;
文件生成单元,被配置为:将所述至少一个音频数据以及所述每个音频数据的渲染信息封装成音频文件;
文件发送单元,被配置为:将所述音频文件发送到客户端;
信息发送单元,被配置为:将所述每个音频数据的虚拟场景位置信息发送到所述客户端,其中,所述虚拟场景位置信息用于在所述客户端生成并显示交互界面,其中,在所述交互界面中在每个音频数据对应的虚拟场景位置处显示该音频数据对应的图标,所述客户端在所述交互界面上接收到针对第一图标的移动操作,根据第一图标对应的第一音频数据的移动后的虚拟场景位置,重新计算第一音频数据的渲染信息,并基于重新计算的第一音频数据的渲染信息,播放第一音频数据。
14.如权利要求13所述的音频处理装置,其特征在于,数据获取单元被配置为:
从所述虚拟场景库中选择所述目标虚拟场景并获取所述目标虚拟场景对应的所述位置信息,其中,所述虚拟场景库中存储多种虚拟场景及每种虚拟场景对应的位置信息;
基于所述目标虚拟场景对应的位置信息,配置所述至少一个音频数据中的每个音频数据在虚拟场景中的位置;
基于每个音频数据被配置的位置,生成所述每个音频数据的虚拟场景位置信息。
15.如权利要求13所述的音频处理装置,其特征在于,信息计算单元被配置为:
对所述每个音频数据的虚拟场景位置信息进行解析,得到球形谐波函数的线性权重系数,作为对应音频数据的渲染信息。
16.如权利要求15所述的音频处理装置,其特征在于,所述球形谐波函数的线性权重系数为高阶高保真立体声HOA系数。
17.如权利要求13所述的音频处理装置,其特征在于,所述音频文件为音频定义模型ADM音频文件;
其中,文件生成单元被配置为:
将所述至少一个音频数据封装为广播波形格式BWF音频文件;
对所述至少一个音频数据进行解析,生成ADM标准下的内容元数据;
基于所述每个音频数据的渲染信息,生成ADM标准下的格式元数据;
将所述BWF音频文件、所述内容元数据和所述格式元数据封装为ADM音频文件。
18.如权利要求13所述的音频处理装置,其特征在于,所述至少一个音频数据还包括至少一个氛围音频数据。
19.一种音频处理装置,应用于客户端,其特征在于,包括:
文件接收单元,被配置为:从服务器接收音频文件,其中,所述音频文件包括至少一个音频数据以及每个音频数据的渲染信息,所述至少一个音频数据包括由至少一个推流端推送的至少一个音频流数据,所述每个音频数据的渲染信息是基于每个音频数据的虚拟场景位置信息计算得到的,所述每个音频数据的虚拟场景位置信息指示对应音频数据在虚拟场景中的位置,所述每个音频数据的渲染信息用于渲染对应音频数据以形成其在所述虚拟场景中的位置的空间感,所述每个音频数据的虚拟场景位置信息是根据在所述服务器从虚拟场景库中选择的目标虚拟场景的位置信息确定的,其中,所述位置信息指示对应虚拟场景中的各音频数据与收听者之间的位置关系信息,所述位置关系信息包括各音频数据与收听者之间的方位角数据、仰角数据和距离数据;
信息接收单元,被配置为:从所述服务器接收所述每个音频数据的虚拟场景位置信息;
文件解析单元,被配置为:对所述音频文件进行解析,得到所述至少一个音频数据以及所述每个音频数据的渲染信息;
音频播放单元,被配置为:基于所述每个音频数据的渲染信息,播放所述至少一个音频数据;
界面生成单元,被配置为:基于接收到的所述每个音频数据的虚拟场景位置信息,生成交互界面,其中,在所述交互界面中在每个音频数据对应的虚拟场景位置处显示该音频数据对应的图标;
界面显示单元,被配置为:显示所述交互界面;
信息计算单元,被配置为:响应于在所述交互界面上接收到第一图标的移动操作,根据第一图标对应的第一音频数据的移动后的虚拟场景位置,重新计算第一音频数据的渲染信息;
其中,所述音频播放单元还被配置为:基于重新计算的第一音频数据的渲染信息,播放第一音频数据。
20.如权利要求19所述的音频处理装置,其特征在于,所述每个音频数据的虚拟场景位置信息是通过下述操作得到的:
从所述虚拟场景库中选择所述目标虚拟场景并获取所述目标虚拟场景对应的所述位置信息,其中,所述虚拟场景库中存储多种虚拟场景及每种虚拟场景对应的位置信息;
基于所述目标虚拟场景对应的位置信息,配置所述至少一个音频数据中的每个音频数据在虚拟场景中的位置;
基于每个音频数据配置的位置,得到所述每个音频数据的虚拟场景位置信息。
21.如权利要求19所述的音频处理装置,其特征在于,所述每个音频数据的渲染信息是通过下述操作计算得到的:
对所述每个音频数据的虚拟场景位置信息进行解析,得到球形谐波函数的线性权重系数,作为对应音频数据的渲染信息。
22.如权利要求21所述的音频处理装置,其特征在于,所述球形谐波函数的线性权重系数为高阶高保真立体声HOA系数。
23.如权利要求20所述的音频处理装置,其特征在于,所述音频文件为音频定义模型ADM音频文件;
其中,所述音频文件是通过下述操作生成的:
将所述至少一个音频数据封装为广播波形格式BWF音频文件;
对所述至少一个音频数据进行解析,生成ADM标准下的内容元数据;
基于所述每个音频数据的渲染信息,生成ADM标准下的格式元数据;
将所述BWF音频文件、所述内容元数据和所述格式元数据封装为ADM音频文件。
24.如权利要求20所述的音频处理装置,其特征在于,所述至少一个音频数据还包括至少一个氛围音频数据。
25.一种电子设备,其特征在于,包括:
至少一个处理器;
至少一个存储计算机可执行指令的存储器,
其中,所述计算机可执行指令在被所述至少一个处理器运行时,促使所述至少一个处理器执行如权利要求1到12中的任一权利要求所述的音频处理方法。
26.一种计算机可读存储介质,其特征在于,当述计算机可读存储介质中的指令被至少一个处理器运行时,促使所述至少一个处理器执行如权利要求1到12中的任一权利要求所述的音频处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210221024.4A CN114339297B (zh) | 2022-03-09 | 2022-03-09 | 音频处理方法、装置、电子设备和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210221024.4A CN114339297B (zh) | 2022-03-09 | 2022-03-09 | 音频处理方法、装置、电子设备和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114339297A CN114339297A (zh) | 2022-04-12 |
CN114339297B true CN114339297B (zh) | 2022-06-21 |
Family
ID=81033527
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210221024.4A Active CN114339297B (zh) | 2022-03-09 | 2022-03-09 | 音频处理方法、装置、电子设备和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114339297B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023212883A1 (zh) * | 2022-05-05 | 2023-11-09 | 北京小米移动软件有限公司 | 音频输出方法和装置、通信装置和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110460863A (zh) * | 2019-07-15 | 2019-11-15 | 北京字节跳动网络技术有限公司 | 基于显示位置的音视频处理方法、装置、介质和电子设备 |
CN111670583A (zh) * | 2018-02-01 | 2020-09-15 | 高通股份有限公司 | 可扩展的统一的音频渲染器 |
CN112527108A (zh) * | 2020-12-03 | 2021-03-19 | 歌尔光学科技有限公司 | 一种虚拟场景回放方法、装置、电子设备及存储介质 |
CN112884905A (zh) * | 2020-12-30 | 2021-06-01 | 北京数医科技有限公司 | 虚拟场景构建方法、装置、计算机设备和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI631835B (zh) * | 2014-11-12 | 2018-08-01 | 弗勞恩霍夫爾協會 | 用以解碼媒體信號之解碼器、及用以編碼包含用於主要媒體資料之元資料或控制資料的次要媒體資料之編碼器 |
-
2022
- 2022-03-09 CN CN202210221024.4A patent/CN114339297B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111670583A (zh) * | 2018-02-01 | 2020-09-15 | 高通股份有限公司 | 可扩展的统一的音频渲染器 |
CN110460863A (zh) * | 2019-07-15 | 2019-11-15 | 北京字节跳动网络技术有限公司 | 基于显示位置的音视频处理方法、装置、介质和电子设备 |
CN112527108A (zh) * | 2020-12-03 | 2021-03-19 | 歌尔光学科技有限公司 | 一种虚拟场景回放方法、装置、电子设备及存储介质 |
CN112884905A (zh) * | 2020-12-30 | 2021-06-01 | 北京数医科技有限公司 | 虚拟场景构建方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114339297A (zh) | 2022-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11568881B2 (en) | Methods and systems for generating and rendering object based audio with conditional rendering metadata | |
JP7251592B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
EP2382803B1 (en) | Method and apparatus for three-dimensional acoustic field encoding and optimal reconstruction | |
CN102100088B (zh) | 用于使用基于对象的元数据产生音频输出信号的装置和方法 | |
JP6186435B2 (ja) | ゲームオーディオコンテンツを示すオブジェクトベースオーディオの符号化及びレンダリング | |
JP5973058B2 (ja) | レイアウト及びフォーマットに依存しない3dオーディオ再生のための方法及び装置 | |
US20170098452A1 (en) | Method and system for audio processing of dialog, music, effect and height objects | |
KR20200014428A (ko) | 3차원 오디오 사운드트랙의 인코딩 및 재현 | |
US20160066116A1 (en) | Using single bitstream to produce tailored audio device mixes | |
CN114339297B (zh) | 音频处理方法、装置、电子设备和计算机可读存储介质 | |
JP6809463B2 (ja) | 情報処理装置、および情報処理方法、並びにプログラム | |
US20240129683A1 (en) | Associated Spatial Audio Playback | |
CN110191745B (zh) | 利用空间音频的游戏流式传输 | |
EP3821621A2 (en) | Spatial audio capture, transmission and reproduction | |
US12035127B2 (en) | Spatial audio capture, transmission and reproduction | |
JP2005250199A (ja) | オーディオ機器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |