CN106601263A - 一种获取声卡和麦克风声音并进行混音的方法及系统 - Google Patents

一种获取声卡和麦克风声音并进行混音的方法及系统 Download PDF

Info

Publication number
CN106601263A
CN106601263A CN201611092295.5A CN201611092295A CN106601263A CN 106601263 A CN106601263 A CN 106601263A CN 201611092295 A CN201611092295 A CN 201611092295A CN 106601263 A CN106601263 A CN 106601263A
Authority
CN
China
Prior art keywords
audio mixing
sound card
sound
voice data
mike
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.)
Pending
Application number
CN201611092295.5A
Other languages
English (en)
Inventor
杨亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Douyu Network Technology Co Ltd
Original Assignee
Wuhan Douyu Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201611092295.5A priority Critical patent/CN106601263A/zh
Publication of CN106601263A publication Critical patent/CN106601263A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/003Changing voice quality, e.g. pitch or formants

Landscapes

  • Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Circuit For Audible Band Transducer (AREA)

Abstract

本发明公开了一种获取声卡和麦克风声音并进行混音的方法,涉及多媒体应用技术领域,包括采集声卡音频数据和麦克风的音频数据;使用采集到的音频数据的声音位数表示其采样值,对全部采集到的音频数据的采样值进行数据归一化;设置声卡混音权重和麦克风混音权重;根据声卡混音权重和麦克风混音权重计算出混音后的音频数据的采样值;根据混音后的音频数据的采样值输出混音后的音频数据。本发明可保证混音后音频数据的声音质量且可根据用户需求调整混音输出属性本发明还公开了一种获取声卡和麦克风声音并进行混音的系统。

Description

