分组语音技术的实现与应用

卢   飞  王黎伟  丁晓明

摘  要:随着与互联网的接触愈来愈多,人们会尝试各种各样的应用,其中一个非常有前途的应用就是分组语音技术。分组语音技术是指将语音信号转化为一定长度的数字化语音包,采用存储转发的方法以包的形式进行交换和传输的技术。文章介绍了分组语音技术的基本概念,包括原理、结构和性能,以及分组语音技术的一些具体应用。文章强调,分组语音技术不仅仅为降低成本而用于IP电话,结合计算机处理和互联网技术的优势实现各种增值业务才是它真正价值所在。

关键词:分组语音  语音压缩  语音网关

——分组语音技术是指将语音信号转化为一定长度的数字化语音包,采用存储转发的方法以包的形式进行交换和传输的技术。图1所示是两个站点之间传输分组语音的网络示意。每个站点由以下几个部分组成:PC机、话音的输入和输出设备(如话筒和扬声器)、对模拟信号进行数字化的设备(如语声卡),最后要与分组交换网连接(一般指互联网)。从图1可以看出分组语音在传输中不需任何电路交换设备,这是和传统电话不同的地方。

——由于互联网不能对传输带宽提供保证,因此语音包在其传输过程中就会产生延迟、抖动、包丢失等影响语音质量的因素。直到近年来由于低速率编解码算法的出现和软硬件性能的提高,人们才注意到分组语音技术的商业价值。

——目前我国已经开始试验IP电话,但这还远远不够,笔者认为互联网上的分组语音技术不仅为用于降低电信成本而出现在IP电话上,而且应该充分利用分组语音技术与传统电信技术的差别,结合计算机处理和互联网技术的优势,形成强有力的电信增值服务业务。如语音邮件服务、语音主页导向服务、IP信息咨询服务及呼叫中心,等等。

——一、分绸语音技术的概念

——1.实现分组语音技术的网络结构

——无论对于实时的应用(如IP电话)还是非实时的应用(如语音邮件),发送端语音都要经过模拟信号—数字信号—语音包的处理过程,并在接收端对语音包进行相反的处理,从而得到与输入端相同的语音信号。由图2可见,每个语音流从信源(话筒)到信宿(扬声器)就像通过一条管道,这条管道包括许多级,每一级代表一些特有的语音包处理过程。

——如图2所示,模拟语音信号在发送端要经过三级处理。

——①模拟语音到数字样点的转换和进入缓冲器前量化数据的打包处理。声卡和音频设备首先对模拟语音信号进行8位或16位量化,然后顺序送入缓冲器。缓冲器的大小可根据延迟和编码的要求选择。许多低比特率的编码器是对被称作帧的语音块进行编码。典型帧为10~30 ms。考虑到传输过程中的代价,语音包通常由60,120或240 ms的语音数据组成。

——②对语音包以特定的帧长进行编码。大部分的编码器都有特定的帧尺寸,若一个编码器使用15 ms的帧,则把从第一级来的60 ms的包分成4帧,并按顺序进行编码。每个帧合120个语音样点(抽样率为8kHz)。编码后,将4个压缩的帧合成一个压缩的语音包送入网络处理器。

——③网络处理器为语音包添加包头、时标和其他信息后通过网络传送到另一端点。

——在这个通道中,全部网络被看成一个整体,持续不断地从输入端接收语音包,然后在一定时间(t)内将其传送到网络输出端。t可以在某个范围内变化,反映了网络传输中的抖动。

——当语音包经网络传送到另一端被计算机接收时又要经过下述三次处理。

——首先,网络级提供一个可变长度的缓冲器,用来调节网络产生的抖动。该缓冲器可容纳许多语音包,用户可选择缓冲器的大小。小的缓冲器产生延迟较小,但不能调节大的抖动。

——其次,解码器将经编码的语音包解压缩后产生新的语音包,这个模块也可按帧进行操作,完全和编码器的长度相同。若帧长度为15 ms,则60 ms的语音包被分成4帧,然后它们被解码还原成60 ms的语音数据流送入解码缓冲器。

——再次,播放驱动器将缓冲器中语音样点(480个)取出送入声卡,通过扬声器按预定的频率(例如8kHz)播出。

——传输是依靠每一端三级的同步有效操作。如图3所示,在像IP电话这样的全双工通信中,每一端的六级都是连续工作的。因此在具体应用时为了减少分离处理的数量,这六级被合成同时工作的三个处理过程。

