一种混音方法和混音装置的制作方法

文档序号:2825251阅读:129来源:国知局
专利名称:一种混音方法和混音装置的制作方法
技术领域
本发明涉及混音技术,特别是指一种混音方法和混音装置。
背景技术
混音将对白、音乐、音效等多种音源予以混合的处理过程,又称为再录音。目前,混音器有两种,一种是软件类型的混音器,一种是硬件类型的混音器。软件类型的混音器的混音输入可以是数字音频文件和线路输入音频信号,输出则为数字音频文件,而硬件类型的混音器的混音输入则为不同线路的模拟音频信号,输出依然为模拟信号。由于原理不同,软件类型的混音器和硬件类型的混音器的应用也大不相同,前者主要用于 音频处理,后者主要用于音响设置。本发明讨论的是软件类型的混音器。现有的软件类型的混音器,主要是通过排列内置的数字音频文件、例如乐器声音素材等进行混音乐曲的创建。混音乐曲可以保存到混音器指定的目录中,以供回放。目前,软件类型的混音器存在以下不足混音只能通过手动排列声音素材的方式来实现,用户只能使用混音器内置的声音素材进行混音编辑,造成用户体验不佳。另外,现有软件类型的混音器是通过Adobe Flash Media Server来存储用户的音频信息,用户只有通过访问该Adobe Flash Media Server才能实现该音频信息的回放,并且,在录音过程中,Adobe Flash Media Server是实时接收并存储麦克风接收到的音频数据的,因此,其对用户的网络要求非常严格,如果录制过程中网络不稳定,将无法完成录音,这严重影响用户体验,造成用户流失严重。

发明内容
有鉴于此,本发明的主要目的在于提供一种混音方法和混音装置,以解决现有技术中只能使用混音器内置的声音素材进行混音编辑的缺陷。为达到上述目的,本发明的技术方案是这样实现的本发明提供了一种混音方法,该方法包括将获取的音频数据转换为用作混音的声音素材;根据转换所得的至少一个声音素材进行混音处理。其中,所述将获取的音频数据转换为用作混音的声音素材,具体为步骤a、选择声音素材的类别;步骤b、对获取的音频数据的二进制数据流进行遍历分析,记录符合转换条件的数据对应的采样音量值和采样时间点,并将所述采样音量值和采样时间点存入临时转换数组中;步骤C、遍历所述临时转换数组,根据读取的采样时间点在建立的临时二进制数据流中写入对应采样音量值的所选声音素材类别的二进制数据流,生成声音素材。该方法进一步包括重复执行步骤a至步骤C,生成不同类别的声音素材。所述根据转换所得的至少一个声音素材进行混音处理,包括
将转换所得的至少两个声音素材进行混音处理;或者,将转换所得的至少一个声音素材与获取的音频数据和/或内置声音素材进行混
音处理。所述根据转换所得的至少一个声音素材进行混音处理,具体为从参与混音处理的声音素材和/或音频数据中选择最长时间长度的声音素材或音频数据的二进制数据流,并建立临时二进制数据流,所述临时二进制数据流的时间长度与所述最长时间长度相同;遍历所述最长时间长度的二进制数据流,并顺序读取其他需要混合的声音素材和/或音频数据的二进制数据流,将所述其他声音素材和/或音频数据的二进制数据流的浮点值与所述最长时间长度的二进制数据流的浮点值进行顺序合并后写入具有最长时间长度的临时二进制数据流中;将写入后的临时二进制数据流编译为目标音频格式。本发明还提供了一种混音装置,该装置包括 转换模块,用于将获取的音频数据转换为用作混音的声音素材;混音模块,用于根据转换所得的至少一个声音素材进行混音处理。所述转换模块进一步用于执行以下操作步骤a、选择声音素材的类别;步骤b、对获取的音频数据的二进制数据流进行遍历分析,记录符合转换条件的数据对应的采样音量值和采样时间点,并将所述采样音量值和采样时间点存入临时转换数组中;步骤C、遍历所述临时转换数组,根据读取的采样时间点在建立的临时二进制数据流中写入对应采样音量值的所选声音素材类别的二进制数据流,生成声音素材。所述转换模块进一步用于,重复执行步骤a 步骤C,生成不同类别的声音素材。所述混音模块进一步用于,将转换所得的至少两个声音素材进行混音处理;或者,将转换所得的至少一个声音素材与所述获取的音频数据和/或内置声音素材进行混音处理。所述混音模块进一步用于,从参与混音处理的声音素材和/或音频数据中选择最长时间长度的声音素材或音频数据的二进制数据流,并建立临时二进制数据流,所述临时二进制数据流的时间长度与所述最长时间长度相同;遍历所述最长时间长度的二进制数据流,并顺序读取其他需要混合的声音素材和/或音频数据的二进制数据流,将所述其他声音素材和/或音频数据的二进制数据流的浮点值与所述最长时间长度的二进制数据流的浮点值进行顺序合并后写入具有最长时间长度的临时二进制数据流中;将写入后的临时二进制数据流编译为目标音频格式。采用本发明混音方法和装置,可以将获取的音频数据转换为声音素材后进行混音,还可以直接将获取的音频数据用作混音,解决了现有技术中只能使用内置的声音素材进行混音的缺陷。另外,在混音时,对于参与混音处理的声音素材和/或音频数据,本发明自动选择最长时间长度的二进制数据流,将其他声音素材和/或音频数据的二进制数据流的浮点值与该最长时间长度的二进制数据流的浮点值进行顺序合并,不需要用户手动排列各声音素材来实现混音,提高了用户体验度。


图I为本发明混音方法的流程图;图2为本发明混音装置的结构图。
具体实施例方式本发明混音方法的基本思想是由客户端采集音频数据,并转换为用作混音的声音素材,将该转换得到的声音素材与采集的音频数据和/或客户端内置的声音素材进行混音处理,得到混音后的音频数据,上传到服务器,以供回放。其中,在客户端完成的混音过程如图I所示,包括如下步骤步骤101,将获取的音频数据转换为用作混音的声音素材。获取音频数据时,较佳地,本发明客户端利用Aodbe Flash的特性,获取麦克风输入的声音采样。具体的Aodbe Flash中为麦克风对象提供了 SampleDataEvent. SAMPLE_DATA事件来获取用户音频数据。在录音启动后,该事件将监听麦克风对象的输入,当监听到有声音变化时,接收用户提供的音频信息的浮点值二进制数据流。该二进制数据流即为录音数据二进制数据流。此种获取音频数据的方法,在录音时依据Aodbe Flash的特性,不需要借助服务器即可实现音频数据的获取,减少了对服务器的请求次数,降低了服务器负担,从而节省了服务器成本。为了解决现有技术中用户只能使用混音器内置的声音素材进行混音编辑的问题,本发明可以将上述获取的音频数据转换为用作混音的声音素材,具体的步骤a、选择声音素材的类别,例如乐器声音,乐器声音还可以细分为小提琴、钢琴、吉他等类别。这里选取的声音素材的类别,即是需要将获取的音频数据转换成的声音素材的类别。步骤b、对获取的音频数据的二进制数据流进行遍历分析,记录符合转换条件的数据对应的采样音量值和采样时间点,并将采样音量值和采样时间点存入临时转换数组中。其中,在遍历二进制数据流时,检测数据对应的采样音量值,根据采样音量值来判断对应的数据是否满足转换条件,较佳地,可以判断采样音量值是否大于预设的音量阈值(不同的声音素材类别对应不同的音量阈值),如果是,则判定对应的数据满足转换条件。对于满足转换条件的数据,将对应的采样音量值和采样时间点存入一个临时转换数组。遍历完成后,该临时转换数组中包含了一组或多组采样音量值和采样时间点。 步骤C、遍历所述临时转换数组,根据读取的采样时间点在建立的临时二进制数据流中写入对应采样音量值的所选声音素材类别的二进制数据流,生成声音素材。例如,所选的声音素材类别为钢琴,那么遍历临时转换数组,依次读取采样时间点,根据采样时间点在建立的临时二进制数据流中对应的位置,写入对应采样音量值的钢琴声音的二进制数据流,则遍历临时转换数组完成后,建立的临时二进制数据流中的数据就是由获取的音频数据转换得到的类别为钢琴的声音素材。
如此,就完成了获取的音频数据到用作混音的声音素材的转换,转换得到的声音素材可以用作混音;另外,获取的音频数据也可以用作混音,具体的混音处理如步骤102所述。步骤102,根据转换所得的至少一个声音素材进行混音处理。根据转换所得的至少一个声音素材进行混音处理,包括将转换所得的至少两个声音素材进行混音处理;或者,将转换所得的至少一个声音素材与获取的音频数据和/或内置的声音素材进行混音处理。由此可见,与现有技术相比,本发明混音的声音素材并不仅限于内置的声音素材,还可以是获取的音频数据、以及根据获取的音频数据转换得到的声音素材。具体的,混音处理的过程为

