,您可以按照類似的方法來使用MATLAB的ActiveX服務器C#等: http://www.mathworks.co.uk/help/matlab/ref/actxserver.html
您需要首先聲明一個語音識別引擎
RC = actxserver('SAPI.SpSharedRecoContext'); %connect to speech engine
然後爲識別器的每個狀態設置各種回調函數:
RC.registerevent({'Recognition' @CallbackFunction; 'Hypothesis' @CallbackFunction; 'FalseRecognition' @CallbackFunction})
回調函數的內容應該是沿着這些線路:
function word = CallbackFunction(varargin)
global word
result = varargin{length(varargin)-2};
word = result.Phraseinfo.GetText;
end
後來終於切換識別器上:
RC.Recognizer.State = 'SRSActive';
你會需要參考的哪些功能被稱爲文檔時 http://msdn.microsoft.com/en-us/library/ms723627(v=vs.85).aspx
您還需要設置語法詞典才能獲得有意義的結果。因爲引擎會試圖識別任何詞。