智客公社

标题: 微软语音辨认SDK总结 [打印本页]

作者: 爱琴海里柠檬树    时间: 2018-12-8 14:35
标题: 微软语音辨认SDK总结
微软语音辨认SDK总结:

CComPtr<ISpRecognizer> m_pSREngine;// 语音辨认引擎(recognition)的接口。

CComPtr<ISpRecoContext> m_pSRContext;// 辨认引擎上下文(context)的接口。

CComPtr<ISpRecoGrammar> m_pSRGrammar;// 辨认文法(grammar)的接口。

CComPtr<ISpStream> m_pInputStream;// 流()的接口。

CComPtr<ISpObjectToken> m_pToken;// 语音特征的(token)接口。

CComPtr<ISpAudio> m_pAudio;// 音频(Audio)的接口。(用来保存原来默许的输入流)

ULONGLONG ullGrammerID ;

CoInitialize(NULL);

m_pSREngine.CoCreateInstance ( CLSID_SpInprocRecognizer );

m_pSREngine->CreateRecoContext ( &m_pSRContext );//建立上下文

//这里是设置事情

HWND hwnd = GetSafeHwnd();

hr = m_pSRContext->SetNotifyWindowMessage(hwnd,WM_RECORD,0,0);

hr=m_pSRContext->SetInterest(SPFEI(SPEI_RECOGNITION),SPFEI(SPEI_RECOGNITION));

//这里是设置默许的音频输入

hr = SpCreateDefaultObjectFromCategoryId(SPCAT_AUDIOIN, &m_pAudio);

m_pSREngine->SetInput(m_pAudio,true);

//这里是加载默许的语法规则

ullGrammerID = 1000;

hr=m_pSRContext->CreateGrammar(ullGrammerID,&m_pSRGrammar);

WCHAR wszXMLFile[20]=L"";

MultiByteToWideChar(CP_ACP, 0,(LPCSTR)"cmd.xml" , -1, wszXMLFile, 256); //这里修正XML的目录

hr=m_pSRGrammar->LoadCmdFromFile(wszXMLFile,SPLO_DYNAMIC);

//开启语音辨认

m_pSRGrammar->SetRuleState( NULL,NULL,SPRS_ACTIVE );

hr=m_pSREngine->SetRecoState(SPRST_ACTIVE);

[attach]81524[/attach]

作者: 前列腺炎与中医    时间: 2018-12-8 20:23
大人,此事必有蹊跷!
作者: hometo    时间: 2018-12-9 07:14
老哥,这波稳




欢迎光临 智客公社 (http://bbs.cnaiplus.com/) Powered by Discuz! X3.4