本发明实施例涉及音频处理领域,特别涉及一种音频处理方法、电子设备、存储介质及程序产品。
背景技术:
1、现有的直播机音频处理系统一般有两种混音方式,一种是硬件外接混音芯片进行混音,这种方式只能实现一路音频数据采集或者固定的多路音频数据混音,产品定型后不能实现音频采集切换。另一种是在cpu平台的dsp芯片中实现混音,这种方式受限于各dsp芯片厂商平台能力,一般只能实现两路混音,而且部分音源不能参与混音(例如usb声卡采集的音频数据)。
技术实现思路
1、本发明实施方式的目的在于提供一种音频处理方法、电子设备、存储介质及程序产品,通过向hal层传输混音命令实现自定义多路混音,能够自由实现音频采集切换,无需额外设计混音芯片,节约了音频处理成本。
2、为解决上述技术问题,本发明的实施方式提供了一种音频处理方法,包括:framework层获取混音命令并传输至hal层,所述混音命令用于指示获取所述待混音的音频数据的音频通路;所述hal层打开所述混音命令指示的至少两个音频通路以获取待混音的音频数据;所述hal层将所述待混音的音频数据进行混音处理后输出。
3、本发明的实施方式还提供了一种电子设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上任一项所述的音频处理方法。
4、本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述的音频处理方法。
5、本发明的实施方式还提供了一种计算机程序产品,包括计算机指令,所述计算机指令被处理器执行时实现如上任一项所述的音频处理方法。
6、本发明实施方式相对于现有技术而言,通过framework层获取混音命令并传输至hal层,混音命令用于指示获取待混音的音频数据的音频通路;hal层打开混音命令指示的至少两个音频通路以获取待混音的音频数据;hal层将待混音的音频数据进行混音处理后输出。即本方案hal层在接收到framework层传输的混音命令,可以根据混音命令指示的获取待混音的音频数据的音频通路,开启多路录音进程,并在hal层将录到的多路音频进行混音,再将混好的音频数据给到上层调用。即通过本方案实现自定义多路混音,能够自由实现音频采集切换,无需额外设计混音芯片,节约了音频处理成本。
7、在一些实施例中,从各所述音频通路所获取的所述待混音的音频数据的格式相同或不完全相同。
8、在一些实施例中,如上所述的方法还包括:所述framework层获取应用层所需的音频数据的格式;所述将所述音频数据在所述hal层进行混音处理后输出,包括:所述hal层根据所述应用层所需的音频数据的格式,将所述待混音的音频数据进行混音处理后输出。
9、在一些实施例中,如上所述的hal层根据所述应用层所需的音频数据的格式,将所述待混音的音频数据进行混音处理后输出,包括:判断所述待混音的音频数据的格式与所述应用层所需的音频数据的格式是否相同;若是,则直接对所述待混音的音频数据进行混音处理后输出;若否,则所述hal层对所述待混音的音频数据进行重采样,以使所述待混音的音频数据的格式与所述应用层所需的音频数据的格式相同,对重采样后的所述待混音的音频数据进行混音处理后输出。
10、在一些实施例中,如上所述的至少两个音频通路的音频来源至少包括以下中的一种:usb外置声卡、hdmi声卡、mic in和line in。
11、在一些实施例中,如上所述的每个音频通路对应有一个脉冲调制编码设备;所述hal层根据所述混音命令打开与所述混音命令对应的至少两个音频通路,包括:所述hal层根据所述混音命令打开与所述至少两个音频通路对应的脉冲调制编码设备,每个脉冲调制编码设备与一个所述音频设备源相连。
12、在一些实施例中,如上所述的待混音的音频数据为脉冲调制编码数据。
1.一种音频处理方法,其特征在于,包括:
2.根据权利要求1所述的音频处理方法,其特征在于,从各所述音频通路所获取的所述待混音的音频数据的格式相同或不完全相同。
3.根据权利要求1所述的音频处理方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的音频处理方法,其特征在于,所述hal层根据所述应用层所需的音频数据的格式,将所述待混音的音频数据进行混音处理后输出,包括:
5.根据权利要求1所述的音频处理方法,其特征在于,所述至少两个音频通路的音频来源至少包括以下中的一种:usb外置声卡、hdmi声卡、mic in和line in。
6.根据权利要求1所述的音频处理方法,其特征在于,每个音频通路对应有一个脉冲调制编码设备;
7.根据权利要求6所述的音频处理方法,其特征在于,所述待混音的音频数据为脉冲调制编码数据。
8.一种电子设备,其特征在于,包括:
9.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7中任一项所述的音频处理方法。
10.一种计算机程序产品,其特征在于,包括计算机指令,所述计算机指令被处理器执行时实现如权利要求1至7中任一项所述的音频处理方法。