在前一章,自然语言问答系统的构造中将整个分为7大模块。这里讲解语音识别与发声模块。
在现有的技术中,windows平台能比较快速上手的应该就是微软的SAPI了。
SAPI中提供的两个主要接口是:
1.SR(Speech Recognition),能直接将语音信号转化成文字;
2.TTS(Text-To-Speech),能直接将文字读出来。(当然,你需要有语音包)
部分测试代码如下:
//语音识别的初始化函数
//主要是创建识别器、上下文环境等
HRESULT InitializeSpeech()
{
HRESULT hr=E_FAIL;
if (SUCCEEDED(hr = ::CoInitialize(NULL)))
{
/****/
//自己加一个recognizer,避免对系统自带语音的使用
hr=cpReconizer.CoCreateInstance(CLSID_SpInprocRecognizer);
if(FAILED(hr))
{
printf("Recognizer创建失败!");