——2.分组语音中的一些关键技术

——(1)语音压缩算法

——语音压缩是分组语音系统中的重要组成部分。目前,通过调制解调器接入网络的最大速率为56 kbit/s,远远不能适应多媒体通信的要求,而且互联网不能对传输带宽提供保证,因此必须采用低速率的语音压缩算法来处理语音,这对实时语音应用尤为重要。

——现有的语音压缩算法提供显著低于64kbit/s但音质接近于长话质量的多种方案。表1列出了国际电联标准编码器性能比较。

表1  ITU标准编码算法
 
语音编码算法 长话质量 比特率(kbit/s) 复杂程度 延迟(ms) 用   途
G.729 优  于 8 较高 35 普通网络
G.729A 等  于 8 较低 35 公众电话网上的语音、数据同步传输系统
G.723.1 约等于 5.3,6.3 适中 97.5 公众电话网上的可视电话编码器
——(2)音频回声消除技术

——在IP电话的应用中,人们若使用扬声器和麦克风就可能出现回声现象。如图4所示。

——本地扬声器输出的模拟语音信号可能又被话筒接收,当信号被传回到源端时,就会产生不必要的回声。在互联网中,呼叫必须经过多个路由器和网关,其相当长的延迟又会造成回声问题的进一步恶化。在系统中使用回声消除技术可以解决这个问题。目前,回声消除技术主要有回声抑制和回声抵消两种。

——(3)网络呼叫技术

——IP电话采用分布式的呼叫模式。因为不需要通过电路交换完成呼叫,所以每个终端都使用了呼叫处理器。单工呼叫模式仅支持一个终端的呼叫,且需要本地呼叫驱动的支持。通过触发本地呼叫驱动软件建立一次呼叫,而呼叫驱动利用传输控制协议(TCP)的套接字(Socket)与另一端的呼叫驱动建立信令连接,从而触发另一端的单工呼叫。这两个单工呼叫被触发后按照Q.931信令协议完成呼叫过程的建立。根据信令的引导,呼叫驱动程序启动语音信息流接入网络和对端的接收设备,建立一个完整的呼叫过程(图5)。图5中的呼叫对象指明本次呼叫的域名、两端的终端识别码(ID)或电话号码、呼叫类型(如单纯语音、语音和数据)等信息。

——(4)语音网关技术

——语音网关(Gateway)除了完成传统电话网与互联网的硬件接口以外,还承担着信令转换、语音处理、呼叫应答与提示、路由寻址等功能。通过语音网关,真正实现了公众电话网与互联网的有机结合,在计算机到普通电话或普通电话到普通电话的IP电话应用中尤为重要。

——图6为计算机到普通电话的通信方式。语音网关的一侧与公众电话网或用户小交换机相连。在主叫方,它接收电话信令,将其数字化、压缩、打包(语音包)并送到互联网上;在被叫方,它从互联网上接收语音包,解包、解压并将其发送到公众电话网或用户小交换机上。

——语音网关的另一侧与互联网相连,在互联网上对被叫进行路由查询和完成IP地址的自动转换。语音网关很好地解决了IP电话的寻址问题。在传统的IP电话系统中,要确定一个多媒体PC机就必须知道其IP地址。若用语音网关来确定一个远端的用户,则只需知道其电话号码就可以了。
语音网关采用高速的分组交换技术对语音信号进行编码、压缩并打包,经路由器在互联网上传输。接收方路由器接到数据包后,根据IP地址将数据传送给接收方网关,该网关将数据拆包、解码、解压缩,随后传送给公众电话网或用户小交换机。

——除了语音压缩编解码和打包外,语音网关还应完成语音活动检测、静音压缩、舒适噪音生成、回声消除和双音多频信令处理功能。随着网关应用的普及,今后的语音网关还将担负有关服务质量协议监测和IP计费管理等处理功能。

——二、分组语音技术的实现

——早期分组语音技术的应用大都采用软件实现。近年来,随着大规模集成电路的飞速发展,硬件价格大幅度下降,从而出现了许多用硬件实现分组语音的产品。硬件具有对数据处理的速度快,可处理大量数据的特点,所以使用硬件实现分组语音可以很好地处理延迟。抖动、回声抑制等问题,从而得到良好的音质。采用硬件实现分组语音的另一个优点是:在一个硬件电路中可以实现多种压缩标准的分组语音,能很灵活地适应不同网络环境下的多个语音终端的互通。

