class KeywordRecognizer
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< constKeywordRecognitionEventArgs & > Recognized;
與關鍵詞辨識相關的事件訊號。
已取消
語法: public EventSignal< constSpeechRecognitionCanceledEventArgs & > Canceled;
與取消互動相關的事件訊號。 事件會指出原因是否為直接取消或錯誤。
屬性
語法: public constPropertyCollection & 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 建構的組態來呼叫