一种数字语音通信噪音消除和语音恢复方法设计及实现*
2020-08-14许志强李庚欣王云丽廖蓉晖杨龙剑
许志强,李庚欣,王云丽,廖蓉晖,杨龙剑
(1.中国电子科技集团公司第三十研究所,四川 成都 610041;2.中国人民解放军31006部队,北京 100840;3.火箭军装备部项目管理中心,北京 100085)
0 引言
目前,数字语音通信已经广泛应用于通讯、多媒体网络以及各种消费类产品等诸多领域。与模拟语音通信相比,数字语音通信具有抗干扰能力强,且噪音不积累,便于处理、变换、存储,易于集成,使通信设备微型化、轻量化,易于加密处理且保密性好等优点[1]。但数字语音通信对同步要求高,当数字语音传输过程中发生失步时[2],通信双方的语音数据会发生不规律的跳变,这将在语音通信中出现大量噪音,极大影响用户体验。针对数字语音通信中因失步而产生的噪音,目前处理方案有使用噪声消除算法消除噪音[3-5],或如图1所示接收方通过失步检测算法检测到失步后发起重新启动通信流程或重新同步的方法来消除噪音。
图1 目前数字语音通信的噪音消除方法示意
目前的噪音消除方法虽然能在产生噪音后通过重启通信流程或重新同步的方式消除噪音,但由于在失步检测过程和重启通话流程或重新同步过程中接收端将接收到的已失步的噪音数据进行解码播放,用户会听到刺耳的噪音,同时目前的噪音消除方法通过重启通信流程的方式来消除噪音,重启通信流程时间过长会导致通信中断,极大影响用户体验。
1 本文要解决的技术问题
针对目前的噪音消除方法存在接收端可以听到噪音且消除噪音的方法会导致通信中断的问题,本文提出一种数字语音通信噪音消除和语音恢复方法,可以应用于各种数字语音通信系统中,能够完全消除数字语音通信中因失步导致接收端听到的噪音,并具有语音恢复功能。与目前的数字语音通信噪音消除方法相比,本文提出的方法通过对接收端语音数据进行缓存、通道切换处理,使得接收方完全听不到噪音。同时,该方法具有语音同步判决功能,判决同步后快速恢复正常通信,极大的提升了用户体验。
2 噪音消除和语音恢复方法详细技术方案
本文提出的数字语音通信噪音消除和语音恢复方法技术方案由语音数据缓存、语音通道切换、语音同步判决3个模块组成,正常语音通信过程中接收到的待播放的语音数据经过语音数据缓存模块后进行播放,当检测到失步时,语音同步判决模块控制语音通道切换模块将待播放的噪音数据切换为舒适静音,有必要时也可以切换为提示音、舒适音乐等,同时发起重新同步流程,由于语音数据缓存时间大于失步检测时间,即使出现失步而引起噪音,语音接收端完全不会听到噪音。当语音同步判决模块判决语音同步后,通知语音通道切换模块将语音通道切换为语音数据通道,恢复正常通话。本技术方案各模块关系图如图2所示。
图2 噪音消除和语音恢复方法各模块组成
2.1 语音数据缓存
语音数据缓存模块需在语音通信前配置数据类型和数据缓存时间,根据配置参数在语音通信中实现语音数据输入和数据缓存功能。目前数字语音通信中常用的数据传输类型有:1位串行数据流、8位并行数据流、16位并行数据流。语音数据缓存模块为这三种数据类型均留有数据输入接口,只需配置适合当前数字语音通信的数据传输类型即可。
语音数据进入语音数据缓存模块后,根据缓存区内数据缓存时间先将语音数据缓存,实现一段固定时间的语音数据缓存。语音数据缓存的示意图如图3所示。
2.2 语音通道切换
通信双方正常通话时,语音通道切换模块输出缓存后待解码的语音数据解码后接收端听到正常语音。当检测到失步后,语音通道切换模块实现语音通道切换,语音通道切换时可根据语音同步判决模块的控制切换为舒适静音、提示音或舒适音乐,舒适静音、提示音、舒适音乐预先存放在FLASH或文件中,由语音通道切换模块读取数据。语音通道切换的示意如图4所示。
图3 语音数据缓存
图4 语音通道切换
2.3 语音同步判决
当检测到失步后,语音同步判决模块通知启动重新同步流程,同时控制语音通道切换模块将语音通道切换为舒适静音,同时启动同步判决时间超时定时器,若在设定的同步判决时间定时器超时的这段时间内没有再检测到失步,则判决为语音已同步,控制语音通道切换模块切换为语音数据通道,恢复正常语音;若在设定的同步内再次检测到失步,则重启设定的同步判决时间超时定时器,待语音同步判决模块判决为语音同步后,控制语音通道切换模块切换为语音数据通道,恢复正常语音。语音同步判决模块的处理流程图如图5所示。
3 噪音消除和语音恢复方法在数字语音通信中的实际应用
噪音消除和语音恢复方法的应用场景图如图6所示,数字语音通信设备1(以下简称“设备1”)和数字语音通信设备2(以下简称“设备2”)间可以进行实时数字语音通信,设备1为语音发送端,设备2为语音接收端。设备1的语音数据经过编码发送,经通信传输线路发送至设备2,设备2中嵌入了本设计,设置接收端语音数据输入方式为1位串行数据流,数据缓存时间为40 ms,同步判决超时定时器超时时间为1 s。
图5 语音同步判决模块处理流程
图6 噪音消除和语音恢复方法应用示意
若通话正常,设备2的接收端收到正常的通话语音;若通话中出现失步,失步检测模块可以在20 ms内检测到失步,噪音消除和语音恢复装置将接收端语音通道切换为舒适静音数据通道,同时通知启动重新同步流程并启动语音同步判决模块判决是否同步,若连续1 s内没有检测到失步,则判决为语音已同步,将接收端语音通道切换为语音数据通道,恢复语音通信,此时基本不会影响正常通话;若1 s内检测到失步,则重启同步判决超时定时器,待判决为同步后将接收端语音通道切换为语音数据通道,恢复语音通信。在整个失步过程中,由于数据缓存时间40 ms大于失步检测时间20 ms,接收方完全不会听到噪音,提升了通话中发生失步后的用户体验。
4 结论
本文提出的数字语音通信中噪音消除和语音恢复方法,可以完全消除通话过程中因失步而产生的噪音,并具有语音恢复功能,极大的提高了用户体验,此外该设计方案简单易用,在各种数字语音通信系统中均可使用。本设计方案支持多种数据传输类型,也支持根据实际需求设置数据缓存时间,可直接嵌入到现有的数字语音通信系统中,方便用户使用。同时不会影响原数字语音通信系统的正常使用,具有较好的实用性。