一种获取声卡和麦克风声音并进行混音的方法及系统
技术领域
本发明涉及多媒体应用技术领域,具体涉及一种获取声卡和麦克风声音并进行混音的方法及系统。
背景技术
获取系统声卡和麦克风的声音是一个应用比较广泛的功能,最常见的有QQ的远程协助功能、一些监控软件以及一些直播软件、视频会议等,都会对系统声卡以及麦克风进行实时的声音采集,并利用相关的音频编码器对采集到的声卡和麦克风声音进行编码,然后利用网络进行传输。现在一般通过对采集到的声卡和麦克风声音直接线性叠加后求平均值的方法计算出混音后的音频数据。其缺点是对于原音频数据的衰减过大,影响声音质量。
同时,采用直接线性叠加后求平均值的方法在混音后只能输出固定频率的声音,而无法根据用户的需求调整声卡或麦克风的声音数据所占比例。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种获取声卡和麦克风声音并进行混音的方法及系统,可获取声卡和麦克风声音并进行混音,保证混音后音频数据的声音质量且可根据用户需求调整混音输出属性。
为达到以上目的,本发明采取的技术方案是:
采集声卡和麦克风的音频数据,并使用该音频数据的声音位数表示其采样值,对采集到的音频数据的采样值进行数据归一化,并设置声卡混音权重和麦克风混音权重,所述声卡混音权重为声卡的音频数据占混音后的音频数据的比值,所述麦克风混音权重为麦克风的音频数据占混音后的音频数据的比值;根据声卡混音权重和麦克风混音权重计算出混音后的音频数据的采样值,根据混音后的音频数据的采样值输出混音后的音频数据。
在上述技术方案的基础上,混音后的音频数据的采样值=声卡音频数据的采样值*声卡混音权重+麦克风音频数据的采样值*麦克风混音权重。
在上述技术方案的基础上,采集声卡音频数据和麦克风的音频数据的具体过程包括:
创建IMMDeviceEnumerator接口;
通过IMMDeviceEnumerator接口分别获取声卡和者麦克风对应的IMMDevice接口;
通过IMMDevice接口获取IAudioClient接口;
通过IAudioClient接口获取到IAudioCaptureClient接口;
实时监测声卡或麦克风中是否有数据;
监测到有数据时,调用通过IAudioCaptureClient接口获取声卡或麦克风中的声音数据。
在上述技术方案的基础上,将声卡混音权重和麦克风混音权重设置为等值,输出的混音中声卡的声音与麦克风的声音均匀输出。
在上述技术方案的基础上,设置声卡混音权重大于麦克风混音权重,输出的混音突出声卡的声音而抑制麦克风的声音。
在上述技术方案的基础上,设置声卡混音权重小于麦克风混音权重,输出的混音抑制声卡的声音而突出麦克风的声音。
在上述技术方案的基础上,声卡混音权重与麦克风混音权重之和为1。
在上述技术方案的基础上,将全部采集到的音频数据的采样值归一化到[-1,1]范围内。
在上述技术方案的基础上,混音后的音频数据的采样值大于1时,将混音后的音频数据的采样值算为1;混音后的音频数据的采样值小于-1时,将混音后的音频数据的采样值算为-1。
本发明还公开了一种获取声卡和麦克风声音并进行混音的系统,包括:
音频获取模块,用于采集声卡音频数据和麦克风的音频数据;
归一处理模块,用于使用采集到的音频数据的声音位数表示其采样值,对全部采集到的音频数据的采样值进行数据归一化;
混音处理模块,用于设置声卡混音权重和麦克风混音权重;根据声卡混音权重和麦克风混音权重计算出混音后的音频数据的采样值;根据混音后的音频数据的采样值输出混音后的音频数据。
与现有技术相比,本发明的优点在于:
(1)本发明采集声卡和麦克风的音频数据并对全部采集到的音频数据的采样值进行数据归一化,再根据用户需求设置声卡混音权重和麦克风混音权重,计算出混音后的音频数据的数值。采用归一化算法与直接求平均值的算法相比声音保真度更佳,可保证混音后音频数据的声音质量;同时可根据用户需求调整混音输出属性。
(2)本发明在混音后的音频数据的采样值大于1时,将混音后的音频数据的采样值算为1;在混音后的音频数据的采样值小于-1时,将混音后的音频数据的采样值算为-1,从而实现对混音后的音频数据的数据溢出的处理,避免混音后的音频数据的上溢出和下溢出,避免出现溢出的干扰噪音。
附图说明
图1为本发明实施例中获取声卡和麦克风声音并进行混音的方法的流程示意图;
图2为本发明实施例中获取声卡和麦克风声音并进行混音的方法的步骤S1的流程示意图;
图3为本发明实施例中获取声卡和麦克风声音并进行混音的系统的结构示意图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
参见图1所示,本发明实施例提供一种获取声卡和麦克风声音并进行混音的方法,包括:
S1,采集声卡音频数据和麦克风的音频数据;
S2,使用采集到的音频数据的声音位数表示其采样值,对全部采集到的音频数据的采样值进行数据归一化;将全部采集到的音频数据的采样值归一化到[-1,1]范围内。
例如,通常采用的音频数据的声音位数最高为128位,系统一般将高频声音的声音位数记为正数,将低频声音的声音位数记为负数,因此音频数据的声音位数在[-128,128]范围内。将实际的音频数据的采样值均除以128即可将全部音频数据的采样值归一化至[-1,1]范围内。
S3,设置声卡混音权重和麦克风混音权重;
S4,根据声卡混音权重和麦克风混音权重计算出混音后的音频数据的采样值;
例如,设置声卡混音权重为[0,1]范围内,设置麦克风混音权重为为[0,1]范围内,所述声卡混音权重与所述麦克风混音权重之和为1;混音后的音频数据的采样值=声卡音频数据的采样值*声卡混音权重+麦克风音频数据的采样值*麦克风混音权重;
S5,根据混音后的音频数据的采样值输出混音后的音频数据。
参见图2所示,采集声卡音频数据和麦克风的音频数据的具体过程包括:
S101,创建IMMDeviceEnumerator接口;
S102,通过IMMDeviceEnumerator接口分别获取声卡和者麦克风对应的IMMDevice接口;
S103,通过IMMDevice接口获取IAudioClient接口;
S104,通过IAudioClient接口获取到IAudioCaptureClient接口;
S105,实时监测声卡或麦克风中是否有数据;
S106,监测到有数据时,调用通过IAudioCaptureClient接口获取声卡或麦克风中的声音数据。
例如,采集声卡音频数据和麦克风的音频数据的具体过程包括:
1、创建IMMDeviceEnumerator接口
利用系统API函数CoCreateInstance函数,创建一个CLSID(Class ID类标识符,用于实例化对象)为CLSID_MMDeviceEnumerator值的IMMDeviceEnumerator接口,进入下面的步骤。
2、获取对应设备名称的IMMDevice接口
在Windows系统中每一个物理的音频设备都对应一个设备名称,和一个GUID(Global Unique IDentifier)标识符,利用该标识符便可以利用IMMDeviceEnumerator接口的GetDevice方法,获取IMMDevice接口。
3、获取IAudioClient接口
通过上步中获取到的IMMDevice接口,调用器Activate方法获取IAudioClient接口。
4、获取IAudioCaptureClient接口
通过上步中获取到的IAudioClient接口,调用其GetService方法获取到IAudioCaptureClient接口。之后便可以利用该接口来捕获声卡或者麦克风的声音。
5、声音捕获
通过上步获取到的IAudioCaptureClient后,初始化捕获声卡或者麦克风的步骤已经完成,下面便是循环实时获取声音的步骤,主要是调用IAudioCaptureClient的GetNextPacketSize以检测设备中是否有数据,如果有数据则然后调用该接口的GetBuffer方法,获取设备中的声音数据。
设置声卡混音权重=麦克风混音权重,输出的混音中声卡的声音与麦克风的声音均匀输出。
设置声卡混音权重>麦克风混音权重,输出的混音中声卡的声音与麦克风的声音均匀输出。
设置声卡混音权重<麦克风混音权重,输出的混音中声卡的声音与麦克风的声音均匀输出。
例如,1、声卡与麦克风声音均匀输出
根据上述的处理方法,当inputWeight与outputWeight的值都等于0.5时,麦克风与声卡的混合权重是一样的,可以达到均等输出二者声音的目的。
2、突出声卡声音抑制麦克风声音
当outputWeight大于0.5,inputWeight小于0.5时,声卡的混合系数大,麦克风的混合系数小,最终混合后的音频中声卡数据比重大,麦克风数据的比重小,从而声卡声音大,麦克风声音偏小的现象。极端情况下当outputWeight等于1,inputWeight等于0时,混音后的输出音频中就只有声卡的声音,而没有麦克风的声音。
3、突出麦克风声音抑制声卡声音
当outputWeight小于0.5,inputWeight大于0.5时,麦克风的混合系数大,声卡的混合系数小,最终混合后的音频中声卡数据比重小,麦克风数据的表中大,从而声卡声音小,麦克风声音偏大的现象。极端情况下当outputWeight等于0,inputWeight等于1时,混音后的输出音频中就只有麦克风的声音,而没有声卡的声音。
混音后的音频数据的采样值大于1时,将混音后的音频数据的采样值算为1;混音后的音频数据的采样值小于-1时,将混音后的音频数据的采样值算为-1。
参见图3所示,本发明还公开了一种获取声卡和麦克风声音并进行混音的系统,包括:
音频获取模块,用于采集声卡音频数据和麦克风的音频数据;
归一处理模块,用于使用采集到的音频数据的声音位数表示其采样值,对全部采集到的音频数据的采样值进行数据归一化;归一处理模块用于将全部采集到的音频数据的采样值归一化到[-1,1]范围内;
混音处理模块,用于设置声卡混音权重和麦克风混音权重;根据声卡混音权重和麦克风混音权重计算出混音后的音频数据的采样值,混音后的音频数据的采样值=声卡音频数据的采样值*声卡混音权重+麦克风音频数据的采样值*麦克风混音权重;根据混音后的音频数据的采样值输出混音后的音频数据。
所述获取声卡和麦克风声音并进行混音的系统包括溢出处理模块,用于在混音后的音频数据的采样值大于1时,将混音后的音频数据的采样值算为1;在混音后的音频数据的采样值小于-1时,将混音后的音频数据的采样值算为-1。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

Claims (10)

1.一种获取声卡和麦克风声音并进行混音的方法,其特征在于:
采集声卡和麦克风的音频数据,并使用该音频数据的声音位数表示其采样值,对采集到的音频数据的采样值进行数据归一化,并设置声卡混音权重和麦克风混音权重,所述声卡混音权重为声卡的音频数据占混音后的音频数据的比值,所述麦克风混音权重为麦克风的音频数据占混音后的音频数据的比值;根据声卡混音权重和麦克风混音权重计算出混音后的音频数据的采样值,根据混音后的音频数据的采样值输出混音后的音频数据。
2.如权利要求1所述的一种获取声卡和麦克风声音并进行混音的方法,其特征在于:混音后的音频数据的采样值=声卡音频数据的采样值*声卡混音权重+麦克风音频数据的采样值*麦克风混音权重。
3.如权利要求1所述的一种获取声卡和麦克风声音并进行混音的方法,其特征在于:采集声卡音频数据和麦克风的音频数据的具体过程包括:
创建IMMDeviceEnumerator接口;
通过IMMDeviceEnumerator接口分别获取声卡和者麦克风对应的IMMDevice接口;
通过IMMDevice接口获取IAudioClient接口;
通过IAudioClient接口获取到IAudioCaptureClient接口;
实时监测声卡或麦克风中是否有数据;
监测到有数据时,调用通过IAudioCaptureClient接口获取声卡或麦克风中的声音数据。
4.如权利要求1述的一种获取声卡和麦克风声音并进行混音的方法,其特征在于:将声卡混音权重和麦克风混音权重设置为等值,输出的混音中声卡的声音与麦克风的声音均匀输出。
5.如权利要求1所述的一种获取声卡和麦克风声音并进行混音的方法,其特征在于:设置声卡混音权重大于麦克风混音权重,输出的混音突出声卡的声音而抑制麦克风的声音。
6.如权利要求1所述的一种获取声卡和麦克风声音并进行混音的方法,其特征在于:设置声卡混音权重小于麦克风混音权重,输出的混音抑制声卡的声音而突出麦克风的声音。
7.如权利要求4-6任意一项所述的一种获取声卡和麦克风声音并进行混音的方法,其特征在于:声卡混音权重与麦克风混音权重之和为1。
8.如权利要求1所述的一种获取声卡和麦克风声音并进行混音的方法,其特征在于:将全部采集到的音频数据的采样值归一化到[-1,1]范围内。
9.如权利要求1所述的一种获取声卡和麦克风声音并进行混音的方法,其特征在于:混音后的音频数据的采样值大于1时,将混音后的音频数据的采样值算为1;混音后的音频数据的采样值小于-1时,将混音后的音频数据的采样值算为-1。
10.一种获取声卡和麦克风声音并进行混音的系统,其特征在于,包括:
音频获取模块,用于采集声卡音频数据和麦克风的音频数据;
归一处理模块,用于使用采集到的音频数据的声音位数表示其采样值,对全部采集到的音频数据的采样值进行数据归一化;
混音处理模块,用于设置声卡混音权重和麦克风混音权重;根据声卡混音权重和麦克风混音权重计算出混音后的音频数据的采样值;根据混音后的音频数据的采样值输出混音后的音频数据。
CN201611092295.5A 2016-12-01 2016-12-01 一种获取声卡和麦克风声音并进行混音的方法及系统 Pending CN106601263A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611092295.5A CN106601263A (zh) 2016-12-01 2016-12-01 一种获取声卡和麦克风声音并进行混音的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611092295.5A CN106601263A (zh) 2016-12-01 2016-12-01 一种获取声卡和麦克风声音并进行混音的方法及系统

Publications (1)

Publication Number Publication Date
CN106601263A true CN106601263A (zh) 2017-04-26

Family

ID=58594625

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611092295.5A Pending CN106601263A (zh) 2016-12-01 2016-12-01 一种获取声卡和麦克风声音并进行混音的方法及系统

Country Status (1)

Country Link
CN (1) CN106601263A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107910012A (zh) * 2017-11-14 2018-04-13 腾讯音乐娱乐科技(深圳)有限公司 音频数据处理方法、装置及系统
CN110085244A (zh) * 2019-05-05 2019-08-02 广州虎牙信息科技有限公司 直播互动方法、装置、电子设备及可读存储介质
CN112599150A (zh) * 2020-12-14 2021-04-02 广州智讯通信系统有限公司 基于指挥调度系统的音频混音方法、装置及存储介质
CN113542977A (zh) * 2021-07-15 2021-10-22 深圳软牛科技有限公司 合成声卡和麦克风声音的方法、装置和相关组件

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1953048A (zh) * 2005-10-18 2007-04-25 腾讯科技(深圳)有限公司 一种混音的处理方法
CN1953488A (zh) * 2006-11-01 2007-04-25 华为技术有限公司 一种多路语音信号的混音方法及装置
CN102610235A (zh) * 2011-12-22 2012-07-25 深圳市万兴软件有限公司 混音处理方法、装置及智能设备
CN103379424A (zh) * 2012-04-24 2013-10-30 华为技术有限公司 一种混音方法及多点控制服务器
EP2840497A1 (en) * 2012-04-19 2015-02-25 Universitat Politècnica De Catalunya Method, system and an executable piece of code for the virtualisation of a hardware resource associated with a computer system
CN204216969U (zh) * 2014-10-23 2015-03-18 深圳市潮流网络技术有限公司 一种新型会议混音处理的语音通讯设备
CN104835520A (zh) * 2015-03-27 2015-08-12 广州荔支网络技术有限公司 一种在移动设备上录音的方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1953048A (zh) * 2005-10-18 2007-04-25 腾讯科技(深圳)有限公司 一种混音的处理方法
CN1953488A (zh) * 2006-11-01 2007-04-25 华为技术有限公司 一种多路语音信号的混音方法及装置
CN102610235A (zh) * 2011-12-22 2012-07-25 深圳市万兴软件有限公司 混音处理方法、装置及智能设备
EP2840497A1 (en) * 2012-04-19 2015-02-25 Universitat Politècnica De Catalunya Method, system and an executable piece of code for the virtualisation of a hardware resource associated with a computer system
CN103379424A (zh) * 2012-04-24 2013-10-30 华为技术有限公司 一种混音方法及多点控制服务器
CN204216969U (zh) * 2014-10-23 2015-03-18 深圳市潮流网络技术有限公司 一种新型会议混音处理的语音通讯设备
CN104835520A (zh) * 2015-03-27 2015-08-12 广州荔支网络技术有限公司 一种在移动设备上录音的方法及装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107910012A (zh) * 2017-11-14 2018-04-13 腾讯音乐娱乐科技(深圳)有限公司 音频数据处理方法、装置及系统
CN107910012B (zh) * 2017-11-14 2020-07-03 腾讯音乐娱乐科技(深圳)有限公司 音频数据处理方法、装置及系统
CN110085244A (zh) * 2019-05-05 2019-08-02 广州虎牙信息科技有限公司 直播互动方法、装置、电子设备及可读存储介质
CN112599150A (zh) * 2020-12-14 2021-04-02 广州智讯通信系统有限公司 基于指挥调度系统的音频混音方法、装置及存储介质
CN113542977A (zh) * 2021-07-15 2021-10-22 深圳软牛科技有限公司 合成声卡和麦克风声音的方法、装置和相关组件

Similar Documents

Publication Publication Date Title
CN106601263A (zh) 一种获取声卡和麦克风声音并进行混音的方法及系统
CN102752540B (zh) 一种基于人脸识别技术的自动编目方法
CN105005521B (zh) 测试方法及装置
DE112015003945T5 (de) Mehrquellen-Rauschunterdrückung
CN103916723A (zh) 一种声音采集方法以及一种电子设备
CN111092901A (zh) 一种工业互联网平台中设备接入及数据存储的方法
CN106383764A (zh) 一种数据采集方法和设备
CN106328151A (zh) 一种环噪消除系统及其应用方法
CN103680513B (zh) 语音信号处理方法、装置及服务器
CN108961119A (zh) 一种幼儿服务机器人管理系统及方法
CN108319582A (zh) 文本消息的处理方法、装置和服务器
CN103853145A (zh) 汽车故障远程诊断系统
CN101060535B (zh) 一种数字家庭网络设备自动分组的方法
CN104410877A (zh) 网络电视的用户行为数据的处理方法和装置
CN106357781A (zh) 一种资源服务调用接口创建方法及系统
CN104424954B (zh) 噪声估计方法与装置
CN107395722A (zh) 一种集群系统事件交互处理方法
CN107547813A (zh) 一种采集处理多路音频信号的系统和方法
CN106341662A (zh) 一种基于计算机图像处理的可视化系统
CN110138884A (zh) 一种云平台数据处理方法
CN103631210B (zh) 智能家庭中的人机交互方法和系统
CN205812273U (zh) 一种音频输出设备的机震测试工装和系统
CN109215688A (zh) 同场景音频处理方法、装置、计算机可读存储介质及系统
CN205812272U (zh) 一种音频采集工装和云端服务器
CN107799124A (zh) 一种应用于智能语音鼠标的vad检测方法

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20170426

RJ01 Rejection of invention patent application after publication