多轨音频处理方法、装置及计算机存储介质与流程



1.本技术涉及音频处理技术领域,尤其涉及一种多轨音频处理方法、装置及存储介质。


背景技术:



2.在乐器演奏、视频编辑、音频处理等场合,涉及到对多轨音频进行录音、合成、同步播放的处理。现有的处理多轨音频处理方法,在录音时直接采集了各路音轨,导致后续同步播放时、各音轨因采样率不同而降低最终的音质。


技术实现要素:



3.有鉴于此,本技术提出一种多轨音频处理方法、装置及计算机存储介质。
4.一种多轨音频处理方法,包括:
5.录制至少两个音轨数据
6.计算与每一所述音轨数据对应的配置参数;
7.根据所述配置参数,配置并启动audio_track;
8.解码每一所述音轨数据,得到至少两个pcm流,并存入缓冲区;
9.从所述缓冲区中获取至少两个指定数据大小的pcm流并混合,得到混合pcm流;
10.将所述混合pcm流写入所述audio_track,播放所述混合pcm流。
11.在至少一个实施方式中,所述配置参数包括采样率及通道数。
12.在至少一个实施方式中,所述缓冲区的大小根据所述采样率及所述通道数而确定。
13.在至少一个实施方式中,所述从所述缓冲区中获取至少两个指定数据大小的pcm流并混合,得到混合pcm流的步骤,包括:
14.从所述缓冲区中获取至少两个指定数据大小的pcm流并利用叠加算法对所述至少两个pcm流进行混合;
15.在至少一个实施方式中,所述从所述缓冲区中获取至少两个指定数据大小的pcm流的步骤,包括:
16.从所述缓冲区中获取至少两个具有相同大小的pcm流。
17.在至少一个实施方式中,所述计算与每一所述音轨数据对应的配置参数的步骤,包括:
18.配置音频解码器,并解码所述音轨数据,得到音频参数;
19.根据所述音频参数计算与所述音轨数据对应的配置参数。
20.在至少一个实施方式中,所述解码每一所述音轨数据,得到至少两个pcm流的步骤,包括:
21.解码每一所述音轨数据,得到至少两个pcm流;
22.将所述至少两个pcm流转换为具有相同采样率的pcm流。
23.在至少一个实施方式中,所述解码每一所述音轨数据,得到至少两个pcm流的步骤,包括:
24.将每一所述音轨数据转化为采样率相同的音轨数据,并解码得到至少两个pcm流。
25.本技术还提出一种多轨音频处理装置,所述多轨音频处理装置包括采样器、扬声器、处理器及存储器,所述存储器存储有若干计算机可读指令,所述处理器用于执行存储器中存储的计算机可读指令时实现如上所述的多轨音频处理方法的步骤。
26.本技术还提出一种计算机存储介质,用于存储计算机可读取的指令,所述指令被执行时执行如上所述的音频处理方法的步骤。
27.相较于现有技术,本技术的多轨音频处理方法,通过解码各个音轨数据并混合输出,实现多音轨的同时播放。
附图说明
28.本技术的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
29.图1为本技术一实施例中多轨音频处理方法的流程图;
30.图2为本技术一实施例中多轨音频处理装置的示意图。
31.主要元件符号说明
32.音频处理装置
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
100
33.采样器
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
1001
34.扬声器
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
1002
35.处理器
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
1003
36.存储器
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
1004
37.计算机可读指令
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
1005
38.通信总线
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
1006
39.如下具体实施方式将结合上述附图进一步说明本技术。
具体实施方式
40.为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行详细描述。需要说明的是,在不冲突的情况下,本技术的实施方式及实施方式中的特征可以相互组合。
41.在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施方式仅仅是本发明一部分实施方式,而不是全部的实施方式。
42.除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本发明。
43.请参阅图1,本实施例提供一种多轨音频处理方法,包括:
44.s11:录制至少两个音轨数据;
45.s12:计算与每一音轨数据对应的配置参数;
46.s13:根据配置参数,配置并启动audio_track;
47.s14:解码每一音轨数据,得到至少两个pcm流,并存入缓冲区;
48.s15:从缓冲区中获取至少两个指定数据大小的pcm流并混合,得到混合pcm流;
49.s16:将混合pcm流写入audio_track,播放混合pcm流。
50.在android系统中可以采用mediaplayer或audio_track两种方案进行音频播放,通常mediaplayer因为可以播放更多格式的声音文件而应用广泛,但由于mediaplayer在framework层还是会创建audio_track导致响应速度略慢。本实施例采用audio_track,其具有响应速度快的优点。
51.于一实施例中,配置参数包括采样率及通道数。采样率可以为44.1khz或48khz,通道数可以为单通道或双通道。
52.于一实施例中,缓冲区的大小根据采样率及通道数而确定。缓冲区太小可能导致录音数据初始化失败,缓冲区太大则会影响读取的速度,因此根据采样率和通道数决定存储模块的大小,以达到性能的均衡。
53.于一实施例中,从缓冲区中获取至少两个指定数据大小的pcm流并混合,得到混合pcm流的步骤,包括:
54.从缓冲区中获取至少两个指定数据大小的pcm流并利用叠加算法对至少两个pcm流进行混合。
55.叠加算法可用于音频的混合,相较于其他的混音算法,具有噪音小、无溢出、容易实现的优点。本实施例可以利用叠加算法将多路pcm流数据叠加混合为一路并进行输出。
56.于一实施例中,从缓冲区中获取至少两个指定数据大小的pcm流的步骤,包括:
57.从缓冲区中获取至少两个具有相同大小的pcm流。
58.从每一路音轨中获取相同数据大小的pcm流数据,便于后续的混合。
59.于一实施例中,计算与每一音轨数据对应的配置参数的步骤,包括:
60.配置音频解码器,并解码音轨数据,得到音频参数;
61.根据音频参数计算与音轨数据对应的配置参数。
62.于一实施例中,解码每一音轨数据,得到至少两个pcm流的步骤,包括:
63.解码每一音轨数据,得到至少两个pcm流;
64.将至少两个pcm流转换为具有相同采样率的pcm流。
65.于一实施例中,解码每一音轨数据,得到至少两个pcm流的步骤,包括:
66.将每一音轨数据转化为采样率相同的音轨数据,并解码得到至少两个pcm流。
67.由于实施例采用的叠加算法要求所处理的pcm流数据的采样率一致,因此在将pcm流数据存入缓冲区的步骤之前需要将各音轨数据或pcm流数据转换至同一采样率。转换至同一采样率这一操作可以是对音轨数据执行,也可以对解码后的音轨数据执行。
68.请参阅图2,本技术实施例提出一种音频处理装置100,音频处理装置100包括采样器1001、扬声器1002、处理器1003及存储器1004,存储器1004存储有若干计算机可读指令1005,处理器1003用于执行存储器1004中存储的计算机可读指令1005时实现如上所述的音频处理方法的步骤。音频处理装置100还可以包括通信总线1006。采样器1001可以包括麦克风、拾音器、录音声卡等可录音设备。
69.可以理解的是,本实施例示意的结构并不构成对音频处理装置100的具体限定。在另一些实施例中,音频处理装置100可以包括比图示更多或更少的部件,或者组合某些部
件,或者拆分某些部件,或者不同的部件布置。
70.处理器1003可以包括一个或多个处理单元,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器1003中。
71.处理器1003还可以设置有存储器1004,用于存储指令和数据。在一些实施例中,处理器1003中的存储器1004为高速缓冲存储器1004。该存储器1004可以保存处理器1003刚用过或循环使用的指令或数据。如果处理器1003需要再次使用该指令或数据,可从该存储器1004中直接调用。避免了重复存取,减少了处理器1003的等待时间,因而提高了系统的效率。
72.在一些实施例中,处理器1003可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,i2c)接口,集成电路内置音频(inter-integrated circuit sound,i2s)接口,脉冲编码调制(pulse code modulation,pcm)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,uart)接口,移动产业处理器1003接口(mobile industry processor interface,mipi),通用输入输出(general-purpose input/output,gpio)接口,sim接口,和/或usb接口等。
73.在一些实施例中,存储器1004可以包括高速随机存取存储器1004,还可以包括非易失性存储器1004,例如硬盘、内存、插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)、至少一个磁盘存储器1004件、闪存器件、或其他易失性固态存储器1004件。
74.本技术实施例提出一种计算机存储介质,用于存储计算机可读取的指令,指令被处理器1003执行时实现如上所述的音频处理方法的步骤。
75.本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,所述计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
76.在本发明所提供的几个实施例中,应该理解到,所揭露的计算机装置和方法,可以通过其它的方式实现。例如,以上所描述的计算机装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
77.另外,在本发明各个实施例中的各功能单元可以集成在相同处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在相同单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
78.对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的。此外,显然“包括”一词
不排除其他单元或步骤,单数不排除复数。计算机装置权利要求中陈述的多个单元或计算机装置也可以由同一个单元或计算机装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
79.最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