——目前,笔者已经实现了建立在PC机上的分组语音系统,它由硬件平台和软件平台两部分构成。

——1.硬件平台

——硬件平台构造于PC机上,采用ISA总线插卡方式,如图7所示。该平台采用了美国DSPG公司的专用数字信号处理器CT8020作为核心部件,利用先进的可编程逻辑器件开发了外围控制电路和接口电路。它主要完成以下功能。

——(1)备有三种电路接口

——这三种接口是线路输出接口、话筒输入接口和话机输入输出接口。

——(2)完成话筒语音前置放大

——由于从话筒输入的语音信号比较微弱(1~30mV),达不到编解码器对信号强度的要求,因此必须进行前置放大。这里由专用前置放大芯片完成放大功能。

——(3)语音信号的转换及编解码

——语音信号的A/D,D/A转换及编解码功能是利用MC145480完成的,它的优点是:①可将语音信号的A/D,D/A转换及编解码集成在一个芯片中,提高了系统稳定性;②只需单电源供电,减少了双电源供电所带来的电源干扰问题,提高了语声质量;③可提供A律及μ律两种编码格式,提供符合ITU-T G.711建议的语音数据流。

——(4)语音数据的压缩和解压缩

——该功能主要由专用语音芯片CT8020完成。它实现了ITU-T G.723.1所规定的5.3和6.3 kbit/s两种比特率语音。这两种比特率是H.324建议所规定的国际标准语音速率,适用于线路带宽较小的多媒体通信。此外在线路情况十分恶劣条件下,它可提供4.1和4.8kbit/S,语音。当线路情况良好时,CT8020还可提供非标准的8.5 kbit/s压缩语音和未压缩的64与128 kbit/s这两种纯数字语音。该芯片处理速度快,可实现语音的实时处理。

——(5)语音的回声抑制功能

——该功能由CT8020完成。

——(6)可与公众电话网相连

——为电话接口提供和检测双音多频信号(DTMF),能和公众电话网相连。

——(7)控制电路

——控制电路主要是将主机发出的命令送入CT8020,并将状态信息返回给主机;按上层软件的要求,定时将由CT8020处理的语音数据提供给上层软件。该控制电路利用Altera公司的可编程逻辑器件EPM7128S实现,通过Altera的MAXPLUSII软件编解原理图后下载到芯片中。这种控制电路的实现方式降低了电路板布线密度,只需对软件进行修改即可完成电路调试和技术升级,不需要重新制板。

——为便于在Windows95环境下使用该平台,开发了虚拟设备驱动程序。该程序为上层软件提供了丰富的接口函数,用于实现对语音板的操作。软件平台与硬件平台的关系如图8所示。

——2.软件平台

——建立在Windows95操作环境之上的软件平台采用了H.323建议作为总体框架结构,利用Windows套接字函数进行网络传输。它主要完成以下功能。

——(1)终端建链

——应用软件按照建议H.245和H.225的规定与远端机通信,设定逻辑通道。

——(2)语音采集

——采集语音线程将底层语音板的语音数据采集上来,送给H.225.0打包线程。

——(3)语音数据打包

——根据网络的带宽等确定语音包的大小,然后打包线程按H.225的规定将语音数据加上静荷标识符、序列号、时标及同步源标识(SSRC)等信息。语音包用UDP格式,以尽可能保证语音包在网络传输中的实时性。

——(4)发送语音包

——发送线程调用Windows套接字函数,将来自打包线程的语音包送入网络进行传输。

——(5)接收语音包

——接收线程调用Windows套接字函数接收来自对端的语音包。为防止语音包在网络传输中受到延迟、拥塞等的影响(如后发包先到、语音包丢失等),接收线程先将接收到的语音包送入拆包线程的缓冲区中。

——(6)拆包线程

——拆包线程将缓冲区中的语音包按序列号进行排队,并还原语音数据。

——(7)播放语音

——播放语音线程从接收线程的缓冲区中读入数据,送入底层语音板进行播放。其框图如图9所示。

——在上述的分组语音平台基础上,可以实现多种应用。被视为现代通信行业一次革命的IP电话只是分组语音技术应用的初端。分组语音的应用范围不仅限于此,在会议系统、远程教学、远程医疗、信息服务呼叫中心、网络广播、预售票系统、专家热线、存款余额查询等诸多方面都大有用武之地。

