CN101014073B - 一种实现回声消除的方法、系统及设备 - Google Patents
一种实现回声消除的方法、系统及设备 Download PDFInfo
- Publication number
- CN101014073B CN101014073B CN200710063878XA CN200710063878A CN101014073B CN 101014073 B CN101014073 B CN 101014073B CN 200710063878X A CN200710063878X A CN 200710063878XA CN 200710063878 A CN200710063878 A CN 200710063878A CN 101014073 B CN101014073 B CN 101014073B
- Authority
- CN
- China
- Prior art keywords
- audio
- data
- module
- sent
- assembly
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000008030 elimination Effects 0.000 claims description 15
- 238000003379 elimination reaction Methods 0.000 claims description 15
- 238000012856 packing Methods 0.000 claims description 13
- 230000005540 biological transmission Effects 0.000 description 16
- 230000005236 sound signal Effects 0.000 description 11
- 238000001914 filtration Methods 0.000 description 6
- 238000010276 construction Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
Images
Landscapes
- Circuit For Audible Band Transducer (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
Abstract
本发明公开了一种实现回声消除的方法,该方法为:在音频播放侧,总线控制模块将音频设备驱动输出的数据发送给模拟音频输出设备,该模拟音频输出设备将所述数据转换成音频数据,并将该音频数据发送给音频输入设备端的回声消除模块;所述回声消除模块根据所述音频数据进行回声消除。本发明还公开了一种实现回声消除的系统和设备。采用本发明,解决了音频输入设备的回声消除模块无法获得音频输出设备输出的音频数据,而无法完成回声消除的问题。
Description
技术领域
本发明涉及音频处理技术领域,尤其涉及一种实现回声消除的方法、系统及设备。
背景技术
在Windows XP系统中,实现了回声消除的解决方案。
所谓回声消除,是指系统的音频输入设备在进行音频录入时,录入的音频信号源可能有两个:一个是原本需要录入的音频信号,一个是本地音频输出设备输出的音频信号,在这种情况下,两个音频信号源的存在使得音频输出设备播放的音频存在回声,还可能出现音频信号的共振,从而减弱音频播放的效果。为了避免这种现象,需要将音频输出设备输出的音频信号在音频输入设备侧消除,使音频输入设备录入的音频信号源只有原本需要录入的音频信号。
例如,在用户A与用户B使用即时通信工具进行语音聊天时,用户A通过本地的音频输入设备(Microphone1)录入的语音数据到达用户B所在终端的音频输出设备(Speaker2),此时,若不进行回音消除,该语音数据会被用户B所在终端的音频输入设备(Microphone2)录入,那么,此时用户A从本地的音频输出设备(Speaker1)听到的不仅是用户B的说话内容,他还听到了刚才自己所说的话。同样,在用户A这一侧若不进行回音消除,用户B也会听到自己之前所说的话。所以,为了使用户A和用户B都只听到对方的语音内容,而不会听到自己之前所说的话,需要在两侧实现回音消除,即将Speaker1输出的音频信号在Microphone1消除,将Speaker2输出的音频信号在Microphone2消除。
已经实现的回声消除的解决方案是:在音频输出设备的设备驱动上加载一个过滤驱动(Filter Driver1),在系统的音频输入设备(Microphone)的设备驱动上加载另一个回声消除过滤驱动(Filter Driver2),音频输出设备进行放音时,Filter Driver1将音频输出设备输出的音频数据截取出来,并将截取的音频数据发送给音频输入设备的Filter Driver2,Filter Driver2利用回声消除算法,将该音频数据进行消除。
下面结合现有的实现音频播放的系统模块图,如图1所示,对上述方案的具体实现流程进行说明,如图2所示:
系统需要放音时,音频播放程序(Audio Player)从音频文件中读取原始音频数据,并将该原始音频数据发送给音频处理模块进行音频处理,该音频处理模块包括标准音频处理模块(DirectSound)和音频混合模块(Kmixer);
音频混合模块(Kmixer)输出的音频数据到达过滤驱动模块(Filter Driver),该模块一面将接收到的音频数据发送给音频设备驱动(USBAudio),一面将接收到的音频数据拷贝一份并送入音频输入设备的回声消除模块;
音频设备驱动(USBAudio)将过滤驱动模块(Filter Driver)送来的音频数据拆分打包成USB包数据,并将该USB包数据发送给USB传输控制模块(USBD)。同时,在音频输入设备这一端,回声消除模块利用回声消除算法将过滤驱动模块(Filter Driver)送来的音频数据进行回声消除;
USB传输控制模块(USBD)将接收到的USB包数据通过USB总线发送给物理的音频输出设备,由该设备进行放音。
在现有方案中,由于一些原因,比如:音频设备驱动进行了升级,新升级的设备驱动对数据输出进行了保护处理或其他处理,使得我们无法通过在音频设备驱动上加载过滤驱动来获得音频数据,并将该数据送入音频输入设备的回声消除模块,那么在音频输入设备端,由于得不到音频数据,就无法完成回声消除。
发明内容
本发明提供一种实现回声消除的方法、系统及设备,用以解决现有技术中由于音频输出设备端无法将音频数据发送给音频输入设备端,而使得音频输入设备端无法完成回声消除的问题。
本发明提供一种实现回声消除的方法,应用于包括音频设备驱动、总线控制模块和音频输入设备的系统中,并且在所述音频输入设备端加载有回声消除???模块,该方法包括以下步骤:
A.在音频播放侧,总线控制模块将音频设备驱动发来的数据发送给模拟音频输出设备,该模拟音频输出设备将所述数据转换成音频数据,并将该音频数据发送给音频输入设备端的回声消除模块;
B.所述回声消除模块根据所述音频数据进行回声消除。
所述模拟音频输出设备由设备模拟开发构架DSF组件构成。
所述系统还包括音频播放程序、标准音频处理模块、音频混合模块,并且所述系统分为应用层、内核层,所述音频播放程序和所述标准音频处理模块位于所述系统的应用层,所述音频混合模块、所述音频设备驱动和所述总线控制模块位于所述系统的内核层,所述模拟音频输出设备包括数据分流组件和第一模拟组件,所述数据分流组件位于所述系统的内核层,所述第一模拟组件位于所述系统的应用层,在步骤A之前,该方法进一步包括:
A01.所述音频播放程序从音频文件中读取原始音频数据,并将读取的原始音频数据发送给所述标准音频处理模块;所述标准音频处理模块将进行音频处理后的数据发送给所述音频混合模块;
A02.所述音频混合模块将进行音频处理后的音频数据发送给音频设备驱动;所述音频设备驱动将所述音频数据进行打包,并将打包后的数据发送给总线控制模块;
则步骤A包括:
A1.所述总线控制模块将所述音频设备驱动发来的数据通过总线发送给所述数据分流组件,该数据分流组件将所述数据发送给所述第一模拟组件,该第一模拟组件将所述数据转换成音频数据,并将该音频数据发送给音频输入设备端的回声消除模块。
所述系统还包括物理音频输出设备,所述模拟音频输出设备还包括第二模拟组件,该第二模拟组件位于所述系统的应用层,在步骤A1中所述数据分流组件将所述数据发送给所述第一模拟组件时,该方法进一步包括:
所述数据分流组件将所述数据拷贝一份并发送给所述第二模拟组件,所述第二模拟组件将所述数据转换成原始音频数据,并将转换后的原始音频数据发送给所述标准音频处理模块;
所述标准音频处理模块将进行音频处理后的数据发送给所述音频混合模块;所述音频混合模块将进行音频处理后的音频数据发送给所述音频设备驱动;所述音频设备驱动将所述音频数据进行打包,并将打包后的数据发送给所述总线控制模块;
所述总线控制模块通过总线将所述数据发送给所述物理音频输出设备,所述物理音频输出设备进行音频播放。
所述回声消除模块利用回声消除算法将所述音频数据进行回声消除。
本发明提供一种实现回声消除的系统,该系统包括:
音频设备驱动,用于将经过音频处理和打包处理的数据发送给总线控制模块;
总线控制模块,用于将音频设备驱动发来的数据发送给模拟音频输出设备;
模拟音频输出设备,用于接收总线控制模块发来的数据,将该数据转换成音频数据,并将该音频数据发送给音频输入设备的回声消除模块;
音频输入设备,该设备加载有回声消除模块,用于将所述音频数据进行回声消除。
所述模拟音频输出设备由设备模拟开发构架DSF组件构成。
该系统进一步包括:
音频读取模块,用于从音频文件中读取原始音频数据,并将读取的原始音频数据发送给标准音频处理模块;
标准音频处理模块,用于将音频读取模块发来的原始音频数据进行音频处理,并将进行音频处理后的数据发送给音频混合模块;
音频混合模块,用于将标准音频处理模块发来的数据进行音频处理,并将进行音频处理后的音频数据发送给所述音频设备驱动;
则所述音频设备驱动用于:将音频混合模块发来的音频数据进行打包,并将打包后的数据发送给所述总线控制模块;
则所述总线控制模块用于:将所述音频设备驱动发来的数据通过总线发送给所述模拟音频输出设备;
则所述模拟音频输出设备包括:
数据分流组件,用于接收所述总线控制模块发来的数据,并将该数据发送给第一模拟组件;
第一模拟组件,用于将所述数据转换成音频数据,并将该音频数据发送给音频输入设备的回声消除模块。
所述数据分流组件进一步用于:
将所述总线控制模块发来的数据拷贝一份并发送给第二模拟组件;
则所述模拟音频输出设备进一步包括:
第二模拟组件,用于将所述数据转换成原始音频数据,并将该原始音频数据发送给所述标准音频处理模块;
则所述标准音频处理模块还用于:将第二模拟组件发来的原始音频数据进行音频处理,并将进行音频处理后的数据发送给音频混合模块;
则所述音频混合模块还用于:将标准音频处理模块发来的数据进行音频处理,并将进行音频处理后的音频数据发送给所述音频设备驱动;
则所述音频设备驱动还用于:将音频混合模块发来的音频数据进行打包,并将打包后的数据发送给所述总线控制模块;
则所述总线控制模块还用于:将所述音频设备驱动发来的数据通过总线发送给物理音频输出设备;
则该系统进一步包括:
物理音频输出设备,用于接收到总线控制模块发来的数据后进行音频播放。
本发明提供一种音频输出设备,该设备包括:
模拟音频输出模块,用于接收总线控制模块发来的数据,将该数据转换成音频数据,并将该音频数据发送给音频输入设备的回声消除模块。
所述模拟音频输出模块包括:
数据分流组件,用于接收总线控制模块发来的数据,并将该数据发送给第一模拟组件;
第一模拟组件,用于将所述数据转换成音频数据,并将该音频数据发送给音频输入设备的回声消除模块。
所述数据分流组件进一步用于:
将总线控制模块发来的数据拷贝一份并发送给第二模拟组件;
则所述模拟音频输出模块进一步包括:
第二模拟组件,用于将所述数据转换成原始音频数据,并将该原始音频数据发送给标准音频处理模块。
本发明中,在音频播放侧,总线控制模块将音频设备驱动输出的数据发送给模拟音频输出设备,模拟音频输出设备将接收到的数据转换成音频数据,并将该音频数据发送给音频输入设备端的回声消除模块,然后,回声消除模块将接收到的音频数据进行回声消除。这样,通过在音频播放侧增加模拟音频输出设备,并由模拟音频输出设备将转换后的音频数据发送给音频输入设备端的回声消除模块,使得音频输入设备端的回声消除模块能够获得音频输出设备的音频数据,从而完成回声消除。
附图说明
图1为现有技术中实现回声消除的系统结构图;
图2为现有技术中实现回声消除的方法流程图;
图3为本发明实现回声消除的系统结构图;
图4为本发明实现回声消除的方法流程图;
图5为本发明的系统结构图;
图6为本发明的设备结构图。
具体实施方式
本发明提供一种实现回声消除的方法,本方法中,在音频播放侧,首先注册安装一个模拟音频输出设备,在播放音频时,模拟音频输出设备可以将音频数据发送给音频输入设备端的回声消除模块,由回声消除模块完成回声消除。
参见图3,为本发明方法可以应用的系统结构图,该系统分为三层:应用层、内核层和物理层,每一层由不同的模块组件构成,实现不同的功能。该系统基于USB接口实现,主要由五类组件构成,分别是:
1.Microsoft操作系统标准组件,包括标准音频处理模块(DirectSound)、音频混合模块(Kmixer)、音频设备的设备驱动(USBAudio)和USB传输控制模块(USBD)。标准音频处理模块位于系统的应用层,音频混合模块、音频设备的设备驱动和USB传输控制模块位于系统的内核层;
其中,标准音频处理模块和音频混合模块对原始音频数据进行音频处理,音频设备的设备驱动将上述两个模块处理后的音频数据拆分打包成USB包数据,USB传输控制模块再将USB包数据通过USB总线发送给模拟音频输出设备或物理音频输出设备;
2.模拟音频输出设备;
本发明中,在音频播放侧,需要首先注册安装模拟音频输出设备,该设备具有与物理音频输出设备相同的接口。增加了模拟音频输出设备后,系统中存在两种音频输出设备,一个是原有的物理音频输出设备,一个就是增加的模拟音频输出设备。
上述模拟音频输出设备可以是由DSF组件模拟形成的DSF模拟扬声器(DSF Simulator Speaker),该DSF模拟扬声器包括DSF运行支持组件(DSFRunTime)、数据分流组件(SoftUSB Audio Speaker)、DSF模拟的虚拟扬声器组件(USB Speaker DSF Simulator)和音频播放组件(Audio Player)。DSF运行支持组件和数据分流组件块位于系统的内核层,DSF模拟的虚拟扬声器组件和音频播放组件位于系统的应用层。
具体的注册安装方法为:安装DSF RunTime组件后,系统中就会增加一个USB接口,安装SoftUSB Audio Speaker、USB Speaker DSF Simulator和AudioPlayer组件后,系统便成功安装了模拟音频输出设备:DSF模拟扬声器(DSFSimulator Speaker)。
DSF模拟扬声器各个组件的主要功能为:SoftUSB Audio Speaker,用于将USBD送来的USB包数据拷贝一份,将其中的一份USB包数据送给USBSpeaker DSF Simulator组件,将另一份USB包数据送给Audio Player组件;USBSpeaker DSF Simulator组件将接收到的USB包数据转换成音频数据并将该数据发送给音频输入设备的回声消除模块;Audio Player组件将接收到的USB包数据转换成原始音频数据并将该数据发送给标准音频处理模块(DirectSound)。
3.物理音频设备,包括物理音频输出设备(Speaker)和物理音频输入设备(USB Microphone),均位于系统的物理层;
4.在物理音频输入设备端的回声消除模块,包括音频过滤驱动控制模块(Audio Filter Control)和音频过滤驱动模块(Audio Filterfor AEC)。音频过滤驱动控制模块位于系统的应用层,用于接收音频输出设备端的音频数据,并将该数据发送给音频过滤驱动模块,音频过滤驱动模块加载在音频输入设备的设备驱动上,位于系统的内核层,用于利用回声消除算法进行回声消除;
5.音频播放程序(Audio Player)和音频录制程序(Audio Capture),均位于系统的应用层。
下面结合图3所示的系统模块图,对上述方案的具体实现流程进行说明,如图4所示:
步骤401:在音频播放侧,将模拟音频输出设备设置为音频播放模块,需要放音时,音频播放程序从音频文件中读取原始音频数据,将该原始音频数据发送给音频处理模块,该音频处理模块包括标准音频处理模块和音频混合模块;
步骤402-403:标准音频处理模块和音频混合模块对音频播放程序送来的原始音频数据进行音频处理;
步骤404:音频混合模块输出的音频数据到达音频设备驱动模块,该模块将音频混合模块送来的音频数据拆分打包成USB包数据,并将该USB包数据发送给USB传输控制模块。
步骤405:USB传输控制模块根据步骤401中的设置,将接收到的USB包数据通过USB总线发送给模拟音频输出设备;
步骤406:模拟音频输出设备的SoftUSB Audio Speaker组件将USB传输控制模块送来的USB包数据拷贝一份,将其中的一份USB包数据送给USBSpeaker DSF Simulator组件,将另一份USB包数据送给Audio Player组件;USB Speaker DSF Simulator组件将接收到的USB包数据转换成音频数据并将该数据发送给音频输入设备的回声消除模块,由回声消除模块利用回声消除算法,将接收到的音频数据进行回声消除;Audio Player组件将接收到的USB包数据转换成原始音频数据并将该数据发送给标准音频处理模块,由物理音频输出设备进行放音。
这里,模拟音频输出设备在将音频数据送入回声消除模块的同时,还需要将原始音频数据送入物理音频输出设备,是因为模拟音频输出设备的作用仅是获得音频数据,并将音频数据送入回声消除模块,而不具备实际意义上的音频播放功能。
步骤407-411:标准音频处理模块和音频混合模块对模拟音频输出设备的Audio Player组件送来的原始音频数据进行音频处理;音频混合模块输出的音频数据到达音频设备驱动模块,该模块将音频混合模块送来的音频数据拆分打包成USB包数据,并将该USB包数据发送给USB传输控制模块;USB传输控制模块将接收到的USB包数据通过USB总线发送物理音频输出设备,该设备进行放音。
需要说明的是,在音频播放侧,如果将物理音频输出设备设置为音频播放模块,则步骤405中USB传输控制模块直接将接收到的USB包数据通过USB总线发送给物理音频输出设备,而不是模拟音频输出设备,由物理音频输出设备直接进行放音。
另外,在本发明中,我们的模拟音频输出设备是基于USB接口的。同样,该模拟音频输出设备也可以是基于其它接口的,如基于PCI接口、1394接口等等。所不同的是,在基于其它接口时,由PCI传输控制模块通过PCI总线将音频设备驱动输出的数据发送给模拟音频输出设备,或者由1394传输控制模块通过1394总线将音频设备驱动输出的数据发送给模拟音频输出设备,我们将USB传输控制模块、PCI传输控制模块或1394传输控制模块等统称为总线控制模块。
参见图5,本发明还提供一种实现回声消除的系统,该系统包括音频设备驱动501、总线控制模块502、模拟音频输出设备503和音频输入设备504,其中,音频设备驱动501,用于输出经过音频处理和打包处理的数据;总线控制模块502,用于将音频设备驱动输出的数据发送给模拟音频输出设备;模拟音频输出设备503,用于接收总线控制模块发来的数据,将该数据转换成音频数据,并将该音频数据发送给音频输入设备的回声消除模块;音频输入设备504,该设备上加载有回声消除模块5041,用于将所述音频数据进行回声消除。
模拟音频输出设备503由设备模拟开发构架DSF组件构成。
该系统进一步包括音频读取模块505、标准音频处理模块506和音频混合模块507,其中,音频读取模块505,用于从音频文件中读取原始音频数据,并将读取的原始音频数据发送给标准音频处理模块;标准音频处理模块506,用于将音频读取模块发来的原始音频数据进行音频处理,并将进行音频处理后的数据发送给音频混合模块;音频混合模块507,用于将标准音频处理模块发来的数据进行音频处理,并将进行音频处理后的音频数据发送给所述音频设备驱动;
则所述音频设备驱动501用于:将音频混合模块发来的音频数据进行打包,并将打包后的数据发送给所述总线控制模块;所述总线控制模块502用于:将所述音频设备驱动发来的数据通过总线发送给所述模拟音频输出设备;
则模拟音频输出设备503包括数据分流组件5031和第一模拟组件5032,其中,数据分流组件5031,用于接收所述总线控制模块发来的数据,并将该数据发送给第一模拟组件;第一模拟组件5032,用于将所述数据转换成音频数据,并将该音频数据发送给音频输入设备的回声消除模块。
数据分流组件5031进一步用于:将所述总线控制模块发来的数据拷贝一份并发送给第二模拟组件;则模拟音频输出设备503进一步包括第二模拟组件5033,用于将所述数据转换成原始音频数据,并将该原始音频数据发送给所述标准音频处理模块;
则标准音频处理模块506还用于:将第二模拟组件发来的原始音频数据进行音频处理,并将进行音频处理后的数据发送给音频混合模块;音频混合模块507还用于:将标准音频处理模块发来的数据进行音频处理,并将进行音频处理后的音频数据发送给所述音频设备驱动;音频设备驱动501还用于:将音频混合模块发来的音频数据进行打包,并将打包后的数据发送给所述总线控制模块;总线控制模块502还用于:将所述音频设备驱动发来的数据通过总线发送给物理音频输出设备;
则该系统进一步包括物理音频输出设备508,用于接收到总线控制模块发来的数据后进行音频播放。
参见图6,本发明还提供一种音频输出设备,可以应用于实现回声消除的系统中,该设备包括模拟音频输出模块601,用于接收总线控制模块发来的数据,将该数据转换成音频数据,并将该音频数据发送给音频输入设备的回声消除模块。
模拟音频输出模块601包括数据分流组件6011和第一模拟组件6012,其中,数据分流组件6011,用于接收总线控制模块发来的数据,并将该数据发送给第一模拟组件;第一模拟组件6012,用于将所述数据转换成音频数据,并将该音频数据发送给音频输入设备的回声消除模块。
数据分流组件6011进一步用于:将总线控制模块发来的数据拷贝一份并发送给第二模拟组件;则模拟音频输出模块601进一步包括第二模拟组件6013,用于将所述数据转换成原始音频数据,并将该原始音频数据发送给发送给标准音频处理模块。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (6)
1.一种实现回声消除的方法,应用于包括音频设备驱动、总线控制模块和音频输入设备的系统中,所述系统还包括音频播放程序、标准音频处理模块、音频混合模块和物理音频输出设备;所述系统分为应用层、内核层,所述音频播放程序和所述标准音频处理模块位于所述系统的应用层,所述音频混合模块、所述音频设备驱动和所述总线控制模块位于所述系统的内核层;并且在所述音频输入设备端加载有回声消除模块,其特征在于,该系统还包括模拟音频输出设备,所述模拟音频输出设备与所述物理音频输出设备具有相同的接口,所述模拟音频输出设备包括数据分流组件、第一模拟组件和第二模拟组件,所述数据分流组件位于所述系统的内核层,所述第一模拟组件和第二模拟组件位于所述系统的应用层,该方法包括以下步骤:
A01.所述音频播放程序从音频文件中读取原始音频数据,并将读取的原始音频数据发送给所述标准音频处理模块;所述标准音频处理模块将进行音频处理后的数据发送给所述音频混合模块;
A02.所述音频混合模块将进行音频处理后的音频数据发送给所述音频设备驱动;所述音频设备驱动将所述音频数据进行打包处理,并将打包后的数据发送给所述总线控制模块;
A1.所述总线控制模块将所述音频设备驱动发来的数据通过总线发送给所述数据分流组件,该数据分流组件将所述数据发送给所述第一模拟组件,该第一模拟组件将所述数据转换成音频数据,并将该音频数据发送给音频输入设备端的回声消除模块;
B.所述回声消除模块根据所述音频数据进行回声消除;
在步骤A1中所述数据分流组件将所述数据发送给所述第一模拟组件时,该方法进一步包括:
所述数据分流组件将所述数据拷贝一份并发送给所述第二模拟组件,所述第二模拟组件将所述数据转换成原始音频数据,并将转换后的原始音频数据发送给所述标准音频处理模块;
所述标准音频处理模块将进行音频处理后的数据发送给所述音频混合模块;所述音频混合模块将进行音频处理后的音频数据发送给所述音频设备驱动;所述音频设备驱动将所述音频数据进行打包处理,并将打包处理后的数据发送给所述总线控制模块;
所述总线控制模块通过总线将所述数据发送给所述物理音频输出设备,所述物理音频输出设备进行音频播放。
2.如权利要求1所述的方法,其特征在于,所述模拟音频输出设备由设备模拟开发构架DSF组件构成。
3.如权利要求1所述的方法,其特征在于,所述回声消除模块利用回声消除算法将所述音频数据进行回声消除。
4.一种实现回声消除的系统,其特征在于,该系统包括:
音频读取模块,用于从音频文件中读取原始音频数据,并将读取的原始音频数据发送给标准音频处理模块;
标准音频处理模块,用于将音频读取模块发来的原始音频数据进行音频处理,并将进行音频处理后的数据发送给音频混合模块;
音频混合模块,用于将标准音频处理模块发来的数据进行音频处理,并将进行音频处理后的音频数据发送给所述音频设备驱动;
音频设备驱动,用于将音频混合模块发来的音频数据进行打包,并将打包后的数据发送给所述总线控制模块;
总线控制模块,用于将音频设备驱动发来的数据通过总线发送给模拟音频输出设备;
模拟音频输出设备,包括数据分流组件、第一模拟组件和第二模拟组件;其中,数据分流组件,用于接收所述总线控制模块发来的数据,并将该数据发送给第一模拟组件;第一模拟组件,用于将所述数据转换成音频数据,并将该音频数据发送给音频输入设备的回声消除模块;
音频输入设备,该设备加载有回声消除模块,用于将所述音频数据进行回声消除;
所述数据分流组件进一步用于:
将所述总线控制模块发来的数据拷贝一份并发送给所述第二模拟组件;
所述第二模拟组件,用于将所述数据转换成原始音频数据,并将该原始音频数据发送给所述标准音频处理模块;
则所述标准音频处理模块还用于:将第二模拟组件发来的原始音频数据进行音频处理,并将进行音频处理后的数据发送给音频混合模块;
则所述音频混合模块还用于:将标准音频处理模块发来的数据进行音频处理,并将进行音频处理后的音频数据发送给所述音频设备驱动;
则所述音频设备驱动还用于:将音频混合模块发来的音频数据进行打包,并将打包后的数据发送给所述总线控制模块;
则所述总线控制模块还用于:将所述音频设备驱动发来的数据通过总线发送给物理音频输出设备;
所述物理音频输出设备,用于接收到总线控制模块发来的数据后进行音频播放。
5.如权利要求4所述的系统,其特征在于,所述模拟音频输出设备由设备模拟开发构架DSF组件构成。
6.一种音频输出设备,其特征在于,该设备包括:
模拟音频输出模块,包括数据分流组件、第一模拟组件和第二模拟组件,其中:
数据分流组件,用于接收总线控制模块发来的数据,并将该数据发送给第一模拟组件;将总线控制模块发来的数据拷贝一份并发送给第二模拟组件;
第一模拟组件,用于将所述数据转换成音频数据,并将该音频数据发送给音频输入设备的回声消除模块;
第二模拟组件,用于将所述数据转换成原始音频数据,并将该原始音频数据发送给标准音频处理模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710063878XA CN101014073B (zh) | 2007-02-13 | 2007-02-13 | 一种实现回声消除的方法、系统及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710063878XA CN101014073B (zh) | 2007-02-13 | 2007-02-13 | 一种实现回声消除的方法、系统及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101014073A CN101014073A (zh) | 2007-08-08 |
CN101014073B true CN101014073B (zh) | 2011-06-29 |
Family
ID=38701352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710063878XA Expired - Fee Related CN101014073B (zh) | 2007-02-13 | 2007-02-13 | 一种实现回声消除的方法、系统及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101014073B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101291376B (zh) * | 2008-06-18 | 2011-08-17 | 北京中星微电子有限公司 | 一种确定设备对象的方法与装置 |
CN103167197B (zh) * | 2011-12-19 | 2015-01-28 | 中兴通讯股份有限公司 | 一种共享音频降噪和消回音功能的方法和终端 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6778671B1 (en) * | 1998-12-14 | 2004-08-17 | Intel Corporation | Method of reference to echo time alignment for facilitation of echo cancellation |
-
2007
- 2007-02-13 CN CN200710063878XA patent/CN101014073B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6778671B1 (en) * | 1998-12-14 | 2004-08-17 | Intel Corporation | Method of reference to echo time alignment for facilitation of echo cancellation |
Also Published As
Publication number | Publication date |
---|---|
CN101014073A (zh) | 2007-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8065026B2 (en) | Vehicle computer system with audio entertainment system | |
CN107592592A (zh) | 显示面板、移动终端及屏幕发声控制方法 | |
CN101729625B (zh) | 一种手机马达的驱动方法及移动设备 | |
KR100631527B1 (ko) | 임베디드 시스템의 운용 소프트웨어 업그레이드 장치와방법 | |
CN101834929B (zh) | 音频播放系统及方法 | |
CN101673551A (zh) | 信息处理装置和信息处理方法 | |
CN101014073B (zh) | 一种实现回声消除的方法、系统及设备 | |
CN106599680A (zh) | 一种设置应用程序权限的方法、装置及电子设备 | |
WO2022222292A1 (zh) | 功放适配方法、终端设备、存储介质及计算机程序产品 | |
CN115033230B (zh) | 嵌入式硬件平台的驱动程序生成方法、装置、设备及介质 | |
CN113992965A (zh) | 一种低延迟传输方法及系统 | |
CN108495235A (zh) | 一种重低音的分离方法、装置、计算机设备及存储介质 | |
US10372655B1 (en) | Memory-mapped state bus for integrated circuit | |
CN103365818A (zh) | Usb组合设备及其实现方法 | |
WO2022042327A1 (zh) | 音频驱动马达的通路配置方法及设备 | |
CN108132771A (zh) | 一种Android系统双屏异显的两路音频实现方法 | |
CN113535279A (zh) | Linux平台与安卓应用共享音频设备的方法及装置 | |
CN102664028A (zh) | 将输入声卡的模拟信号转换为数字信号输出的方法 | |
CN202351993U (zh) | 一种飞机座舱语音告警系统 | |
CN108091342A (zh) | 车载多媒体语音降噪模块 | |
CN113286182B (zh) | 消除tv与拾音外设之间回音的方法和系统 | |
CN103198852A (zh) | 车载多媒体系统及该车载多媒体系统的后座娱乐系统 | |
CN115223582B (zh) | 一种音频的噪声处理方法、系统、电子装置及介质 | |
CN213024346U (zh) | 一种智能交互设备 | |
CN116841950A (zh) | 音频数据传输方法、装置、芯片及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110629 Termination date: 20120213 |