本申请涉及计算机领域,特别是涉及一种数据处理方法和相关装置。
背景技术:
1、在现实生活中,由于双耳效应的原理,当声源处于不同的位置,听者听到来自上下、左右等不同方位声音的感觉是不同的,并且可以快速辨别声源的位置。而在虚拟环境中,可能存在多个虚拟对象,虚拟对象可以发出声音,从而可以将发出的声音向其他虚拟对象渲染,以便被其他虚拟对象听见。在虚拟环境中如何实现空间音频渲染是迫切解决的关键要素。
2、为了实现空间音频渲染,这就需要确定虚拟对象之间的相对位置。为此,相关技术可以通过位置信令通道同步每个虚拟对象的位置数据,以便基于获取到的位置数据确定虚拟对象之间的相对位置,进而基于相对位置实现空间音频渲染。然而这种方法将会提高信令交互频率,带来更多的流量成本,以及提高维护复杂度。
技术实现思路
1、为了解决上述技术问题,本申请提供了一种数据处理方法和相关装置,无需建立单独的用于传输位置数据的信令通道,无需使用额外的信令传输位置数据,从而降低了信令交互频率和维护复杂度,节约了传输使用的流量成本。
2、本申请实施例公开了如下技术方案:
3、一方面,本申请实施例提供一种数据处理方法,所述方法由第一终端执行,所述方法包括:
4、当产生第一虚拟对象对应的第一音频数据时,获取所述第一虚拟对象对应的第一音频数据,以及获取所述第一虚拟对象的第一位置数据,所述第一虚拟对象是虚拟环境中所述第一终端所对应的虚拟对象,所述第一位置数据用于指示产生所述第一音频数据时所述第一虚拟对象在所述虚拟环境中所处的位置;
5、将所述第一音频数据和所述第一位置数据进行音频打包,得到第一音频数据包;
6、通过第一音频信令通道将所述第一音频数据包推送至服务器,所述服务器用于向第二终端提供所述第一音频数据包,所述第二终端是第二虚拟对象对应的终端,所述第二虚拟对象是所述虚拟环境中除所述第一虚拟对象之外的虚拟对象。
7、一方面,本申请实施例提供一种数据处理方法,所述方法由第二终端执行,所述方法包括:
8、通过第二音频信令通道,从服务器获取第一虚拟对象对应的第一音频数据包,所述第一音频数据包中包括虚拟环境中所述第一虚拟对象对应的第一音频数据和所述第一虚拟对象的第一位置数据,所述第一虚拟对象是所述虚拟环境中除第二虚拟对象之外的虚拟对象,所述第二虚拟对象是所述虚拟环境中所述第二终端所对应的虚拟对象,所述第一位置数据用于指示产生所述第一音频数据时所述第一虚拟对象在所述虚拟环境中所处的位置;
9、基于所述第一位置数据和所述第二虚拟对象的当前位置数据,确定所述第一虚拟对象和所述第二虚拟对象之间的相对位置;
10、根据所述第一虚拟对象和所述第二虚拟对象之间的相对位置,对所述第一音频数据进行空间音频渲染。
11、一方面,本申请实施例提供一种数据处理装置,所述装置部署在第一终端上,所述装置包括获取单元、打包单元和推送单元:
12、所述获取单元,用于当产生第一虚拟对象对应的第一音频数据时,获取所述第一虚拟对象对应的第一音频数据,以及获取所述第一虚拟对象的第一位置数据,所述第一虚拟对象是虚拟环境中所述第一终端所对应的虚拟对象,所述第一位置数据用于指示产生所述第一音频数据时所述第一虚拟对象在所述虚拟环境中所处的位置;
13、所述打包单元,用于将所述第一音频数据和所述第一位置数据进行音频打包,得到第一音频数据包;
14、所述推送单元,用于通过第一音频信令通道将所述第一音频数据包推送至服务器,所述服务器用于向第二终端提供所述第一音频数据包,所述第二终端是第二虚拟对象对应的终端,所述第二虚拟对象是所述虚拟环境中除所述第一虚拟对象之外的虚拟对象。
15、一方面,本申请实施例提供一种数据处理装置,所述装置部署在第二终端上,所述装置包括获取单元、确定单元和渲染单元:
16、所述获取单元,用于通过第二音频信令通道,从服务器获取第一虚拟对象对应的第一音频数据包,所述第一音频数据包中包括虚拟环境中所述第一虚拟对象对应的第一音频数据和所述第一虚拟对象的第一位置数据,所述第一虚拟对象是所述虚拟环境中除第二虚拟对象之外的虚拟对象,所述第二虚拟对象是所述虚拟环境中所述第二终端所对应的虚拟对象,所述第一位置数据用于指示产生所述第一音频数据时所述第一虚拟对象在所述虚拟环境中所处的位置;
17、所述确定单元,用于基于所述第一位置数据和所述第二虚拟对象的当前位置数据,确定所述第一虚拟对象和所述第二虚拟对象之间的相对位置;
18、所述渲染单元,用于根据所述第一虚拟对象和所述第二虚拟对象之间的相对位置,对所述第一音频数据进行空间音频渲染。
19、一方面,本申请实施例提供一种计算机设备,所述计算机设备包括处理器以及存储器:
20、所述存储器用于存储计算机程序,并将所述计算机程序传输给所述处理器;
21、所述处理器用于根据所述计算机程序中的指令执行前述任一方面所述的方法。
22、一方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序当被处理器执行时使所述处理器执行前述任一方面所述的方法。
23、一方面,本申请实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现前述任一方面所述的方法。
24、由上述技术方案可以看出,对于任一个虚拟对象对应的终端(即第一终端)来说,当产生第一虚拟对象对应的第一音频数据时,第一终端可以获取第一虚拟对象对应的第一音频数据和此时的第一位置数据。第一位置数据用于指示产生第一音频数据时第一虚拟对象在虚拟环境中所处的位置,为了可以将第一位置数据推送至其他虚拟对象的终端(即第二虚拟对象对应的第二终端),第一终端可以将第一音频数据和第一位置数据进行音频打包,得到第一音频数据包,从而通过第一音频信令通道将第一音频数据包推送至服务器。也就是说,将通过第一音频数据包携带第一位置数据,以便仅通过第一音频信令通道便可以推送自己的位置数据,无需建立单独的用于传输位置数据的信令通道。同时将第一位置数据与第一音频数据一起打包传输,第一位置数据与第一音频数据共用一个信令,无需使用额外的信令传输第一位置数据。相应的,当其他虚拟对象的终端需要渲染音频数据时,也可以通过自己对应的音频信令通道(即第二音频信令通道)从服务器获取第一音频数据包,基于第一位置数据和第二虚拟对象的当前位置数据,确定第一虚拟对象和第二虚拟对象之间的相对位置,以便根据第一虚拟对象和第二虚拟对象之间的相对位置,对第一音频数据进行空间音频渲染,从而渲染出具有空间效果的声音。可见本申请无需建立单独的用于传输位置数据的信令通道,无需使用额外的信令传输位置数据,从而降低了信令交互频率和维护复杂度,节约了传输使用的流量成本。
1.一种数据处理方法,其特征在于,所述方法由第一终端执行,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述第一音频数据和所述第一位置数据进行音频打包,得到第一音频数据包,包括:
3.根据权利要求2所述的方法,其特征在于,产生所述第一音频数据时为第一时刻,所述确定所述第一位置数据满足位置更新条件,包括:
4.根据权利要求2所述的方法,其特征在于,所述确定所述第一位置数据满足位置更新条件,包括:
5.根据权利要求2所述的方法,其特征在于,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,所述获取所述第一虚拟对象的第一位置数据,包括:
7.根据权利要求1所述的方法,其特征在于,所述将所述第一音频数据和所述第一位置数据进行音频打包,得到第一音频数据包,包括:
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
9.根据权利要求8所述的方法,其特征在于,所述通过所述第一音频信令通道,从所述服务器获取所述第二虚拟对象对应的第二音频数据包,包括:
10.根据权利要求9所述的方法,其特征在于,所述确定满足空间音频渲染条件,包括:
11.根据权利要求10所述的方法,其特征在于,所述第二音频数据包中包括第二指示标识,若所述第二指示标识用于指示所述第二虚拟对象是否处于音频开放状态,所述确定所述第二虚拟对象处于音频开放状态,包括:
12.一种数据处理方法,其特征在于,所述方法由第二终端执行,所述方法包括:
13.一种数据处理装置,其特征在于,所述装置部署在第一终端上,所述装置包括获取单元、打包单元和推送单元:
14.一种数据处理装置,其特征在于,所述装置部署在第二终端上,所述装置包括获取单元、确定单元和渲染单元:
15.一种计算机设备,其特征在于,所述计算机设备包括处理器以及存储器:
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,所述计算机程序当被处理器执行时使所述处理器执行权利要求1-12任一项所述的方法。