——在许多分组语音的应用中(如会议系统等)都需要使用分组语音混合技术。实现语音混合的方法传统上是通过二次编解码,首先将输入的各路语音解码,恢复到压缩以前的状态,然后,进行线性叠加和自适应增益调整。叠加后的信号经过二次编码后,再输出到音箱。这样做的结果将使语音信号的单向系统延迟增加一倍以上,降低了语音信号的实时性,音质也因此变差了。由于在分组语音应用中传输的是压缩率很高的语音信号,因而二次编解码对实时性的影响更为明显。例如,原G.723.1声码器的算法延迟为37.5 ms,但经过“桥接”其单向系统延迟远大于75 ms。如此高的延迟使得音质和舒适度急剧下降。鉴于此,笔者以语音帧中增益为比较对象,采用“能量选大”的算法,并配合以语音静默检测,实现语音混合。用它取代现有的二次编解码方案,可以大幅度降低算法复杂度和延迟,有效地提高混合后的语音质量。

——三、分组语音技术的应用

——目前,大家对于IP电话的认识仅局限于通过网络打电话,花费比普通电话便宜。其实,这只是IP语音网关的一部分功能。IP语音网关是公众电话网与IP网络的转换接口,它将庞大的电信网与Internet网相连。如何利用计算机的功能和Internet网络的资源在电话业务的基础之实现各种增值业务,才是它的真正价值所在。

——例如,通过电话提供语音邮件服务,网关处的PC机可以接收存储电子语音邮件,用户可以通过电话来收听自己的语音邮件;此外,用户可以预先在计算机上设定自己常用的一些电子邮件地址,以后就可以通过电话完成语音邮件的录制和发送。这极大地方便了对计算机操作不熟悉的用户。如果再通过专线将PC机和寻呼台相连,那么每当用户有新邮件到达时,通过寻呼机通知用户,或者直接与手机的基站控制台相连,通过手机直接播放电子语音邮件。

——再如,呼叫中心服务系统包括了呼叫处理、路由选择、自动应答、座席话务员管理,以及咨询与数据库集成等多种技术,可使中心向用户提供多种不同服务。如果采用分组语音技术与网络及数据库技术相结合,那么一般话务员就可以提供专家级的服务:当用户与话务员交流时不仅可获取其最感兴趣的信息,而且还可通过IP网及数据库查到或取出专业信息(而不是要求随时有专家服务)。这种高质量的服务和较低的运营成本,在激烈的市场竞争中将会对公司有帮助。

——各行各业都有大量的信息需要发布,用户也需要查询信息,如电信部门的电话号码查询、电话业务宣传,运输部门有关货物到达后的自动告知,健康保险部门的药物查询、门诊预约,旅游娱乐部门的订票系统、景点介绍,等等。如何将这些信息简洁、快速地传递给用户已经成为未来企业生存和发展的一个决定因素。因而可以断言,目前分组语音技术的应用只是一个开端,它将会取代现有的大部分传统电信业务,成为未来通信的一种主流模式。

——鉴于上述构想,笔者开发了基于分组语音技术的3个方面应用:①IP语音网关。结合自行开发的电话接口卡实现了从普通电话到计算机、计算机到计算机的网络电话功能,这种IP电话的实现方案可用于公司内部与远端客户或子公司的联络,也可用于个人与亲友的联络。②结合应用①再配合分组语音的混合算法,实际上已经构成了一个网上可视会议系统的语音子系统,可实现IP网上多方语音会议。③开发成功了利用电话查询电子邮件的系统。

——目前电信部门正在由电信服务向信息服务转变。但传统网络信息以文本方式为主,不利于信息传递。随着语音压缩技术的发展而成熟起来的分组语音技术是建筑在互联网上的通信手段,便于信息传递,在今后三网合一的大趋势中有广泛的应用。

卢  飞  北方交通大学信息科学研究所研究生

王黎炜  北方交通大学信息科学研究所研究生

丁晓明 北方交通大学信息科学研究所副教授

 


相关链接:
校园电话的实现及前景预测 2004-11-30
朗讯科技新一代SONATA话音增强系统 2004-11-30
有线电视网增值业务方案 2004-11-30
准备的迎接Voice Over DSL 2003-05-21
主叫号码显示业务 2003-05-21

分类信息: