Microsoft Speech SDK孤立词语音识别

Microsoft Speech SDK孤立词语音识别

ID:44714884

大小:31.50 KB

页数:3页

时间:2019-10-25

Microsoft Speech SDK孤立词语音识别_第1页
Microsoft Speech SDK孤立词语音识别_第2页
Microsoft Speech SDK孤立词语音识别_第3页
资源描述:

《Microsoft Speech SDK孤立词语音识别》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于MicrosoftSpeechSDK实现用户孤立词识别的过程如下:1、初始化COM端口:在CWinApp的子类中,调用CoInitializeEx函数进行COM初始化:::CoInitializeEx(NULL,COINIT_APARTMENTTHREADED);2、创建识别引擎:微软SpeechSDK5.1支持两种模式的:共享(Share)和独享(InProc)。一般情况下可以使用共享型,大的服务型程序使用InProc。如下:hr=m_cpRecognizer.CoCreateInstance(CLSID_S

2、pSharedRecognizer);//Sharehr=m_cpRecognizer.CoCreateInstance(CLSID_SpInprocRecognizer);//InProc如果是Share型,直接到步骤3;如果是InProc型,必须使用ISpRecognizer::SetInput设置输入:CComPtrcpAudioToken;hr=SpGetDefaultTokenFromCategoryId(SPCAT_AUDIOIN,&cpAudioToken);if(SU

3、CCEEDED(hr)){hr=m_cpRecognizer->SetInput(cpAudioToken,TRUE);}或者:CComPtrcpAudio;hr=SpCreateDefaultObjectFromCategoryId(SPCAT_AUDIOIN,&cpAudio);hr=m_cpRecoEngine->SetInput(cpAudio,TRUE);3、创建识别上下文接口:调用ISpRecognizer::CreateRecoContext创建识别上下文接口:hr=m_cpRec

4、oEngine->CreateRecoContext(&m_cpRecoCtxt);4、设置识别消息:调用SetNotifyWindowMessage告诉Windows哪个是我们的识别消息,需要进行处理:hr=m_cpRecoCtxt->SetNotifyWindowMessage(m_hWnd,WM_RECOEVENT,0,0);5、设置事件:最重要的事件是“SPEI_RECOGNITION”:constULONGLONGullInterest=SPFEI(SPEI_SOUND_START)

5、SPFEI(SPEI

6、_SOUND_END)

7、SPFEI(SPEI_RECOGNITION);hr=m_cpRecoCtxt->SetInterest(ullInterest,ullInterest);6、创建语法规则:语法规则分为两种,一种是听说式(dictation),一种是命令式(commandandcontrol---C&C)。首先利用ISpRecoContext::CreateGrammar创建语法对象,然后加载不同的语法规则://dictationhr=m_cpRecoCtxt->CreateGrammar(GIDDICTA

8、TION,&m_cpDictationGrammar);if(SUCCEEDED(hr)){hr=m_cpDictationGrammar->LoadDictation(NULL,SPLO_STATIC);}//C&Chr=m_cpRecoCtxt->CreateGrammar(GIDCMDCTRL,&m_cpCmdGrammar);然后用ISpRecoGrammar::LoadCmdxxx加载语法:WCHARwszXMLFile[20]=L"";MultiByteToWideChar(CP_ACP,0,(LPCS

9、TR)"CmdCtrl.xml",-1,wszXMLFile,256);hr=m_cpCmdGrammar->LoadCmdFromFile(wszXMLFile,SPLO_DYNAMIC);7、激活语法进行识别:hr=m_cpDictationGrammar->SetDictationState(SPRS_ACTIVE);//dictationhr=m_cpCmdGrammar->SetRuleState(NULL,NULL,SPRS_ACTIVE);//C&C8、获取识别消息,进行处理:截获识别消息(WM_RE

10、COEVENT),然后处理。识别的结果放在CSpEvent的ISpRecoResult中:USES_CONVERSION;CSpEventevent;switch(event.eEventId){caseSPEI_RECOGNITION:{m_bGotReco=TRUE;staticconstWCHARwszUnrecognized[]=L"

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。