专利名称:融合通信中智能语音交互系统及其实现方法
技术领域:
发明涉及一种属于通信技术领域,涉及一种模拟电话与服务器终端实现的融合通
信中智能语音交互系统及其实现方法。
背景技术:
传统的融合通信中,终端一般是完成通信的业务,起的是一个模拟电话的作用。在 此基础上,需要集成一些增值业务,达到融台通信的业务需求。但是,由于终端的通信处理 一般用处理数据能力较低的嵌入式设备,因此终端对语音的处理能力不足, 一般仅仅能完 成普通的语音录制功能。而由于终端设备的存储能力也有限,仅能完成较小语音文件的存 储。终端设备在处理和存储数据能力的限制,使用户无法与终端进行语音的交互。在融合 通信中,为了方便用户的使用,用过语音与机器的交互是很有必要的。终端设备功能,使融 合通信的优势无法发挥。而如果采用处理能力较强的终端设备,会需要很高的成本。
发明内容
本发明目的是针对现有技术存在的缺陷提供一种融合通信中智能语音交互系统 及其实现方法。 本发明为实现上述目的,采用如下技术方案 本发明融合通信中智能语音交互系统,其特征在于包括众多个智能终端、众多个 语音处理进程单元、一个语音服务器和一个计算机,其中语音处理进程单元都包括前端语 音采集装置、实时传输模块、语音合成模块和语音识别模块,每个智能终端分别串接语音处 理进程单元后与语音服务器通信,前端语音采集装置依次串接语音合成模块、语音识别模 块后与语音服务器通信,前端语音采集装置的输出端串接实时传输模块后接语音服务器的 输入端,每个智能终端的控制信号输入端分别接计算机的控制端。 所述的融合通信中智能语音交互系统,其特征在于所述前端语音采集装置包括 CCM模块、微处理器和缓存器,前端语音采集装置和缓存器分别与微处理器双向通信,所述 微处理器接实时传输模块。 所述的融合通信中智能语音交互系统,其特征在于所述微处理器为DSP或混频器 mixer。 所述的融合通信中智能语音交互系统,其特征在于所述语音合成模块由文本分析 模块、韵律生成模块和合成语音模块依次串接构成。 所述的融合通信中智能语音交互系统的实现方法,其特征在于包括如下步骤
a)前端语音采集装置通过智能终端采集客户的语音信号,智能终端开始录制音 频; b)智能终端向服务器请求连接; c)若请求响应,则建立起客户端与服务器之间的连接,否则智能终端继续存储,并 继续向语音服务器发出请求;
d)在建立的连接上传输数据; e)服务器按照语音数据来源和数据类型,对其进行分类存储;
f)完成客户端与服务器的传输,关闭此连接; g)客户端向服务器申请语音合成,若服务器无响应,择返回步骤g,重新向服务器 发出请求,若服务器响应,则建立起一条与客户端的数据连接;
h)客户端将数据上传至服务器; i)服务器调用语音合成引擎,将文本数据转换为语音数据,并将生成的语音文件 转存至/tmp/audio目录下; j)在步骤g建立的连接上,将音频文件回传给智能终端;
k)话机终端实时播放音频; 1)客户端向服务器申请语音拨号,若服务器无响应,择返回步骤l,重新向服务器 发出请求,或直接转手动拨号;若服务器响应,则建立起一条与客户端的数据连接;
m)客户端采集录音数据,在语音拨号中是对数字序列进行录制的,将其录制好后, 以pcm文件保存; n)录制完毕后,将其发送至服务器; n)服务器调用语音识别引擎,对传输过的音频文件进行解析;
n)将解析后的数字信息以文本形式回发给智能终端。 本发明可以实现多个终端与一个语音服务器的小型交互系统。终端本身具有的录 音和放音的功能,可以良好的录制音频文件和播放音频文件。而服务器较强的数据能力又 保证了具体的语音处理可以进行展开,大大丰富了融合通信终端的功能,使终端满足了融 合通信终端的一般性需求。 该方案的优点在于,以较低的成本实现了较多的功能,系统的实现并不复杂,而且 该发明具有较强的鲁棒性。 该系统,可运用于家用或中小型企业,本发明的设计也有利于客户增值功能的集 成。
图1 : (a)系统整体结构图,(b)前端语音采集装置结构图,(c)每个智能终端的结 构图。
图2 :录音与播放声音的过程图。
图3:实时传输流程图。
图4 :语音合成模块流程图。
图5 :语音识别模块流程图。
具体实施例方式
下面结合附图对发明的技术方案进行详细说明 如图1所示,融合通信中智能语音交互系统,其特征在于包括众多个智能终端、众 多个语音处理进程单元、一个语音服务器和一个计算机,其中语音处理进程单元都包括前 端语音采集装置、实时传输模块、语音合成模块和语音识别模块,每个智能终端分别串接语音处理进程单元后与语音服务器通信,前端语音采集装置依次串接语音合成模块、语音识 别模块后与语音服务器通信,前端语音采集装置的输出端串接实时传输模块后接语音服务 器的输入端,每个智能终端的控制信号输入端分别接计算机的控制端。 所述的融合通信中智能语音交互系统,其特征在于所述前端语音采集装置包括 CCM模块、微处理器和缓存器,前端语音采集装置和缓存器分别与微处理器双向通信,所述 微处理器接实时传输模块。 本发明通过以下技术实现在整个内部通信系统中,架构一台专业的语音服务器, 对多个客户端的请求进行响应。客户端通过向语音服务器发送数据,由语音服务器对数据 进行处理,处理完毕后,将数据返回给客户端。 通过这种架构,解决了客户端本身处理和存储数据能力的不足,而又很好的利用
的内部网络有足够带宽的优点,并能在此基础上灵活的集成各种语音的业务。而终端只需
要拥有基本的通信、录音和播放音频的作用即可。服务器可选用一般的PC机,安装Linux
操作系统,配置以speech公司的语音库软件,包含语音合成和语音识别的功能。 首先,终端采集音频数据,进行录音。终端是基于嵌入式设备的,采用uCLi皿x操
作系统,使用的常见的语音库是OSS开发语音库。录音的同时,实时将录音的内容发至服务
器,达到实时存储的作用,解决了终端录音能力的不足,可以实现无时限的录音。 其次,终端将文本信息发至服务器,由服务器将文本信息转换为音频信息,实现
Text-to-speech的业务。终端上存的文本文件,通过网络发给服务器,服务器接收到文本文
件后,调用相关的音频库接口 ,将其转换为音频文件。 由于现行网络上,通用是mp3格式的音乐,因此可以涉及mp3至ljpcm的文件格式的 转换。该部分的转换,可在服务器上转换,服务器上有现成的mp3topcm的转换音频接口程 序,转换完成后,再将其返回给客户机。 本发明还提供了终端语音拨号的功能。用户在终端录制一段数字序列的音频后,
将音频发送至服务器,服务器对该音频进行解析,将解析出来的数字序列返回给终端后,终
端即可对此播放。
具体步骤如下 1)前端语音采集 终端采用嵌入式的设备,使用ucLi皿x系统,使用0SS音频接口,对声音进行录制 与播放。此终端设备拥有4M的Flash空间和16M的Sdram空间。通常将终端常用的铃音 文件与语音文件存至Flash中。而在Sdram中,开辟一个缓存空间,将正在录制和播放的音 频文件以流媒体形式放置其中。通过软件编程,在录音时,选择定时将Sdram缓存中的音频 数据转发至服务器,在播放音频文件时,选择定时从服务器上下载音频文件。在本发明中, 使用ARM7芯片,在录音时使用OSS音频编程接口。在Li皿x下,音频接口编程实际上就是 一组音频设备文件,通过对文件的读写控制操作,就相当于对音频接口进行了操作。在完成 录音和播放的功能时,主要用到了如下的设备mixer (混频器),对应于Li皿x下的文件是 /dev/mixer。 本发明在录制音频的时候,编程是直接和声卡相关的。在Li皿x系统下,是把声卡 设备当作文件来处理的。具体录音与播放声音的过程可由图2所示。
首先,获得对声卡的访问权,通过open函数,获得对声卡的控制
int open (const char氺pathn咖e, int flags, int mode); —般控制音频的设备为DSP或Mixer,因此在函数接口调用,可以选择/dev/dsp或
/dev/mixer作为pathname参数。 录音的时候,使用对声卡read调用 int read(int fd, char氺buf, size_t count); 可在sdram上开设buf的大小, 一般设置为4096字节。 播放音频的时候,使用对声卡的write操作。 size_t write (int fd, const char朴uf, size_t count); buf的大小同read的buf设置。 录音完毕后,用close关闭声卡硬件资源 在本发明中,采用的终端的文件格式为pcm格式。PCM文件是经由模拟音频信号经 模数 转换(A/D变换)直接形成的二进制序列,该文件没有附加的文件头和文件结束标
志o 在本发明中,采用两种格式的PCM,如下表所示。 表l PCM数据的格式
样本大小数据格式最大值最小值
8位PCMunsigned char2550
16位PCMint32767-32767 具体参数为采样率/sample rate :8KHz ;量化位数8bit ;单声道mono ;采用的 数据存储方式Unsigned char。 文件大小的计算文件大小"采样率*量化位数*声道数/8。因此对于一个lmin 的录音文件,它所需要的存储空间大约为480Kb,终端的Sdram可以满足一次简单通话的录 音需求。但是Sdram掉电后,其中的数据就会丢失,因此在话机的处理过程中仅将Sdram作 为存储的临时媒质。 具体可以选择表中的两种PCM存储格式。若用户对音频质量要求不高或者网络带 宽不够时,可以选择使用8位PCM的格式;而当用户对音频质量要求较高或者网络带宽足够 时,可以选择16位PCM的格式。
2)实时传输 为了解决本地Sdram对存储大容量音频文件的不足,以及掉电易失等特点,因此 为了能够稳定的存储音频文件,需将其以网络方式传至服务器,由服务器存储,而当客户端 终端需要用该相关的音频文件时,通过向服务器发送请求,服务器将文件发送至客户端,具 体实现方式采用HTTP传输方式。 服务器架设HTTP文件服务器,分别对文件的类型按照语音和文本分类,分别放在 /tmp/text和/tmp/audio目录中。当客户端和服务器进行交互的时候,按照文件类型,分别对上述2个目录进行交互。 当终端向服务器发出传输文件的响应后,服务器与终端之间建立起一条连接。终 端可以实时的从服务器收发音频文件,由于PCM是流媒体形式的,因此可以实时录制和播 放音频。 如图3所示,具体实施步骤如下。 St印l :终端开始录制音频,并将录制的音频文件暂时缓存在sdram中。
St印2 :向语音服务器发出请求,终端向服务器请求连接。 St印3 :若请求响应,则建立起客户端与服务器之间的连接。否则客户端继续存储, 并继续将语音服务器发出请求。
St印4 :在建立的连接上传输数据。传输分上传和下载。文件内部有一个文件偏移
量,通过软件编程控制偏移量的位置,和文件end处的位置,保证文件的实时传输。 St印5 :服务器按照语音数据来源和数据类型,对其进行分类,按分类存储,依次放
在/tmp/text或/tmp/audio中。终端也按照类似规则,分别存储文件。 St印6 :完成客户端与服务器的传输,关闭此连接。 3)语音合成 在本发明中,语音合成技术主要用于将客户端的文本转换成语音文件,以供在客 户端播放。 客户端的短消息模块收到了短消息,客户可以通过语音合成的功能将其播放出
来,这样,客户就可以不用去查看短消息的内容,而可以直接听到短消息的内容。 语音合成系统根据输入的文本合成出对应需要播放的pcm文件。
输入文本 输出pcm文件(或数据流) 实现途径语音合成中,主要用到了 TTS技术(Text-to-Speech) 。 TTS是将文本转
换为自然语音流的技术,它要求实时处理并且处理后的数据能易于被人理解。 语音合成系统主要包括3部分文本分析模块、韵律生成模块和合成语音模块,其
中,合成语音模块是最基本、最重要的模块。 在本发明中,使用speech公司的语音库,包含TTS引擎库的功能。(如图4所示)
具体步骤如下 St印l :客户端向服务器申请语音合成,若服务器无响应,择返回St印l,重新向服 务器发出请求。若服务器响应,会建立起一条与客户端的数据连接。
St印2 :客户端将数据上传至服务器的/tmp/text中。 St印3:服务器调用语音合成引擎,将文本数据转换为语音数据,并将生成的语音 文件转存至/tmp/audio目录下。 St印4 :在之前建立的连接上,将音频文件回传给话机终端。
St印5 :话机终端实时播放音频。
4)语音识别 为了使客户端更为简便的智能终端,通过语音识别的技术,可以讲客户端以语音 输入的方式控制话机的功能。例如,客户端可以通过朗读"1234567890",由服务器识别后, 转化成数字,完成拨号的功能。
语音识别这项技术就是为了识别终端的语音输入,将此语音转换成文本或相关的 指令,以此达到语音对话机的拨号或控制,以语音实现人机交互。
如果输入静音数据,返回N0SPEECH ; 如果输入语音数据,给出识别结果和相应的置信度得分信息。外部应用程序根据 这一信息来确定与用户的交互处理。 一般,在完成语音识别之前,都需要用户进行几次训 练,服务器能够对用户有良好的识别能力,以在识别的时候可以达到较精确的结果。
输入pcm文件(或数据流)
输出文本 在本发明中,通过终端和服务器如下的交互,实现语音拨号。使用的语音识别弓I擎 集成在speech公司提供的语音包中。步骤实施如图5所示。 St印l :客户端向服务器申请语音拨号,若服务器无响应,择返回st印l,重新向服 务器发出请求,或直接转手动拨号。若服务器响应,会建立起一条与客户端的数据连接。
St印2:客户端采集录音数据,在语音拨号中是对数字序列进行录制的,将其录制 好后,以pcm文件保存。 St印3 :录制完毕后,将其发送至服务器。 St印4:服务器调用语音识别引擎,对传输过的音频文件进行解析。
St印5 :将解析后的数字信息以文本形式回发给终端。终端完成拨号的任务。
在本发明中,通过已有架设好的语音服务器与客户终端的交互,可以有效的弥补 客户终端处理和存储数据能力的不足,将数据的处理和存储由服务器端来完成。在局域网 内部,可以架设一台语音服务器(一般情况下,PC机已可以满足正常的业务需求)。语音服 务器有一般语音合成(Text-To-Speech)的功能,以及语音识别的功能。通过这种C/S模型, 可以有效的解决终端处理和存储数据能力不足的缺点,也能以较低的成本实现上述交互系 统。
权利要求
一种融合通信中智能语音交互系统,其特征在于包括众多个智能终端、众多个语音处理进程单元、一个语音服务器和一个计算机,其中语音处理进程单元都包括前端语音采集装置、实时传输模块、语音合成模块和语音识别模块,每个智能终端分别串接语音处理进程单元后与语音服务器通信,前端语音采集装置依次串接语音合成模块、语音识别模块后与语音服务器通信,前端语音采集装置的输出端串接实时传输模块后接语音服务器的输入端,每个智能终端的控制信号输入端分别接计算机的控制端。
2. 根据权利要求1所述的融合通信中智能语音交互系统,其特征在于所述前端语音采集装置包括CCM模块、微处理器和缓存器,前端语音采集装置和缓存器分别与微处理器双向通信,所述微处理器接实时传输模块。
3. 根据权利要求1所述的融合通信中智能语音交互系统,其特征在于所述微处理器为DSP或混频器mixer 。
4. 根据权利要求1所述的融合通信中智能语音交互系统,其特征在于所述语音合成模块由文本分析模块、韵律生成模块和合成语音模块依次串接构成。
5. —种基于权利要求1所述的融合通信中智能语音交互系统的实现方法,其特征在于包括如下步骤a) 前端语音采集装置通过智能终端采集客户的语音信号,智能终端开始录制音频;b) 智能终端向服务器请求连接;c) 若请求响应,则建立起客户端与服务器之间的连接,否则智能终端继续存储,并继续向语音服务器发出请求;d) 在建立的连接上传输数据;e) 服务器按照语音数据来源和数据类型,对其进行分类存储;f) 完成客户端与服务器的传输,关闭此连接;g) 客户端向服务器申请语音合成,若服务器无响应,择返回步骤g,重新向服务器发出请求,若服务器响应,则建立起一条与客户端的数据连接;h) 客户端将数据上传至服务器;i) 服务器调用语音合成引擎,将文本数据转换为语音数据,并将生成的语音文件转存至/tmp/audio目录下;j)在步骤g建立的连接上,将音频文件回传给智能终端;k)话机终端实时播放音频;1)客户端向服务器申请语音拨号,若服务器无响应,择返回步骤l,重新向服务器发出请求,或直接转手动拨号;若服务器响应,则建立起一条与客户端的数据连接;m)客户端采集录音数据,在语音拨号中是对数字序列进行录制的,将其录制好后,以pcm文件保存;n)录制完毕后,将其发送至服务器;n)服务器调用语音识别引擎,对传输过的音频文件进行解析;n)将解析后的数字信息以文本形式回发给智能终端。
全文摘要
本发明公布了一种融合通信中智能语音交互系统及其实现方法,所述系统包括众多个智能终端、语音处理进程单元和一个语音服务器,其中语音处理进程单元都包括前端语音采集装置、实时传输模块、语音合成模块和语音识别模块,每个智能终端分别串接语音处理进程单元后与语音服务器通信,前端语音采集装置依次串接语音合成模块、语音识别模块后与语音服务器通信,前端语音采集装置的输出端串接实时传输模块后接语音服务器的输入端。所述方法首先,终端采集音频数据,进行录音。其次,终端将文本信息发至服务器,由服务器将文本信息转换为音频信息,实现Text-to-speech的业务。本发明系统结构简单,具有较强的鲁棒性。
文档编号H04M3/42GK101699840SQ200910185429
公开日2010年4月28日 申请日期2009年11月9日 优先权日2009年11月9日
发明者任梦琪, 夏然辉, 孙庆庆, 孙龙, 张勤, 张春, 张金玺, 洪松, 王开, 王毛, 葛俊, 裴文江, 顾衍 申请人:南京希华通信技术有限公司;东南大学