CN114760389B - 语音通话方法、装置、计算机存储介质及电子设备 - Google Patents
语音通话方法、装置、计算机存储介质及电子设备 Download PDFInfo
- Publication number
- CN114760389B CN114760389B CN202210680560.0A CN202210680560A CN114760389B CN 114760389 B CN114760389 B CN 114760389B CN 202210680560 A CN202210680560 A CN 202210680560A CN 114760389 B CN114760389 B CN 114760389B
- Authority
- CN
- China
- Prior art keywords
- echo
- signal
- voice
- reference signal
- echo reference
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000004891 communication Methods 0.000 title claims description 21
- 238000003860 storage Methods 0.000 title abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 51
- 230000005540 biological transmission Effects 0.000 claims description 13
- 238000005070 sampling Methods 0.000 claims description 9
- 238000004458 analytical method Methods 0.000 claims description 4
- 238000004422 calculation algorithm Methods 0.000 abstract description 29
- 238000010586 diagram Methods 0.000 description 18
- 230000008569 process Effects 0.000 description 17
- 230000006870 function Effects 0.000 description 14
- 230000003044 adaptive effect Effects 0.000 description 10
- 238000003062 neural network model Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 230000006835 compression Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 5
- 230000006978 adaptation Effects 0.000 description 4
- 239000011521 glass Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000001228 spectrum Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000002592 echocardiography Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000001629 suppression Effects 0.000 description 2
- 241000219498 Alnus glutinosa Species 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002028 premature Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M9/00—Arrangements for interconnection not involving centralised switching
- H04M9/08—Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
- H04M9/082—Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic using echo cancellers
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech 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/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech 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/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L2021/02082—Noise filtering the noise being echo, reverberation of the speech
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Telephone Function (AREA)
Abstract
本申请涉及音频处理技术领域,提供了一种语音通话方法、装置、计算机存储介质及电子设备。该方法应用于第一终端,包括:获取计算资源信息;当所述计算资源信息小于或等于计算资源阈值时,获取麦克风信号,对所述麦克风信号进行编码以获取第一语音编码数据;根据所述麦克风信号的长度获取回声参考信号,并对所述回声参考信号进行编码以获取第二语音编码数据;将所述第一语音编码数据和所述第二语音编码数据发送至第二终端,以使所述第二终端根据所述回声参考信号对所述麦克风信号进行回声消除,并播放回声消除后的所述麦克风信号。本申请能避免在一侧通话终端中运行回声消除算法,降低了设备成本,并且提高了回声消除的效率,提高了语音通话质量。
Description
技术领域
本申请涉及音频处理技术领域,具体而言,涉及一种语音通话方法、语音通话装置、计算机存储介质及电子设备。
背景技术
随着科学技术的逐步发展,语音通话可以在多种类型的终端之间实现,例如在手机和手机之间、手机和可通话摄像头之间、手机和可通话手表之间等等。
在语音通话的过程中,设备扬声器或者听筒发出的声音经过各种路径被设备的麦克风采集到,从而形成回声。为了提高通话质量,通话双方的终端都需要进行回声消除,以保证对方终端接收到的语音信号不包含回声。但是两侧的通话终端都进行回声消除整体需要的数据处理时间较长,对语音通话的效果有所影响,并且当其中一个通话终端为可通话摄像头、可通话手表之类的终端时,其硬件配置较低、没有足够的计算资源,无法正常运行回声消除算法,因此会严重影响语音通话质量。
发明内容
本申请的实施例提供了一种语音通话方法、语音通话装置、计算机存储介质及电子设备,进而至少在一定程度上可以简化语音通话过程中的回声消除流程,提高语音通话质量。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
第一方面,提供了一种语音通话方法,应用于第一终端,所述方法包括:获取计算资源信息,所述计算资源信息是与所述第一终端对应的用于进行语音处理的计算资源信息;当所述计算资源信息小于或等于计算资源阈值时,获取麦克风信号,对所述麦克风信号进行编码以获取第一语音编码数据;根据所述麦克风信号的长度获取回声参考信号,并对所述回声参考信号进行编码以获取第二语音编码数据;将所述第一语音编码数据和所述第二语音编码数据发送至第二终端,以使所述第二终端根据所述回声参考信号对所述麦克风信号进行回声消除,并播放回声消除后的所述麦克风信号。
第二方面,提供了一种语音通话装置,配置于第一终端,所述装置包括:获取模块,用于获取计算资源信息,所述计算资源信息是与所述第一终端对应的用于进行语音处理的计算资源信息;第一编码模块,用于当所述计算资源信息小于或等于计算资源阈值时,获取麦克风信号,对所述麦克风信号进行编码以获取第一语音编码数据;第二编码模块,用于根据所述麦克风信号的长度获取回声参考信号,并对所述回声参考信号进行编码以获取第二语音编码数据;发送模块,用于将所述第一语音编码数据和所述第二语音编码数据发送至第二终端,以使所述第二终端根据所述回声参考信号对所述麦克风信号进行回声消除,并播放回声消除后的所述麦克风信号。
在本申请的一个实施例中,所述语音通话装置还包括:写入模块,用于根据所述麦克风信号的采样率设置回声参考信号缓存区,并通过播放线程将播放的语音信号按序写入到所述回声参考信号缓存区中,以形成待采集回声参考信号。
在本申请的一个实施例中,所述语音通话装置还配置为:获取所述回声参考信号缓存区中待采集回声参考信号的写入地址;当所述待采集回声参考信号的写入地址达到所述回声参考信号缓存区的末位地址时,从所述回声参考信号缓存区的首位地址开始写入新的待采集回声参考信号。
在本申请的一个实施例中,所述语音通话装置还配置为:获取所述待采集回声参考信号未被采集线程读取的长度;当所述待采集回声参考信号未被所述采集线程读取的长度大于长度阈值时,按照所述待采集回声参考信号的写入顺序从前到后依次删除预设长度的待采集回声参考信号;其中,所述待采集回声参考信号未被所述采集线程读取的长度和所述预设长度之差不小于回声时差,所述回声时差为所述待采集回声参考信号写入所述回声参考信号缓存区的时间与所述待采集回声参考信号被采集线程读取到的时间之间的差值。
在本申请的一个实施例中,所述第一编码模块配置为:通过采集线程采集麦克风信号,并调用第一语音编码器对采集到的所述麦克风信号进行编码以获取所述第一语音编码数据。
在本申请的一个实施例中,所述第二编码模块包括:获取单元,用于获取所述麦克风信号的长度,根据所述麦克风信号的长度从回声参考信号缓存区中获取具有相同长度的所述回声参考信号;调用单元,用于调用第二语音编码器对所述回声参考信号进行编码以获取所述第二语音编码数据;其中,所述第二语音编码器和所述第一语音编码器为相同类型的语音编码器,且具有相同的编码参数。
在本申请的一个实施例中,所述获取单元配置为:当所述回声参考信号缓存区中待采集回声参考信号的长度小于所述麦克风信号的长度时,对所述待采集回声参考信号进行补零,以获取所述回声参考信号。
在本申请的一个实施例中,所述发送模块配置为:根据传输控制协议或者用户数据报协议对所述第一语音编码数据和所述第二语音编码数据进行处理,以生成音频数据包;将所述音频数据包发送至所述第二终端。
在本申请的一个实施例中,所述第一终端为具有弱计算能力的可通话终端,所述第二终端为具有强计算能力的可通话终端。
第三方面,提供了一种语音通话方法,应用于第二终端,所述方法包括:接收第一终端发送的第一语音编码数据和第二语音编码数据,所述第一语音编码数据和所述第二语音编码数据是在所述第一终端中用于进行语音处理的计算资源信息小于或等于计算资源阈值时生成的;解析所述第一语音编码数据以获取麦克风信号,解析所述第二语音编码数据以获取回声参考信号;根据所述回声参考信号对所述麦克风信号进行回声消除,并播放回声消除后的所述麦克风信号。
第四方面,提供了一种语音通话装置,配置于第二终端,所述装置包括:接收模块,用于接收第一终端发送第一语音编码数据和第二语音编码数据,所述第一语音编码数据和所述第二语音编码数据是在所述第一终端中用于进行语音处理的计算资源信息小于或等于计算资源阈值时生成的;解析模块,用于解析所述第一语音编码数据以获取麦克风信号,解析所述第二语音编码数据以获取回声参考信号;回声消除模块,用于根据所述回声参考信号对所述麦克风信号进行回声消除,并播放回声消除后的所述麦克风信号。
在本申请的一个实施例中,所述解析模块配置为:调用语音解码器对所述第一语音编码数据和所述第二语音编码数据进行解析,以获取所述麦克风信号和所述回声参考信号;其中,所述语音解码器的类型与生成所述第一语音编码数据的第一语音编码器和生成所述第二语音编码数据的第二语音编码器的类型相同。
在本申请的一个实施例中,所述回声消除模块配置为:对所述麦克风信号和所述回声参考信号进行傅里叶变换,以获取与所述麦克风信号对应的第一频域信号和与所述回声参考信号对应的第二频域信号;根据所述第一频域信号和所述第二频域信号确定回声延时时刻,并根据所述回声延时时刻在所述第一频域信号和所述第二频域信号中确定目标麦克频域信号和目标回声参考频域信号;通过自适应滤波器计算与所述目标回声参考频域信号对应的模拟回声信号,并根据所述目标麦克频域信号和所述模拟回声信号确定待输出频域信号;对所述待输出频域信号进行傅里叶反变换,以获取回声消除后的所述麦克风信号。
在本申请的一个实施例中,所述语音通话装置还配置为:根据所述目标回声参考频域信号和所述待输出频域信号对所述自适应滤波器进行系数更新,并采用系数更新后的所述自适应滤波器对下一个回声延时时刻对应的回声参考频域信号进行处理。
在本申请的一个实施例中,所述第一终端为具有弱计算能力的可通话终端,所述第二终端为具有强计算能力的可通话终端。
第五方面,提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得所述计算机执行如上述实施例所述的语音通话方法。
第六方面,提供了一种电子设备,包括处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器用于调用所述可执行指令来实现如上述实施例所述的语音通话方法。
第七方面,提供了一种计算机程序产品,当所述指令在计算机上运行时,使得所述计算机执行如上述实施例所述的语音通话方法。
本申请的实施例所提供的语音通话方法,在第一终端和第二终端之间进行语音通话时,当第一终端中用于进行语音处理的计算资源信息小于或等于计算资源阈值时,第一终端不运行回声消除算法,只是将根据麦克风信号和回声参考信号形成的第一语音编码数据和第二语音编码数据发送至第二终端,以使第二终端从第一语音编码数据中解析得到麦克风信号,从第二语音编码数据中解析得到回声参考信号,并根据麦克风信号和回声参考信号进行回声消除,进而播放回声消除后的麦克风信号。这样避免了在第一终端中运行回声消除算法,而只在第二终端中运行回声消除算法,一方面降低了对第一终端的硬件要求和制造成本,另一方面提高了回声消除的效率,进一步提高了语音通话的质量。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出了可以应用本申请实施例的技术方案的示例性系统架构的示意图。
图2示意性示出了根据本申请的一个实施例的语音通话方法的流程示意图。
图3示意性示出了根据本申请的一个实施例的在回声参考信号缓存区中写入语音信号的流程示意图。
图4示意性示出了根据本申请的一个实施例的对待采集回声参考信号的存储方式进行优化的流程示意图。
图5示意性示出了根据本申请的一个实施例的语音通话方法的流程示意图。
图6示意性示出了根据本申请的一个实施例的回声消除的流程示意图。
图7示意性示出了根据本申请的一个实施例的语音通话装置的框图。
图8示意性示出了根据本申请的一个实施例的语音通话装置的框图。
图9示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
在本领域的相关技术中,在语音通话的过程中,通话双方的终端设备中分别运行一套回声消除算法,各个终端设备通过麦克风采集语音信号,并在采集到语音信号后,对所采集到的语音信号进行回声消除,然后把处理得到的结果进行语音编码,并通过网络发送给对方的终端设备,对方的终端设备在接收到编码后的语音数据后,对其进行解码以获取语音信号,然后将语音信号通过扬声器或听筒直接播放即可。
但是,相关技术中的方法需要在双方的通话终端中都进行一次回声消除,增加了回声消除的时间,降低了语音通话的效率,进而影响了语音通话的质量。
并且,在相关技术中,当通话双方所使用的终端设备中存在具有弱计算能力的终端设备时,由于该终端设备的硬件性能不足、计算资源紧张,因此无法正常运行回声消除算法,进而导致回声消除的效率和语音通话的质量下降。如果要保证回声消除的效率和语音通话的质量,就需要提高具有弱计算能力的终端设备的硬件配置,但是这样不利于降低制造成本。另外,各类具有弱计算能力的终端设备可用的计算资源不一样,并且使用的操作系统也不同,因此在这些终端设备上面部署、调试和升级回声消除算法会存在大量的平台适配问题。
针对相关技术中存在的问题,本申请实施例提供了一种新的语音通话方法,同时该语音通话方法涉及一种新的回声消除方法。
在对本申请实施例中的技术方案进行详细说明之前,首先对本申请实施例中可能涉及到的技术名词进行解释和说明。
1、具有弱计算能力的终端:硬件性能不足、计算资源紧张的终端,例如可通话摄像头、可通话手表、可通话手环、可通话眼镜、可通话戒指、可通话玩具等等。在本申请实施例中,凡是可用于进行语音处理的计算资源信息小于或等于计算资源阈值的终端均可以认为是具有弱计算能力的终端。
2、回声:在语音通话中,终端设备扬声器或者听筒发出的声音经过各种路径被终端设备的麦克风采集到所形成的。
3、回声消除:在语音通话中,把回声从麦克风采集到的声音信号中剔除出去。
4、ADPCM:Adaptive Differential Pulse Code Modulation,自适应差分脉冲编码调制,一种语音编码方法。
5、G.711:是一种由国际电信联盟(ITU-T)制定的音频编码方式,又称为ITU-TG.711。
6、ERLE:Echo Return Loss Enhancement,回声损失增益,是作为对回声返回的信号损失的度量,较高的增益对应于较小的回声量。
在介绍本申请使用到的一些技术名词之后,以下结合图1对应用本申请技术方案的示例性系统架构进行说明:
图1示出了可以应用本申请实施例的技术方案的示例性系统架构的示意图。
如图1所示,系统架构100可以包括通话终端设备101、网络102和服务器103。通话终端设备101包括第一终端和第二终端,该第一终端和第二终端具体可以是智能手机、笔记本电脑、平板电脑、台式计算机、智能车载终端等具有麦克风和听筒或者具有麦克风和扬声器的终端设备,但不限于此;进一步地,第一终端和第二终端中的一个终端具有弱计算能力,另一个终端具有强计算能力,例如第一终端为具有弱计算能力的终端,那么第二终端就是具有强计算能力的终端,反之亦然。具有强计算能力的终端具有良好的硬件配置和充足的可用于进行语音处理的计算资源,可以用来运行多种计算量较大的算法,例如回声消除算法,该终端具体可以是智能手机、笔记本电脑、平板电脑、台式计算机、智能车载终端等具有麦克风和听筒或者具有麦克风和扬声器的终端设备,具有弱计算能力的终端中的硬件性能不足、可用于进行语音处理的计算资源紧张,无法运行计算量较大的算法,例如回声消除算法,该终端具体可以是可通话摄像头、可通话手表、可通话手环、可通话眼镜等具有麦克风和扬声器或听筒的终端设备,但并不局限于此;网络102用以在通话终端设备101和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线通信链路、无线通信链路等等。
应该理解,图1中的通话终端设备、网络和服务器的数目仅仅是示意性的。根据实际需要,可以具有任意数目的终端设备、网络和服务器。比如服务器103可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
在本申请的一个实施例中,当第一终端和第二终端建立通信连接后,使用第一终端的用户和使用第二终端的用户可以通过所使用的终端设备进行语音通话。在语音通话过程中,第一终端的麦克风可能采集到第一终端的扬声器或者听筒发出的声音形成回声,同时第二终端的麦克风也可能采集到的第二终端的扬声器或者听筒发出的声音形成回声,为了提高语音通话的效果,第一终端可以对其中可用于进行语音处理的计算资源进行判断,当用于进行语音处理的计算资源信息小于或等于计算资源阈值时,获取麦克风信号,并采用第一语音编码器对其进行编码以生成第一语音编码数据,然后根据麦克风信号的长度获取回声参考信号,并采用第二语音编码器对其进行编码以生成第二语音编码数据,接着可以将第一语音编码数据和第二语音编码数据根据预设传输协议发送至第二终端。第二终端在接收到第一语音编码数据和第二语音编码数据后,可以采用语音解码器对第一语音编码数据和第二语音编码数据进行解码以获取麦克风信号和回声参考信号,然后根据回声参考信号对麦克风信号进行回声消除,以获取不包含回声的麦克风信号,并进行播放。其中,第一语音编码器和第二语音编码器是同一类型的语音编码器,且具有相同的编码参数,并且语音解码器和第一语音编码器及第二语音编码器的类型也相同。
进一步地,当第二终端向第一终端发送语音信号时,可以对麦克风采集到的声音信号进行回声消除,然后把处理得到的结果进行语音编码,并通过网络发送给第一终端,第一终端在接收到编码数据后,先对其进行解码以获取语音信号,然后将其发送至扬声器或者听筒直接进行播放,而不用第一终端进行回声消除。
需要说明的是,本申请实施例所提供的语音通话方法一般由通话终端设备执行,相应地,语音通话装置一般设置于通话终端设备中。但是,在本申请的其它实施例中,也可以由服务器执行本申请实施例所提供的语音通话方法。
在本申请的一个实施例中,可以采用提供云计算服务的云服务器执行本申请中的语音通话方法,相应地,本申请的技术方案涉及云技术中的云计算和云存储。
云计算(cloud computing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为IaaS(Infrastructure as a Service,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
按照逻辑功能划分,在IaaS(Infrastructure as a Service,基础设施即服务)层上可以部署PaaS(Platform as a Service,平台即服务)层,PaaS层之上再部署SaaS(Software as a Service,软件即服务)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,SaaS和PaaS相对于IaaS是上层。
云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统 (以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。
目前,存储系统的存储方法为:创建逻辑卷,在创建逻辑卷时,就为每个逻辑卷分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。客户端在某一逻辑卷上存储数据,也就是将数据存储在文件系统上,文件系统将数据分成许多部分,每一部分是一个对象,对象不仅包含数据而且还包含数据标识(ID,ID entity)等额外的信息,文件系统将每个对象分别写入该逻辑卷的物理存储空间,且文件系统会记录每个对象的存储位置信息,从而当客户端请求访问数据时,文件系统能够根据每个对象的存储位置信息让客户端对数据进行访问。
存储系统为逻辑卷分配物理存储空间的过程,具体为:按照对存储于逻辑卷的对象的容量估量(该估量往往相对于实际要存储的对象的容量有很大余量)和独立冗余磁盘阵列(RAID,Redundant Array of Independent Disk)的组别,预先将物理存储空间划分成分条,一个逻辑卷可以理解为一个分条,从而为逻辑卷分配了物理存储空间。
接下来,对本申请实施例中的语音通话方法进行详细说明。
图2示意性示出了根据本申请的一个实施例的语音通话方法的流程示意图,该语音通话方法可以由第一终端来执行。参照图2所示,该语音通话方法至少包括步骤S210至步骤S240,具体地:
在步骤S210中,获取计算资源信息,所述计算资源信息是与所述第一终端对应的用于进行语音处理的计算资源信息;
在步骤S220中,当所述计算资源信息小于或等于计算资源阈值时,获取麦克风信号,对所述麦克风信号进行编码以获取第一语音编码数据;
在步骤S230中,根据所述麦克风信号的长度获取回声参考信号,并对所述回声参考信号进行编码以获取第二语音编码数据;
在步骤S240中,将所述第一语音编码数据和所述第二语音编码数据发送至第二终端,以使所述第二终端根据所述回声参考信号对所述麦克风信号进行回声消除,并播放回声消除后的所述麦克风信号。
本申请的实施例所提供的语音通话方法,在第一终端和第二终端之间进行语音通话时,当第一终端中可用于进行语音处理的计算资源信息小于或等于计算资源阈值时,第一终端不运行回声消除算法,只是将根据麦克风信号和回声参考信号生成的第一语音编码数据和第二语音编码数据发送至第二终端,以使第二终端从第一语音编码数据中解析得到麦克风信号,从第二语音编码数据中解析得到回声参考信号,并根据回声参考信号对麦克风信号进行回声消除,并播放回声消除后的麦克风信号。这样避免了在第一终端中运行回声消除算法,只需要在第二终端运行回声消除算法,一方面降低了对第一终端的硬件要求和制造成本,另一方面提高了回声消除的效率,进一步提高了语音通话的质量。
下面对本申请中语音通话方法的各个方法步骤的具体实现方式进行详细说明。
在步骤S210中,获取计算资源信息,所述计算资源信息是与所述第一终端对应的用于进行语音处理的计算资源信息。
在本申请的一个实施例中,在第一终端和第二终端之间进行语音通话时,第一终端或者第二终端首先需要判断自身可用于进行语音处理的计算资源信息是否充足,是否可以支持终端在本地进行回声消除算法,对其接收到的麦克风信号进行回声消除,进而根据判断结果执行相应地回声消除操作。
在本申请的一个实施例中,在对计算资源信息进行判断时,可以将其与计算资源阈值进行比较,当计算资源信息小于或等于计算资源阈值时,判定终端不具备在本地运行回声消除算法的能力,而当计算资源信息大于计算资源阈值时,判定终端具备在本地运行回声消除算法的能力。其中,计算资源阈值可以根据实际需要进行设置,具体地,可以将计算资源阈值设置为GPU为1GHz且内存为512M,当然还可以设置为其它的值,凡是无法正常运行回声消除算法的计算资源条件均可以设置为计算资源阈值。
在第一终端或第二终端中任意一端确定其用于进行语音处理的计算资源信息小于或等于计算资源阈值时,可以将回声消除任务放到另一终端执行,具体地,可以采集麦克风信号和回声参考信号,对其进行编码,并将编码后的麦克风信号和回声参考信号发送至另一终端,以便另一终端根据回声参考信号对麦克风信号进行回声消除,并播放回声消除后的麦克风信号。接下来,以第一终端中用于进行语音处理的计算资源信息小于或等于计算资源阈值为例,进行说明。
在步骤S220中,当所述计算资源信息小于或等于计算资源阈值时,获取麦克风信号,对所述麦克风信号进行编码以获取第一语音编码数据。
在本申请的一个实施例中,麦克风(话筒)、扬声器和听筒是通话终端设备的必要组成部分,其中麦克风(话筒)用于收集声音信号并将声音信号转换为电信号,扬声器、听筒用于将接收到的电信号转换为声音信号。
在语音通话的过程中,采集线程可以对麦克风信号进行采集,以获取第一终端的用户想要发送至第二终端的语音信号,但是由于麦克风在收集声音信号时,可能收集到扬声器或者听筒发出的声音信号经过各种路径所形成的回声信号,因此采集线程所采集到的麦克风信号可能包含回声信号,也就是说,麦克风信号中并不完全是第一终端的用户想要发送的语音信号。如果对该麦克风信号不作处理,第二终端的用户在听到第一终端的用户发送的语音信号的同时还会听到自己发送给第一终端的用户的语音信号,使得语音通话的效果不佳。
在本申请的一个实施例中,为了提高语音通话的质量,在采集麦克风信号的同时还可以采集回声参考信号,并将麦克风信号和回声参考信号都发送至第二终端,进而通过第二终端根据回声参考信号确定校准后的模拟回声,并从麦克风信号中剔除模拟回声,以获取第一终端的用户想要发送至第二终端的目标语音信号。
在本申请的一个实施例中,在通过采集线程获取麦克风信号后,可以调用第一语音编码器对麦克风信号进行编码以获取第一语音编码数据,其中该第一语音编码器具体可以是ADPCM语音编码器,也可以是G.711语音编码器,当然还可以是其它类型的语音编码器。以第一语音编码器为ADPCM语音编码器为例,在获取麦克风信号后,首先可以对麦克风信号中的多个采样点进行差分处理,以获取相邻两采样点之间的差值,接着根据差值的变化幅度自适应确定压缩系数,然后根据压缩系数对各个差值进行压缩,以将差值归化到预定的数值范围内。经过第一语音编码器对麦克风信号进行编码后即可获取与之对应的第一语音编码数据。
在本申请的一个实施例中,采集线程每采集到一帧麦克风信号后,即调用第一语音编码器对采集到的麦克风信号进行编码,以获取第一语音编码数据。当然还可以在采集线程采集到多帧麦克风信号后,调用第一语音编码器对多帧麦克风信号进行编码,以获取第一语音编码数据。
在步骤S230中,根据所述麦克风信号的长度获取回声参考信号,并对所述回声参考信号进行编码以获取第二语音编码数据。
在本申请的一个实施例中,在获取麦克风信号并对麦克风信号进行编码生成第一语音编码数据后,可以根据麦克风信号的长度获取回声参考信号,该回声参考信号在后续流程中用于对麦克风信号进行回声消除,以生成目标语音信号。值得注意的是,由于在对麦克风信号进行回声消除时,是将回声信号从麦克风信号中剔除掉的,所以回声参考信号的长度需要保证与麦克风信号的长度一致,如果回声参考信号缓存区中回声参考信号的长度小于麦克风信号时,可以通过补零的方式将回声参考信号的长度补齐,以达到麦克风信号的长度。
回声参考信号是从回声参考信号缓存区中获取的,该回声参考信号缓存区的大小是根据麦克风信号的采样率设置的,采样率代表每1秒保存的语音数据点数,因此该回声参考信号缓存区可以容纳1秒内所采集的回声信号,同时该回声参考信号缓存区的数据存储类型为短整型。在扬声器播放第二终端发送的语音信号时,播放线程可以将该语音信号作为回声参考信号,同步到回声参考信号缓存区中,并且在将回声信号同步到回声参考信号缓存区时是根据语音信号的播放顺序按序将其写入到回声参考信号缓存区中的,由于回声参考信号缓存区的大小是根据麦克风信号的采样率设置的,因此可能出现回声参考信号缓存区写满后无法继续写入回声信号的情况,为了避免该种情况发生,在将语音信号写入回声参考信号缓存区时,可以按照以下逻辑写入。
图3示出了在回声参考信号缓存区中写入语音信号的流程示意图,如图3所示,在步骤S301中,获取所述回声参考信号缓存区中待采集回声参考信号的写入地址;在步骤S302中,当所述待采集回声参考信号的写入地址达到所述回声参考信号缓存区的末位地址时,从所述回声参考信号缓存区的首位地址开始写入新的待采集回声参考信号。
其中,当待采集回声参考信号写到回声参考信号缓存区的末位地址时,可以从回声参考信号缓存区的首位地址开始重新写入待采集回声参考信号,而已经被采集线程采集过的回声参考信号则会被新的待采集回声参考信号覆盖。
进一步地,由于播放线程写入待采集回声参考信号的过程和采集线程采集回声参考信号的过程是相互独立,如果回声参考缓存区中存在大量未被采集的待采集回声参考信号时,容易导致回声参考信号采集错误,因此需要进一步地根据采集线程读取的待采集回声参考信号的长度对待采集回声参考信号的存储方式进行优化。
图4示出了对待采集回声参考信号的存储方式进行优化的流程示意图,如图4所示,在步骤S401中,获取所述待采集回声参考信号未被采集线程读取的长度;在步骤S402中,当所述待采集回声参考信号未被所述采集线程读取的长度大于长度阈值时,按照所述待采集回声参考信号的写入顺序从前到后依次删除预设长度的待采集回声参考信号;其中,所述待采集回声参考信号未被所述采集线程读取的长度和所述预设长度之差不小于回声时差,所述回声时差为所述待采集回声参考信号写入所述回声参考信号缓存区的时间与所述待采集回声参考信号被采集线程读取到的时间之间的差值。
其中,步骤S402中长度阈值和预设长度是可以根据实际需要进行设置的,并且预设长度小于长度阈值,以回声参考信号缓存区的大小为容纳1s的语音信号为例,长度阈值可以设置为800ms、900ms等等,预设长度根据回声时差可以设置为100ms、200ms等等,也就是说,如果回声参考信号缓存区中存在大量未被采集线程采集的数据时,可以将回声参考信号缓存区中最先写入的部分语音信号删除掉,这样可以避免因为新的语音信号覆盖旧的语音信号,导致采集线程采集到的回声信号出错。
举例而言,当回声参考信号缓存区中可以容纳1s的语音信号,每个语音信号的时长是100ms时,那么该回声参考信号缓存区可以容纳10个待采集回声参考信号,该些待采集回声参考信号可以以1-10的数字进行标识。当采集线程只采集了标识1对应的待采集回声参考信号,标识2-10对应的待采集回声参考信号还未采集,但是回声参考信号缓存区已经写满,这时就需要从头开始写入新的语音信号,覆盖最先写入的待采集回声参考信号,这样就会出现采集的回声参考信号乱序的情况。例如,播放线程要写入新的标识为11-13的待采集回声参考信号,那么标识11-13的待采集回声参考信号将覆盖标识1-3的待采集回声参考信号,回声参考信号缓存区中存储的回声参考信号的标识序列就变成了11、12、13、4、5、6、7、8、9、10,当采集线程计划采集标识2对应的待采集回声参考信号时,就只能采集到标识12对应的待采集回声参考信号,这就使得采集到的回声参考信号的序列是错误的,跟实际的回声信号的顺序是不同的。因此在回声参考信号缓存区中未被采集线程采集的回声参考信号的长度达到第二长度阈值,例如800ms时,可以按照回声参考信号的写入顺序从前到后依次删除预设长度的回声信号,例如删除最先写入的200ms的回声参考信号,也就是将标号1、2对应的回声参考信号删除掉,以将采集线程读取数据的位置前移200ms,这样就可以避免采集线程采集到错误的回声参考信号。
值得说明的是,为了保证采集到的回声参考信号的序列正确,待采集回声参考信号未被采集线程读取的长度和预设长度之差不小于回声时差,该回声时差为待采集回声参考信号被写入回声参考信号缓存区的时间与待采集回声参考信号被采集线程读取到的时间之间的差值。
在本申请的一个实施例中,在获取回声参考信号后,可以调用第二语音编码器对回声参考信号进行编码,以生成第二语音编码数据。其中对回声参考信号进行编码的第二语音编码器和对麦克风信号进行编码的第一语音编码器可以是相同类型的语音编码器,也可以是不同类型的语音编码器,但是由于不同的语音编码器对语音信号处理后的波形有差异,导致回声消除后得到的语音信号有所偏差,例如回声消除不彻底等等,因此在本申请的实施例中,为了提高语音通话质量,对回声参考信号进行编码的第二语音编码器和对麦克风信号进行编码的第一语音编码器是相同类型的语音编码器,例如可以是ADPCM语音编码器或者G.711语音编码器,等等,并且对回声参考信号和麦克风信号进行编码的编码器具有相同的编码参数,这样可以保证第二终端在接收到第一语音编码数据和第二语音编码数据之后,能够顺利从第一语音编码数据和第二语音编码数据中解析得到麦克风信号和回声参考信号,并且能够通过回声消除获取不包含任何回声信号的语音信号。
在步骤S240中,将所述第一语音编码数据和所述第二语音编码数据发送至第二终端,以使所述第二终端根据所述回声参考信号对所述麦克风信号进行回声消除,并播放回声消除后的所述麦克风信号。
在本申请的一个实施例中,在生成第一语音编码数据和第二语音编码数据之后,可以将第一语音编码数据和第二语音编码数据发送至第二终端,具体地,可以根据相应的传输协议对第一语音编码数据和第二语音编码数据进行处理,以生成一音频数据包,然后将该音频数据包发送至第二终端,以使第二终端根据其中所包含的回声参考信号对麦克风信号进行回声消除,得到回声消除后的麦克风信号,并通过扬声器或者听筒进行播放。该传输协议根据第一终端和第二终端之间的数据传输类型所确定,具体地,该传输协议可以是传输控制协议TCP,也可以是用户数据报协议UDP,相应地,该音频数据包可以是一个TCP包或者UDP包。通过将第一语音编码数据和第二语音编码数据同时放入一个音频数据包中,并发送至第二终端,能够保证第二终端接收到成对的麦克风信号和回声参考信号,进而通过回声消除得到所需的不包含回声信号的语音信号,避免了丢包产生的回声消除效果差、语音通话质量差的问题。
在本申请的一个实施例中,第二终端在接收到音频数据包后,可以对其进行拆解,以获取第一语音编码数据和第二语音编码数据,接着可以对第一语音编码数据和第二语音编码数据进行解码以获取麦克风信号和回声参考信号,最后根据回声参考信号对麦克风信号进行回声消除,以获取目标语音信号。其中,根据回声参考信号对麦克风信号进行回声消除时,可以采用线性滤波器进行回声消除,也可以采用神经网络模型进行回声消除。
在本申请的一个实施例中,第一终端中不需要运行回声消除算法,大大减少了数据处理量,减少了回声消除时间,并且降低了对终端的硬件要求和制造成本。该第一终端可以是任意类型的用于进行语音处理的计算资源信息小于或等于计算资源阈值的可通话终端,例如可以是计算资源被大量其它程序占用而无法正常运行回声消除算法的智能手机、笔记本电脑、可通话摄像头、可通话手环、可通话眼镜等可通话终端。
在本申请的一个实施例中,当第一终端中的计算资源信息大于计算资源阈值时,可以在第一终端本地进行回声消除,并将回声消除后的语音信号发送至第二终端进行播放。具体地,第一终端获取麦克风信号和与该麦克风信号具有相同长度的回声参考信号,然后根据回声参考信号对麦克风信号进行回声消除,以获取目标语音信号,接着可以通过语音编码器对目标语音信号进行编码,并将编码后的语音编码信号发送至第二终端,最后通过第二终端对语音编码信息进行解码以获取目标语音信号,并将目标语音信号发送至扬声器进行播放即可。其中,根据回声参考信号对麦克风信号进行回声消除可以采用线性滤波器进行回声消除,也可以采用神经网络模型进行回声消除,本申请实施例对此不作具体限定。
上述实施例从第一终端的角度说明了语音通话过程中如何进行回声消除以实现高质量的语音通话,接下来从第二终端的角度来对本申请实施例中的语音通话过程进行说明。
图5示出了语音通话方法的流程示意图,如图5所示,该流程至少包括步骤S510-S530:
在步骤S510中,接收第一终端发送的第一语音编码数据和第二语音编码数据,所述第一语音编码数据和所述第二语音编码数据是在所述第一终端中用于进行语音处理的计算资源信息小于或等于计算资源阈值时生成的。
在本申请的一个实施例中,第一终端在向第二终端发送语音信号之前,首先对其自身用于进行语音处理的计算资源信息进行判断,当判定自身的计算资源信息小于或等于计算资源阈值时,可以通过采集线程采集麦克风信号,并调用第一语音编码器对麦克风信号进行编码,以生成第一语音编码数据,以及通过采集线程采集与麦克风信号具有相同长度的回声信号,并调用第二语音编码器对回声参考信号进行编码,以生成第二语音编码数据,其中,第一语音编码器和第二语音编码器具有相同的类型并且具有相同的编码参数,例如可以是具有相同编码参数的DPCM语音编码器、ADPCM语音编码器、G.711语音编码器,等等。
在形成第一语音编码数据和第二语音编码数据之后,可以根据第一终端和第二终端之间的数据传输协议将第一语音编码数据和第二语音编码数据发送至第二终端,进一步地,第一终端可以根据预设的数据传输协议对第一语音编码数据和第二语音编码数据进行处理,以生成音频数据包,并将生成的音频数据包发送至第二终端,以便第二终端通过拆解接收到的音频数据包,获取其中的第一语音编码数据和第二语音编码数据。该音频数据包可以是TCP包,也可以是UDP包,当然还可以是根据其它的传输协议生成的数据包,本申请实施例对此不作具体限定。
在步骤S520中,解析所述第一语音编码数据以获取麦克风信号,解析所述第二语音编码数据以获取回声参考信号;
在本申请的一个实施例中,在获取第一语音编码数据和第二语音编码数据之后,可以对其进行解析,以获取麦克风信号和回声参考信号。在对第一语音编码数据和第二语音编码数据进行解析时,可以采用编码过程的逆运算实现对语音编码数据的解码。
以语音编码器为ADPCM语音编码器为例,在对语音编码数据进行解码时,可以采用ADPCM解码器对语音编码数据进行解码,具体地解码过程和编码过程互为逆运算。在编码时,是对麦克风信号和回声参考信号中的各个采样点进行差分处理,然后根据差分处理后的差值的变化幅度自适应确定压缩系数,并根据该压缩系数对对应的差值进行压缩,将其归化到预定的数值范围内,那么相对应的,在解码时,可以将编码时采用的与各个差值对应的压缩系数作为与其对应的扩张系数,然后采用扩张系数对语音编码数据中对应的语音编码值进行处理,以获取差值,最后再根据各差值逆向求解得到麦克风信号和回声参考信号中的采样点,进而解析得到麦克风信号和回声参考信号。
在步骤S530中,根据所述回声参考信号对所述麦克风信号进行回声消除,并播放回声消除后的所述麦克风信号。
在本申请的一个实施例中,在获取麦克风信号和回声参考信号后,可以根据回声参考信号对麦克风信号进行回声消除,以获取目标语音信号,并通过扬声器或者听筒进行播放。
在本申请的一个实施例中,在根据回声参考信号对麦克风信号进行回声消除时,可以采用线性滤波器进行回声消除,也可以采用神经网络模型进行回声消除。接下来,对回声消除的具体方法进行说明。
当采用线性滤波器进行回声消除时,图6示出了回声消除的流程示意图,如图6所示,回声消除的流程至少包括步骤S601-S604,具体如下:
在步骤S601中,对所述麦克风信号和所述回声参考信号进行傅里叶变换,以获取与所述麦克风信号对应的第一频域信号和与所述回声参考信号对应的第二频域信号。
在本申请的一个实施例中,通过对麦克风信号和回声参考信号进行傅里叶变换,将时域信号转换为频域信号,以获取与麦克风信号对应的第一频域信号和与回声参考信号对应的第二频域信号,接着可以将转换后的第一频域信号和第二频域信号进行缓存,用于后续的回声消除。
在步骤S602中,根据所述第一频域信号和所述第二频域信号确定回声延时时刻,并根据所述回声延时时刻在所述第一频域信号和所述第二频域信号中确定目标麦克频域信号和目标回声参考频域信号。
在本申请的一个实施例中,在获取第一频域信号和第二频域信号后,可以从第一频域信号中获取一麦克风频域信号,并以该麦克风频域信号对应的时间点从第二频域信号中获取与该时间点对应的过去一段时间内的回声参考频域信号,然后通过计算麦克风频域信号和回声参考频域信号之间的互相关性,以获取麦克风频域信号和回声参考频域信号相关性最大的时刻,该相关性最大的时刻即为存在回声延时的时刻,记为回声延时时刻。考虑到过早的回声参考信号对于当前的麦克风信号是没有影响的,因此与时间点对应的过去一段时间具体可以是过去的450ms、500ms,等等。
在获取回声延时时刻后,可以将第一频域信号中与该回声延时时刻对应的频域信号作为目标麦克风频域信号,将第二频域信号中与该回声延时时刻对应的频域信号作为目标回声参考频域信号。
在步骤S603中,通过自适应滤波器计算与所述目标回声参考频域信号对应的模拟回声信号,并根据所述目标麦克风频域信号和所述模拟回声信号确定待输出频域信号。
在本申请的一个实施例中,在获取目标回声参考频域信号后,可以通过自适应滤波器根据目标回声参考频域信号计算模拟回声,该模拟回声即为麦克风频域信号中所包含的回声频域信号,其中模拟回声的计算公式如公式(1)所示:
接着,将所得到的模拟回声输出从麦克风频域信号中减去,即可得到待输出频域信号,计算公式如式(2)所示:
其中,e(n)为待输出频域信号,d(n)为目标麦克风频域信号。
在步骤S604中,对所述待输出频域信号进行傅里叶反变换,以获取回声消除后的所述麦克风信号。
在本申请的一个实施例中,在确定待输出频域信号后,可以对其进行傅里叶反变换,以将其转换为时域信号,该时域信号即为第二终端可通过扬声器或听筒直接播放的语音信号。同时,还可以根据所确定的待输出频域信号以及输入至自适应滤波器的目标回声参考频域信号对自适应滤波器系数进行更新,进而采用系数更新后的自适应滤波器对下一个麦克风频域信号和与之对应的回声参考频域信号进行处理,以实现回声消除。
自适应滤波器系数的更新方法如公式(3)所示:
其中,μ为自适应滤波器系数的更新步长,δ为接近0的实数。
通过如图6所示的回声消除方法,可以根据回声参考信号对麦克风信号进行回声消除,得到目标语音信号。当然还可以根据其它方法进行回声消除,例如通过神经网络模型进行回声消除。
在本申请的一个实施例中,首先可以采集通话时间段内的语音信号,然后将该语音信号输入至神经网络模型中,通过神经网络模型对语音信号进行处理,以获取用于指示语音信号是有效语音的概率值;接着根据该概率值确定语音信号的信干比;最后根据该信干比对语音信号进行处理,以得到目标语音信号。
其中,神经网络模型是根据多个回声参考信号样本和多个麦克风信号样本对待训练神经网络模型进行训练得到的,该神经网络模型具体可以是循环神经网络、深度神经网络、卷积神经网络等等,本申请实施例对此不作具体限定。在得到神经网络模型输出的概率值后,可以根据该概率值计算回声幅度谱,具体地,可以从语音信号的各个频点中选取回声幅度谱最大的估计值作为语音帧的回声幅度谱,接着根据回声幅度谱以及语音信号可以得到语音信号后验信干比,然后根据该后验信干比可以得到先验信干比,最后根据先验信干比、后验信干比以及每个频点语音存在的后验概率可以得到每个频点残余回声的抑制因子,通过采用该抑制因子对与语音信号对应的线性输出频域信号进行处理,即可得到目标语音信号。
本申请实施例中的语音通话方法可以应用于具有强计算能力的可通话终端设备与具有弱计算能力的可通话终端设备之间,其中,具有强计算能力的可通话终端设备是指用于进行语音处理的计算资源信息大于计算资源阈值的可通话终端设备,例如可以是未被大量程序占用的智能手机、笔记本电脑、安装有麦克风和扬声器的台式电脑、智能车载终端等等,具有弱计算能力的可通话终端设备是指用于进行语音处理的计算资源信息小于或等于计算资源阈值的可通话终端设备,例如可以是被大量程序占用的智能手机、笔记本电脑、视频终端等,也可以是以语音通话功能为辅的可通话摄像头、可通话手表、可通话眼镜、可通话戒指等等,以可通话摄像头为例,可通话摄像头主要是对所拍摄的大量图像进行处理,所以在运行过程中,图像处理进程会占用大量计算资源,这样就使得所剩的计算资源不足以运行回声消除算法,因而无法在可通话摄像头中进行回声消除。
接下来,以在智能手机与可通话摄像头之间进行语音通话为例,对本申请实施例中的语音通话方法进行说明。
用户在家中安装摄像头用于对家里的场景进行远程观察,同时还可以通过摄像头的语音功能与家里的人或物进行对话。在进行语音通话之前,用户需要先通过智能手机与摄像头网络连接,连接成功后就可以通过摄像头的语音功能实现语音通话了。在进行语音通话的过程中,摄像头端的扬声器可以将用户通过智能手机发送的语音信号播放出来,但是该语音信号中的部分信号或者全部信号在经过一些路径传播后,会在摄像头的麦克风抓取摄像头端用户的语音信号时也被抓取,形成回声,这样摄像头发送到智能手机的语音信号就包含回声,严重影响了语音通话质量。
考虑到摄像头中大部分计算资源被图像处理进程占用,其中用于进行语音处理的计算资源信息低于或等于计算资源阈值,因此在摄像头中无法正常运行回声消除算法,如果分别通过摄像头和智能手机对接收到的语音信号进行回声消除后再进行播放,会出现卡顿、语音包丢失等情况。为了避免这种情况,提高语音通话质量,在本申请实施例中,当摄像头端的采集线程采集到一帧麦克风信号后,可以将该帧麦克风信号送给第一语音编码器进行编码以形成第一语音编码数据,接着根据该麦克风信号的长度从回声参考信号缓存区中获取回声参考信号,并将该回声参考信号送给第二语音编码器进行编码以形成第二语音编码数据,然后将第一语音编码数据和第二语音编码数据同时放入一个音频数据包中,并通过相应的传输协议将音频数据包发送至智能手机端。
智能手机端接收到音频数据包后,对其进行拆解以获取第一语音编码数据和第二语音编码数据,接着可以采用语音解码器对第一语音编码数据和第二语音编码数据进行解码,以获取麦克风信号和回声参考信号,然后根据回声参考信号对麦克风信号进行回声消除,以获取目标语音信号,最后将目标语音信号送给扬声器或者听筒进行播放。也就是说,在摄像头端不进行任何的回声消除,只是在智能手机端进行一次回声消除。
同样地,当智能手机端的采集线程采集麦克风信号时,也可能采集到扬声器播放的摄像头端发送的语音信号,但是由于智能手机具有充足的计算资源,而摄像头没有充足的计算资源,因此在智能手机将麦克风信号发送至摄像头端之前,智能手机可以先根据回声参考信号对麦克风信号进行回声消除处理,然后再将消除回声后的麦克风信号发送至摄像头端进行播放。其中,智能手机在进行回声消除时,在获取麦克风信号后,根据麦克风信号的长度获取回声参考信号,接着根据麦克风信号和回声参考信号进行回声消除以获取目标语音信号,然后将目标语音信号加密后发送至摄像头端,摄像头只需对加密后的目标语音信号进行解密,即可获取目标语音信号,并通过扬声器进行播放。
本申请实施例中的语音通话方法,由于不在具有弱计算能力的终端设备中运行回声消除算法,只在具有充足的计算资源的终端设备中运行回声消除算法,这使得具有弱计算能力的终端设备的计算负载和功耗下降了30%左右,并且回声消除的效果有明显提高,回声损失增益比相关技术中双侧进行回声消除实现语音通话而言提高了20db,使得语音通话质量有了明显改善。
本申请实施例中的语音通话方法,在第一终端和第二终端之间进行语音通话时,当第一终端中用于进行语音处理的计算资源信息小于或等于计算资源阈值时,第一终端不运行回声消除算法,只是将根据麦克风信号和回声参考信号生成的第一语音编码数据和第二语音编码数据发送至第二终端,以使第二终端从第一语音编码数据中解析得到麦克风信号,从第二语音编码数据中解析得到回声参考信号,并根据回声参考信号对麦克风信号进行回声消除,并播放回声消除后的麦克风信号。这样避免了在第一终端中运行回声消除算法,只在第二终端运行回声消除算法,一方面降低了对第一终端的硬件要求和制造成本,另一方面提高了回声消除的效率,进一步提高了语音通话的质量;再一方面,由于各类具有弱计算能力的终端可用的计算资源不一,使用不同的操作系统,在这些终端上面部署、调试和升级回声消除算法会存在大量的平台适配问题,而本申请实施例中不需要在具有弱计算能力的终端中运行回声消除算法,因此本申请还可以提高回声消除算法部署、调试和升级的效率,减少平台适配的工作量。
可以理解的是,在本申请的具体实施方式中,涉及到采集通话方的语音对话内容等相关数据,当本申请以上实施例运用到具体产品或技术中时,需要获取通话方的许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
应当注意,尽管在附图中以特定顺序描述了本申请中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
以下介绍本申请的装置实施例,可以用于执行本申请上述实施例中的语音通话方法。对于本申请装置实施例中未披露的细节,请参照本申请上述的语音通话方法。
图7示意性示出了根据本申请的一个实施例的语音通话装置的框图。
参照图7所示,根据本申请的一个实施例的语音通话装置700,语音通话装置700配置于第一终端,该语音通话装置700包括:获取模块701、第一编码模块702、第二编码模块703和发送模块704。
其中,获取模块701,用于获取计算资源信息,所述计算资源信息是与所述第一终端对应的用于进行语音处理的计算资源信息;第一编码模块702,用于当所述计算资源信息小于或等于计算资源阈值时,获取麦克风信号,对所述麦克风信号进行编码以获取第一语音编码数据;第二编码模块703,用于根据所述麦克风信号的长度获取回声参考信号,并对所述回声参考信号进行编码以获取第二语音编码数据;发送模块704,用于将所述第一语音编码数据和所述第二语音编码数据发送至第二终端,以使所述第二终端根据所述回声参考信号对所述麦克风信号进行回声消除,并播放回声消除后的所述麦克风信号。
在本申请的一个实施例中,所述语音通话装置700还包括:写入模块,用于根据所述麦克风信号的采样率设置回声参考信号缓存区,并通过播放线程将播放的语音信号按序写入到所述回声参考信号缓存区中,以形成待采集回声参考信号。
在本申请的一个实施例中,所述语音通话装置700还配置为:获取所述回声参考信号缓存区中待采集回声参考信号的写入地址;当所述待采集回声参考信号的写入地址达到所述回声参考信号缓存区的末位地址时,从所述回声参考信号缓存区的首位地址开始写入新的待采集回声参考信号。
在本申请的一个实施例中,所述语音通话装置700还配置为:获取所述待采集回声参考信号被采集线程读取的长度;当所述待采集回声参考信号未被所述采集线程读取的长度大于长度阈值时,按照所述待采集回声参考信号的写入顺序从前到后依次删除预设长度的待采集回声参考信号;其中,所述待采集回声参考信号未被所述采集线程读取的长度和所述预设长度之差不小于回声时差,所述回声时差为所述待采集回声参考信号写入所述回声参考信号缓存区的时间与所述待采集回声参考信号被采集线程读取到的时间之间的差值。
在本申请的一个实施例中,所述第一编码模块702配置为:通过采集线程采集麦克风信号,并调用第一语音编码器对采集到的所述麦克风信号进行编码以获取所述第一语音编码数据。
在本申请的一个实施例中,所述第二编码模块703包括:获取单元,用于获取所述麦克风信号的长度,根据所述麦克风信号的长度从回声参考信号缓存区中获取具有相同长度的所述回声参考信号;调用单元,用于调用第二语音编码器对所述回声参考信号进行编码以获取所述第二语音编码数据;其中,所述第二语音编码器和所述第一语音编码器为相同类型的语音编码器,且具有相同的编码参数。
在本申请的一个实施例中,所述获取单元配置为:当所述回声参考信号缓存区中待采集回声参考信号的长度小于所述麦克风信号的长度时,对所述待采集回声参考信号进行补零,以获取所述回声参考信号。
在本申请的一个实施例中,所述发送模块704配置为:根据传输控制协议或者用户数据报协议对所述第一语音编码数据和所述第二语音编码数据进行处理,以生成所述音频数据包;将所述音频数据包发送至所述第二终端。
在本申请的一个实施例中,所述第一终端为具有弱计算能力的可通话终端,所述第二终端为具有强计算能力的可通话终端。
图8示意性示出了根据本申请的一个实施例的语音通话装置的框图。
参照图8所示,根据本申请的一个实施例的语音通话装置800,语音通话装置800配置于第二终端,该语音通话装置800包括:接收模块801、解析模块802和回声消除模块803。
其中,接收模块801,用于接收第一终端发送的第一语音编码数据和第二语音编码数据,所述第一语音编码数据和所述第二语音编码数据是在所述第一终端中用于进行语音处理的计算资源信息小于或等于计算资源阈值时生成的;解析模块802,用于解析所述第一语音编码数据以获取麦克风信号,解析所述第二语音编码数据以获取回声参考信号;回声消除模块803,用于根据所述回声参考信号对所述麦克风信号进行回声消除,并播放回声消除后的所述麦克风信号。
在本申请的一个实施例中,所述解析模块802配置为:调用语音解码器对所述第一语音编码数据和所述第二语音编码数据进行解析,以获取所述麦克风信号和所述回声参考信号;其中,所述语音解码器的类型与生成所述第一语音编码数据的第一语音编码器和生成所述第二语音编码数据的第二语音编码器的类型相同。
在本申请的一个实施例中,所述回声消除模块803配置为:对所述麦克风信号和所述回声参考信号进行傅里叶变换,以获取与所述麦克风信号对应的第一频域信号和与所述回声参考信号对应的第二频域信号;根据所述第一频域信号和所述第二频域信号确定回声延时时刻,并根据所述回声延时时刻在所述第一频域信号和所述第二频域信号中确定目标麦克频域信号和目标回声参考频域信号;通过自适应滤波器计算与所述目标回声参考频域信号对应的模拟回声信号,并根据所述目标麦克频域信号和所述模拟回声信号确定待输出频域信号;对所述待输出频域信号进行傅里叶反变换,以获取回声消除后的所述麦克风信号。
在本申请的一个实施例中,所述语音通话装置800还配置为:根据所述目标回声参考频域信号和所述待输出频域信号对所述自适应滤波器进行系数更新,并采用系数更新后的所述自适应滤波器对下一个回声延时时刻对应的回声参考频域信号进行处理。
在本申请的一个实施例中,所述第一终端为具有弱计算能力的可通话终端,所述第二终端为具有强计算能力的可通话终端。
图9示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图9示出的电子设备的计算机系统900仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图9所示,计算机系统900包括中央处理单元(Central Processing Unit,CPU)901,其可以根据存储在只读存储器(Read-Only Memory,ROM)902中的程序或者从存储部分908加载到随机访问存储器(Random Access Memory,RAM)903中的程序而执行各种适当的动作和处理,实现上述实施例中所述的图像标注方法。在RAM 903中,还存储有系统操作所需的各种程序和数据。CPU 901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(Input /Output,I/O)接口905也连接至总线904。
以下部件连接至I/O接口905:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至I/O接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。
特别地,根据本申请的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被中央处理单元(CPU)901执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的语音通话装置中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (15)
1.一种语音通话方法,其特征在于,应用于第一通话终端,所述方法包括:
获取计算资源信息,所述计算资源信息是与所述第一通话终端对应的用于进行语音处理的计算资源信息;
当所述计算资源信息小于或等于计算资源阈值时,获取麦克风信号,对所述麦克风信号进行编码以获取第一语音编码数据;
根据所述麦克风信号的长度获取回声参考信号,并对所述回声参考信号进行编码以获取第二语音编码数据;
将所述第一语音编码数据和所述第二语音编码数据发送至第二通话终端,以使所述第二通话终端根据所述回声参考信号对所述麦克风信号进行回声消除,并播放回声消除后的所述麦克风信号。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述麦克风信号的采样率设置回声参考信号缓存区,并通过播放线程将播放的语音信号按序写入到所述回声参考信号缓存区中,以形成待采集回声参考信号。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
获取所述回声参考信号缓存区中待采集回声参考信号的写入地址;
当所述待采集回声参考信号的写入地址达到所述回声参考信号缓存区的末位地址时,从所述回声参考信号缓存区的首位地址开始写入新的待采集回声参考信号。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
获取所述待采集回声参考信号未被采集线程读取的长度;
当所述待采集回声参考信号未被所述采集线程读取的长度大于长度阈值时,按照所述待采集回声参考信号的写入顺序从前到后依次删除预设长度的待采集回声参考信号;
其中,所述待采集回声参考信号未被所述采集线程读取的长度和所述预设长度之差不小于回声时差,所述回声时差为所述待采集回声参考信号被写入所述回声参考信号缓存区的时间与所述待采集回声参考信号被采集线程读取到的时间之间的差值。
5.根据权利要求1所述的方法,其特征在于,所述获取麦克风信号,对所述麦克风信号进行编码以获取第一语音编码数据,包括:
通过采集线程采集麦克风信号,并调用第一语音编码器对采集到的所述麦克风信号进行编码以获取所述第一语音编码数据。
6.根据权利要求5所述的方法,其特征在于,所述根据所述麦克风信号的长度获取回声参考信号,并对所述回声参考信号进行编码以获取第二语音编码数据,包括:
获取所述麦克风信号的长度,根据所述麦克风信号的长度从回声参考信号缓存区中获取具有相同长度的所述回声参考信号;
调用第二语音编码器对所述回声参考信号进行编码以获取所述第二语音编码数据;
其中,所述第二语音编码器和所述第一语音编码器为相同类型的语音编码器,且具有相同的编码参数。
7.根据权利要求6所述的方法,其特征在于,所述根据所述麦克风信号的长度从回声参考信号缓存区中获取具有相同长度的所述回声参考信号,包括:
当所述回声参考信号缓存区中待采集回声参考信号的长度小于所述麦克风信号的长度时,对所述待采集回声参考信号进行补零,以获取所述回声参考信号。
8.根据权利要求1所述的方法,其特征在于,所述将所述第一语音编码数据和所述第二语音编码数据发送至第二通话终端,包括:
根据传输控制协议或者用户数据报协议对所述第一语音编码数据和所述第二语音编码数据进行处理,以生成音频数据包;
将所述音频数据包发送至所述第二通话终端。
9.一种语音通话方法,其特征在于,应用于第二通话终端,所述方法包括:
接收第一通话终端发送的第一语音编码数据和第二语音编码数据,所述第一语音编码数据和所述第二语音编码数据是在所述第一通话终端中用于进行语音处理的计算资源信息小于或等于计算资源阈值时生成的;
解析所述第一语音编码数据以获取麦克风信号,解析所述第二语音编码数据以获取回声参考信号;
根据所述回声参考信号对所述麦克风信号进行回声消除,并播放回声消除后的所述麦克风信号。
10.根据权利要求9所述的方法,其特征在于,所述解析所述第一语音编码数据以获取麦克风信号,解析所述第二语音编码数据以获取回声参考信号,包括:
调用语音解码器对所述第一语音编码数据和所述第二语音编码数据进行解析,以获取所述麦克风信号和所述回声参考信号;
其中,所述语音解码器的类型与生成所述第一语音编码数据的第一语音编码器和生成所述第二语音编码数据的第二语音编码器的类型相同。
11.根据权利要求9所述的方法,其特征在于,所述根据所述回声参考信号对所述麦克风信号进行回声消除,包括:
对所述麦克风信号和所述回声参考信号进行傅里叶变换,以获取与所述麦克风信号对应的第一频域信号和与所述回声参考信号对应的第二频域信号;
根据所述第一频域信号和所述第二频域信号确定回声延时时刻,并根据所述回声延时时刻在所述第一频域信号和所述第二频域信号中确定目标麦克频域信号和目标回声参考频域信号;
通过自适应滤波器计算与所述目标回声参考频域信号对应的模拟回声信号,并根据所述目标麦克频域信号和所述模拟回声信号确定待输出频域信号;
对所述待输出频域信号进行傅里叶反变换,以获取回声消除后的所述麦克风信号。
12.一种语音通话装置,其特征在于,配置于第一通话终端,所述装置包括:
获取模块,用于获取计算资源信息,所述计算资源信息是与所述第一通话终端对应的用于进行语音处理的计算资源信息;
第一编码模块,用于当所述计算资源信息小于或等于计算资源阈值时,获取麦克风信号,对所述麦克风信号进行编码以获取第一语音编码数据;
第二编码模块,用于根据所述麦克风信号的长度获取回声参考信号,并对所述回声参考信号进行编码以获取第二语音编码数据;
发送模块,用于将所述第一语音编码数据和所述第二语音编码数据发送至第二通话终端,以使所述第二通话终端根据所述回声参考信号对所述麦克风信号进行回声消除,并播放回声消除后的所述麦克风信号。
13.一种语音通话装置,其特征在于,配置于第二通话终端,所述装置包括:
接收模块,用于接收第一通话终端发送的第一语音编码数据和第二语音编码数据,所述第一语音编码数据和所述第二语音编码数据是在所述第一通话终端中用于进行语音处理的计算资源信息小于或等于计算资源阈值时生成的;
解析模块,用于解析所述第一语音编码数据以获取麦克风信号,解析所述第二语音编码数据以获取回声参考信号;
回声消除模块,用于根据所述回声参考信号对所述麦克风信号进行回声消除以获取目标语音信号,并播放回声消除后的所述麦克风信号。
14.一种计算机可读介质,其特征在于,包括指令,当其在计算机上运行时,使得所述计算机执行权利要求1至11中任意一项所述的语音通话方法。
15.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器用于调用所述可执行指令来实现权利要求1至11中任意一项所述的语音通话方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210680560.0A CN114760389B (zh) | 2022-06-16 | 2022-06-16 | 语音通话方法、装置、计算机存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210680560.0A CN114760389B (zh) | 2022-06-16 | 2022-06-16 | 语音通话方法、装置、计算机存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114760389A CN114760389A (zh) | 2022-07-15 |
CN114760389B true CN114760389B (zh) | 2022-09-02 |
Family
ID=82336766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210680560.0A Active CN114760389B (zh) | 2022-06-16 | 2022-06-16 | 语音通话方法、装置、计算机存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114760389B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000252885A (ja) * | 1999-03-01 | 2000-09-14 | Toshiba Corp | エコーキャンセラ及びこのエコーキャンセラを備えた音声通信装置 |
CN202587132U (zh) * | 2012-02-23 | 2012-12-05 | 青岛海信移动通信技术股份有限公司 | 具有回声抑制功能的语音通话电路及平板电脑 |
CN103905928A (zh) * | 2012-12-25 | 2014-07-02 | 安科智慧城市技术(中国)有限公司 | 一种网络语音对讲方法、装置及系统 |
CN104010100A (zh) * | 2014-05-08 | 2014-08-27 | 深圳市汇川技术股份有限公司 | VoIP通信中的回声消除系统及方法 |
WO2014150211A1 (en) * | 2013-03-15 | 2014-09-25 | Dolby Laboratories Licensing Corporation | Acoustic echo mitigation apparatus and method, audio processing apparatus and voice communication terminal |
CN104811567A (zh) * | 2014-01-23 | 2015-07-29 | 杭州乐哈思智能科技有限公司 | 一种对voip系统双向双工免提语音进行声学回声消除的系统和方法 |
WO2017085760A1 (ja) * | 2015-11-16 | 2017-05-26 | 三菱電機株式会社 | エコーキャンセラ装置及び通話装置 |
CN109346096A (zh) * | 2018-10-18 | 2019-02-15 | 深圳供电局有限公司 | 一种用于语音识别过程的回声消除方法及装置 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08274689A (ja) * | 1995-03-31 | 1996-10-18 | Toshiba Corp | 音響エコーキャンセラを備えた音声通信装置 |
US6768914B1 (en) * | 1998-08-31 | 2004-07-27 | Skyworks Solutions, Inc. | Full-duplex speakerphone with wireless microphone |
US20080159551A1 (en) * | 2006-12-28 | 2008-07-03 | Texas Instruments Incorporated | System and Method for Acoustic Echo Removal (AER) |
JP4916394B2 (ja) * | 2007-07-03 | 2012-04-11 | 富士通株式会社 | エコー抑圧装置、エコー抑圧方法及びコンピュータプログラム |
US20090168673A1 (en) * | 2007-12-31 | 2009-07-02 | Lampros Kalampoukas | Method and apparatus for detecting and suppressing echo in packet networks |
US20120140918A1 (en) * | 2010-12-06 | 2012-06-07 | Pagebites, Inc. | System and method for echo reduction in audio and video telecommunications over a network |
US8879438B2 (en) * | 2011-05-11 | 2014-11-04 | Radisys Corporation | Resource efficient acoustic echo cancellation in IP networks |
TWI469650B (zh) * | 2012-11-29 | 2015-01-11 | Quanta Comp Inc | 回音消除系統 |
CN105611222B (zh) * | 2015-12-25 | 2019-03-15 | 北京紫荆视通科技有限公司 | 音频数据处理方法、装置、被控设备和系统 |
US10229698B1 (en) * | 2017-06-21 | 2019-03-12 | Amazon Technologies, Inc. | Playback reference signal-assisted multi-microphone interference canceler |
CN107785027B (zh) * | 2017-10-31 | 2020-02-14 | 维沃移动通信有限公司 | 一种音频处理方法及电子设备 |
CN110176244B (zh) * | 2018-06-19 | 2023-10-03 | 腾讯科技(深圳)有限公司 | 回声消除方法、装置、存储介质和计算机设备 |
CN109087662B (zh) * | 2018-10-25 | 2021-10-08 | 科大讯飞股份有限公司 | 一种回声消除方法及装置 |
US11031026B2 (en) * | 2018-12-13 | 2021-06-08 | Qualcomm Incorporated | Acoustic echo cancellation during playback of encoded audio |
KR102556815B1 (ko) * | 2018-12-21 | 2023-07-18 | 삼성전자주식회사 | 전자 장치 및 이의 제어 방법 |
CN109862200B (zh) * | 2019-02-22 | 2021-02-12 | 北京达佳互联信息技术有限公司 | 语音处理方法、装置、电子设备及存储介质 |
CN113838473B (zh) * | 2021-09-26 | 2024-07-05 | 科大讯飞股份有限公司 | 设备的语音处理方法、装置以及设备 |
-
2022
- 2022-06-16 CN CN202210680560.0A patent/CN114760389B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000252885A (ja) * | 1999-03-01 | 2000-09-14 | Toshiba Corp | エコーキャンセラ及びこのエコーキャンセラを備えた音声通信装置 |
CN202587132U (zh) * | 2012-02-23 | 2012-12-05 | 青岛海信移动通信技术股份有限公司 | 具有回声抑制功能的语音通话电路及平板电脑 |
CN103905928A (zh) * | 2012-12-25 | 2014-07-02 | 安科智慧城市技术(中国)有限公司 | 一种网络语音对讲方法、装置及系统 |
WO2014150211A1 (en) * | 2013-03-15 | 2014-09-25 | Dolby Laboratories Licensing Corporation | Acoustic echo mitigation apparatus and method, audio processing apparatus and voice communication terminal |
CN104811567A (zh) * | 2014-01-23 | 2015-07-29 | 杭州乐哈思智能科技有限公司 | 一种对voip系统双向双工免提语音进行声学回声消除的系统和方法 |
CN104010100A (zh) * | 2014-05-08 | 2014-08-27 | 深圳市汇川技术股份有限公司 | VoIP通信中的回声消除系统及方法 |
WO2017085760A1 (ja) * | 2015-11-16 | 2017-05-26 | 三菱電機株式会社 | エコーキャンセラ装置及び通話装置 |
CN109346096A (zh) * | 2018-10-18 | 2019-02-15 | 深圳供电局有限公司 | 一种用于语音识别过程的回声消除方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114760389A (zh) | 2022-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110176256B (zh) | 录音文件格式转换方法、装置、计算机设备以及存储介质 | |
EP3992964B1 (en) | Voice signal processing method and apparatus, and electronic device and storage medium | |
CN111755017B (zh) | 云会议的音频录制方法、装置、服务器及存储介质 | |
CA3181066A1 (en) | Method, apparatus, and system for processing audio data | |
CN112750444B (zh) | 混音方法、装置及电子设备 | |
US20200202872A1 (en) | Combined forward and backward extrapolation of lost network data | |
CN115620736A (zh) | 音频分享方法、装置、计算机可读存储介质及电子设备 | |
CN114792524B (zh) | 音频数据处理方法、装置、程序产品、计算机设备和介质 | |
CN114974299B (zh) | 语音增强模型的训练、增强方法、装置、设备、介质 | |
US20240105198A1 (en) | Voice processing method, apparatus and system, smart terminal and electronic device | |
CN114760389B (zh) | 语音通话方法、装置、计算机存储介质及电子设备 | |
CN114333893A (zh) | 一种语音处理方法、装置、电子设备和可读介质 | |
CN116566963A (zh) | 一种音频处理方法、装置、电子设备和存储介质 | |
CN114866856B (zh) | 音频信号的处理方法、音频生成模型的训练方法及装置 | |
CN114979344A (zh) | 回声消除方法、装置、设备及存储介质 | |
CN112802485B (zh) | 语音数据处理方法、装置、计算机设备及存储介质 | |
CN112153322B (zh) | 数据分发方法、装置、设备及存储介质 | |
JP2024502287A (ja) | 音声強調方法、音声強調装置、電子機器、及びコンピュータプログラム | |
US10971161B1 (en) | Techniques for loss mitigation of audio streams | |
CN111326166B (zh) | 语音处理方法及装置、计算机可读存储介质、电子设备 | |
WO2022078960A1 (en) | Signal coding using a generative model and latent domain quantization | |
CN113096670A (zh) | 音频数据的处理方法、装置、设备及存储介质 | |
CN111145770B (zh) | 音频处理方法和装置 | |
CN113496699A (zh) | 语音处理方法、装置、存储介质及终端 | |
CN115631758B (zh) | 音频信号处理方法、装置、设备和存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |