共用方式為


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 );

啟動關鍵詞辨識會話。 此會話會持續到辨識第一個關鍵詞為止。 發生這種情況時,將會引發 辨識 的事件,而會話將會結束。 若要重新排列 關鍵詞,必須在發出事件之後再次呼叫 方法。

參數

傳回

未來解析為 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 建構的組態來呼叫