技术特征:


1.一种多轨音频处理方法,其特征在于,包括:录制至少两个音轨数据;计算与每一所述音轨数据对应的配置参数;根据所述配置参数,配置并启动audio_track;解码每一所述音轨数据,得到至少两个pcm流,并存入缓冲区;从所述缓冲区中获取至少两个指定数据大小的pcm流并混合,得到混合pcm流;将所述混合pcm流写入所述audio_track,播放所述混合pcm流。2.如权利要求1所述的多轨音频处理方法,其特征在于,所述配置参数包括采样率及通道数。3.如权利要求2所述的多轨音频处理方法,其特征在于,所述缓冲区的大小根据所述采样率及所述通道数而确定。4.如权利要求1所述的多轨音频处理方法,其特征在于,所述从所述缓冲区中获取至少两个指定数据大小的pcm流并混合,得到混合pcm流的步骤,包括:从所述缓冲区中获取至少两个指定数据大小的pcm流并利用叠加算法对所述至少两个pcm流进行混合。5.如权利要求1或4所述的多轨音频处理方法,其特征在于,所述从所述缓冲区中获取至少两个指定数据大小的pcm流的步骤,包括:从所述缓冲区中获取至少两个具有相同大小的pcm流。6.如权利要求4所述的多轨音频处理方法,其特征在于,所述计算与每一所述音轨数据对应的配置参数的步骤,包括:配置音频解码器,并解码所述音轨数据,得到音频参数;根据所述音频参数计算与所述音轨数据对应的配置参数。7.如权利要求1所述的多轨音频处理方法,其特征在于,所述解码每一所述音轨数据,得到至少两个pcm流的步骤,包括:解码每一所述音轨数据,得到至少两个pcm流;将所述至少两个pcm流转换为具有相同采样率的pcm流。8.如权利要求1所述的多轨音频处理方法,其特征在于,所述解码每一所述音轨数据,得到至少两个pcm流的步骤,包括:将每一所述音轨数据转化为采样率相同的音轨数据,并解码得到至少两个pcm流。9.一种多轨音频处理装置,所述多轨音频处理装置包括采样器、扬声器、处理器及存储器,所述存储器存储有若干计算机可读指令,其特征在于,所述处理器用于执行存储器中存储的计算机可读指令时实现如权利要求1~8任意一项所述的多轨音频处理方法的步骤。10.一种计算机存储介质,用于存储计算机可读取的指令,其特征在于,所述指令被执行时执行如权利要求1~8任意一项所述的多轨音频处理方法的步骤。

技术总结


本申请提供一种多轨音频处理方法、装置及计算机存储介质,所述方法包括:录制至少两个音轨数据;计算与每一所述音轨数据对应的配置参数;根据所述配置参数,配置并启动Audio_Track;解码每一所述音轨数据,得到至少两个PCM流,并存入缓冲区;从所述缓冲区中获取至少两个指定数据大小的PCM流并混合,得到混合PCM流;将所述混合PCM流写入所述Audio_Track,播放所述混合PCM流。本申请通过解码各个音轨数据并利用叠加算法混合输出,实现多音轨的同时播放。播放。播放。


技术研发人员:

陆子天 谢倬豪 李文龙

受保护的技术使用者:

广州市拿火信息科技有限公司

技术研发日:

2021.04.27

技术公布日:

2022/10/27

本文发布于:2024-09-21 22:14:02,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/9182.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:所述   数据   音轨   两个
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议