从参与混音处理的声音素材和/或音频数据中选择最长时间长度的声音素材或音频数据的二进制数据流,并建立临时二进制数据流,临时二进制数据流的时间长度与所述最长时间长度相同。该临时二进制数据流,即混音得到的音频数据的二进制数据流的时间长度与所述的最长时间长度相同。假设参与混音处理的声音素材和/或音频数据有获取的音频数据I、由音频数据I转换得到的声音素材2和内置的声音素材3,假设声音素材3为最长时间长度10分钟,声音素材2为9分钟,音频数据I为8分钟,那么,临时二进制数据流的时间长度为10分钟。遍历选择的最长时间长度的二进制数据流,并顺序读取其他需要混合的声音素材和/或音频数据的二进制数据流,将所述其他声音素材和/或音频数据的二进制数据流的浮点值与所述总的二进制数据流的浮点值进行顺序合并后写入具有最长时间长度的临时二进制数据流中。例如,遍历声音素材3的二进制数据流,同时顺序读取音频数据I和声音素材2的二进制数据流(也可以先读取声音素材2,再读取音频数据I的二进制数据流),将声音素材3的二进制数据流的第一浮点值与音频数据I和声音素材2的第一浮点值进行合并,写入临时二进制数据流中,作为临时二进制数据流的第一浮点值;然后将声音素材3的二进制数据流的第二浮点值与音频数据I和声音素材2的第二浮点值进行合并,写入临时二进制数据流中,作为临时二进制数据流的第二浮点值;依此类推,直到合并完毕,最终得到长度10分钟的混音后的音频数据的二进制数据流。然后,将写入后的临时二进制数据流编译为目标音频格式。例如可以对照WAV文件的编码格式编码为WAV格式的二进制数据流,然后,采用MP3文件的LAME编码算法将WAV格式的二进制数据流编码为MP3格式的二进制数据流。当然,根据需要,也可以编码为其他格式的二进制数据流,例如Ogg等。需要指出的是,在将转换所得的至少两个声音素材进行混音处理时,这两个声音素材可以是由同一个音频数据转换得到的,也可以是由不同的音频数据转换得到的。由此可见,采用本发明的转换处理和混音处理,可以将获取的音频数据转换为声音素材后进行混音,还可以直接将获取的音频数据用作混音,解决现有技术中只能使用内置的声音素材进行混音的缺陷。另外,在混音时,对于参与混音处理的声音素材和/或音频数据,本发明自动选择最长时间长度的二进制数据流作为总的二进制数据流,将其他声音素材和/或音频数据的二进制数据流的浮点值与该总的二进制数据流的浮点值进行顺序合并,不需要用户手动排列各声音素材来实现混音,提高了用户体验度。客户端完成混音后,将得到的音频数据上传到服务器,以供回放。由此可见,本发明实施例提供的混音方法只在完成混音后向服务器请求保存混音后的音频文件,在录音时不与服务器通信,保证了请求服务器的次数最小,降低了服务器的负担,如此,服务器的访问压力减小,从而可以有更多的带宽提供给音频数据的回放,能够支持海量访问,提高了系统兼容性。为了实现上述方法,本发明提供了一种混音装置,该混音装置可以应用于客户端中,如图2所示,包括转换模块10,用于将获取的音频数据转换为用作混音的声音素材;混音模块20,用于根据转换所得的至少一个声音素材进行混音处理。转换模块10进一步用于执行以下操作 步骤a、选择声音素材的类别;步骤b、对获取的音频数据的二进制数据流进行遍历分析,记录符合转换条件的数据对应的采样音量值和采样时间点,并将采样音量值和采样时间点存入临时转换数组中;步骤C、遍历临时转换数组,根据读取的采样时间点在建立的临时二进制数据流中写入对应采样音量值的所选声音素材类别的二进制数据流,生成声音素材。转换模块10进一步用于,重复执行步骤a 步骤C,生成不同类别的声音素材。混音模块20进一步用于,将转换所得的至少两个声音素材进行混音处理;或者,将转换所得的至少一个声音素材与获取的音频数据和/或内置声音素材进行混音处理。混音模块20进一步用于,从参与混音处理的声音素材和/或音频数据中选择最长时间长度的声音素材或音频数据的二进制数据流,并建立临时二进制数据流,临时二进制数据流的时间长度与最长时间长度相同;遍历最长时间长度的二进制数据流,并顺序读取其他需要混合的声音素材和/或音频数据的二进制数据流,将其他声音素材和/或音频数据的二进制数据流的浮点值与最长时间长度的二进制数据流的浮点值进行顺序合并后写入具有最长时间长度的临时二进制数据流中;将写入后的临时二进制数据流编译为目标音频格式。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
1.一种混音方法,其特征在于,该方法包括 将获取的音频数据转换为用作混音的声音素材; 根据转换所得的至少一个声音素材进行混音处理。
2.根据权利要求I所述混音方法,其特征在于,所述将获取的音频数据转换为用作混音的声音素材,具体为 步骤a、选择声音素材的类别; 步骤b、对获取的音频数据的二进制数据流进行遍历分析,记录符合转换条件的数据对应的采样音量值和采样时间点,并将所述采样音量值和采样时间点存入临时转换数组中;步骤C、遍历所述临时转换数组,根据读取的采样时间点在建立的临时二进制数据流中写入对应采样音量值的所选声音素材类别的二进制数据流,生成声音素材。
3.根据权利要求2所述混音方法,其特征在于,该方法进一步包括重复执行步骤a至步骤C,生成不同类别的声音素材。
4.根据权利要求I、2或3所述混音方法,其特征在于,所述根据转换所得的至少一个声音素材进行混音处理,包括 将转换所得的至少两个声音素材进行混音处理;或者, 将转换所得的至少一个声音素材与获取的音频数据和/或内置声音素材进行混音处理。
5.根据权利要求4所述混音方法,其特征在于,所述根据转换所得的至少一个声音素材进行混音处理,具体为 从参与混音处理的声音素材和/或音频数据中选择最长时间长度的声音素材或音频数据的二进制数据流,并建立临时二进制数据流,所述临时二进制数据流的时间长度与所述最长时间长度相同; 遍历所述最长时间长度的二进制数据流,并顺序读取其他需要混合的声音素材和/或音频数据的二进制数据流,将所述其他声音素材和/或音频数据的二进制数据流的浮点值与所述最长时间长度的二进制数据流的浮点值进行顺序合并后写入具有最长时间长度的临时二进制数据流中; 将写入后的临时二进制数据流编译为目标音频格式。
6.一种混音装置,其特征在于,该装置包括 转换模块,用于将获取的音频数据转换为用作混音的声音素材; 混音模块,用于根据转换所得的至少一个声音素材进行混音处理。
7.根据权利要求6所述混音装置,其特征在于,所述转换模块进一步用于执行以下操作 步骤a、选择声音素材的类别; 步骤b、对获取的音频数据的二进制数据流进行遍历分析,记录符合转换条件的数据对应的采样音量值和采样时间点,并将所述采样音量值和采样时间点存入临时转换数组中;步骤C、遍历所述临时转换数组,根据读取的采样时间点在建立的临时二进制数据流中写入对应采样音量值的所选声音素材类别的二进制数据流,生成声音素材。
8.根据权利要求7所述混音装置,其特征在于,所述转换模块进一步用于,重复执行步骤a 步骤C,生成不同类别的声音素材。
9.根据权利要求6、7或8所述混音装置,其特征在于,所述混音模块进一步用于,将转换所得的至少两个声音素材进行混音处理;或者,将转换所得的至少一个声音素材与所述获取的音频数据和/或内置声音素材进行混音处理。
10.根据权利要求9所述混音装置,其特征在于, 所述混音模块进一步用于,从参与混音处理的声音素材和/或音频数据中选择最长时间长度的声音素材或音频数据的二进制数据流,并建立临时二进制数据流,所述临时二进制数据流的时间长度与所述最长时间长度相同; 遍历所述最长时间长度的二进制数据流,并顺序读取其他需要混合的声音素材和/或音频数据的二进制数据流,将所述其他声音素材和/或音频数据的二进制数据流的浮点值与所述最长时间长度的二进制数据流的浮点值进行顺序合并后写入具有最长时间长度的临时二进制数据流中; 将写入后的临时二进制数据流编译为目标音频格式。
全文摘要
本发明公开了一种混音方法,包括将获取的音频数据转换为用作混音的声音素材;根据转换所得的至少一个声音素材进行混音处理。本发明还提供了一种混音装置,通过本发明,解决了现有技术中只能使用内置的声音素材进行混音的缺陷,提供高了用户体验度。
文档编号G10L19/00GK102867514SQ201110190050
公开日2013年1月9日 申请日期2011年7月7日 优先权日2011年7月7日
发明者董霙, 祁特, 黄珊, 黄悦 申请人:腾讯科技(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1