class KeywordRecognizer
: public std::enable_shared_from_this< KeywordRecognizer >
專門用來處理關鍵詞啟用的辨識器類型。
首先,對象必須具現化:
auto audioConfig = AudioConfig::FromMicrophoneInput(); // Or an alternative input
auto recognizer = [KeywordRecognizer::FromConfig](#fromconfig)(audioConfig);
(選擇性)然後,事件必須以有線方式接收通知:
recognizer->Recognized += [](const KeywordRecognitionEventArgs& event)
{
// Your logic here...
};
最後,必須啟動辨識。
auto keywordModel = [KeywordRecognitionModel::FromFile](keywordrecognitionmodel.md#fromfile)(modelPath);
auto resultFuture = recognizer->RecognizeKeywordOnceAsync(keywordModel);
resultFuture.wait();
auto result = resultFuture.get();
成員
已認列
語法:public EventSignal< const KeywordRecognitionEventArgs & > Recognized;
與關鍵詞辨識相關的事件訊號。
已取消
語法:public EventSignal< const SpeechRecognitionCanceledEventArgs & > Canceled;
與取消互動相關的事件訊號。 事件指出原因是否為直接取消或錯誤。
屬性
語法:public const PropertyCollection & Properties;
針對這個 KeywordRecognizer 定義的屬性及其值集合。
~KeywordRecognizer
語法:public inline ~KeywordRecognizer ( );
解構函式。
RecognizeOnceAsync
語法:public inline std::future< std::shared_ptr< KeywordRecognitionResult > > RecognizeOnceAsync ( std::shared_ptr< KeywordRecognitionModel > model );
啟動關鍵詞辨識會話。 此會話會持續到辨識第一個關鍵詞為止。 發生這種情況時,將會引發 辨識 事件,而會話將會結束。 若要重新排列 關鍵詞,必須在發出事件之後再次呼叫 方法。
參數
-
model描述我們想要偵測關鍵詞的 KeywordRecognitionModel。
退貨
未來,解析為 KeywordRecognitionResult,會在偵測到關鍵詞之後解析。
請注意,如果在輸入中偵測到沒有關鍵詞,工作永遠不會解析(除非呼叫 StopRecognition。
StopRecognitionAsync
語法:public inline std::future< void > StopRecognitionAsync ( );
停止目前作用中的關鍵詞辨識會話。
退貨
當使用中會話停止時解決的未來。如果有的話。
FromConfig
語法:public inline static std::shared_ptr< KeywordRecognizer > FromConfig ( std::shared_ptr< Audio::AudioConfig > audioConfig );
從 AudioConfig 建立 KeywordRecognizer。 組態的目的是定義辨識器物件要使用的音訊輸入。
參數
-
audioConfig定義辨識器要使用的音訊輸入。
退貨
新的 KeywordRecognizer,將取用來自指定輸入的音訊。
如果未提供任何音訊設定,它相當於使用 AudioConfig::FromDefaultMicrophoneInput 建構的組態來呼叫