语音识别编程技术.docxVIP

  • 4
  • 0
  • 约1.06万字
  • 约 10页
  • 2017-09-02 发布于重庆
  • 举报
语音识别编程技术

语音识别编程涉及IspRecognizer,IspRecoContext和ISpRecoGrammar等多个语音识别引擎接口。下面先来设计一个操作语音识别的类CSpeechRecognition,然后基于该类来实现一个实例。11.3.1??构造CSpeechRecognition类CSpeechRecognition类封装了语音识别操作所需调用的几个接口,使用它进行语音识别编程很方便,也很简洁。CSpeechRecognition类的定义如下:///////////////////////////////////////////////////////////////// active speech engine#include atlbase.hextern CComModule _Module;#include atlcom.h#include sapi.h#include sphelper.h#include spuihelp.h///////////////////////////////////////////////////////////////// speech message#define WM_SREVENT???WM_USER+102?class CSpeechRecognition?{public:???CSpeechRecognition();???virtual ~CSpeechRecognition();????// initialize???BOOL Initialize(HWND hWnd = NULL, BOOL bIsShared = TRUE);???void Destroy();????// start and stop???BOOL Start();???BOOL Stop();???BOOL IsDictationOn()???{???????return m_bOnDictation;???}????// event handler???void GetText(WCHAR **ppszCoMemText, ULONG ulStart = 0, ULONG nlCount = -1);????// voice training???HRESULT VoiceTraining(HWND hWndParent);????// microphone setup???HRESULT MicrophoneSetup(HWND hWndParent);????// token list???HRESULT InitTokenList(HWND hWnd, BOOL bIsComboBox = FALSE);????// error string???CString GetErrorString()???{???????return m_sError;???}????// interface?????CComPtrISpRecognizer m_cpRecoEngine;??// SR engine???????CComPtrISpRecoContext m_cpRecoCtxt;???//Recognition contextfor dictation?????CComPtrISpRecoGrammar m_cpDictationGrammar;??// Dictation grammar?private:???CString m_sError;????BOOL????m_bOnDictation;};其中定义的消息WM_SREVENT用于指示语音识别事件,该消息将通知到初始化函数指定的响应窗口。类中定义了3个接口指针m_cpRecoEngine,m_cpRecoCtxt和m_cpDictationGrammar,分别用于引用语音识别引擎的3个重要接口IspRecognizer,ISpRecoContext和IspRecoGrammar。初始化函数Initialize设定了语音识别引擎的基本工作环境,包括引擎、识别上下文、语法、音频和事件等的初始化:BOOL CSpeechRecognition::Initialize(HWND hWnd, BOOL bIsShared){???// com library???if (FAILED(CoInitialize(NULL)))???{???????m_sError=_T(Error intialization COM);???????return FALSE;???}????// SR engine????HRESULT hr = S_OK;????if (bIsShared)????{????????// Shared reco engine

文档评论(0)

1亿VIP精品文档

相关文档