IKeywordDetectorOemAdapter::VerifyUserKeyword 方法 (keyworddetectoroemadapter.h)

训练用户体验使用 VerifyUserKeyword 方法验证在训练期间捕获的口述话语的一个实例是否与预定义关键字 (keyword) 匹配一定容忍度内。

语法

HRESULT VerifyUserKeyword(
  [in] IStream        *ModelData,
  [in] KEYWORDID      KeywordId,
  [in] LANGID         LangId,
  [in] LONG           KeywordEndBytePos,
  [in] IMFMediaBuffer *UserRecording
);

参数

[in] ModelData

指向绑定到给定存储模型的模型数据的 IStream 对象的指针。 在初始调用中,此值将为空。

[in] KeywordId

UserRecording 参数中的 KEYWORDID

[in] LangId

UserRecording 参数中口语的 LANGID

[in] KeywordEndBytePos

指示 UserRecording 中关键字 (keyword) 的结束。

[in] UserRecording

指向缓冲区的指针,该缓冲区包含采用适当 IMFMediaType 格式的原始数据。

用户录制必须具有以下属性:

  • 类型 = 音频
  • 子类型 = IEEE_FLOAT
  • 采样率 = 16 kHz
  • 位 = 32

返回值

此方法可以返回其中一个值。

返回代码 说明
S_OK
函数已成功退出。
E_NOTIMPL
设备不支持用户关键字 (keyword) 训练。
E_INVALIDARG
满足以下一个或多个条件:
  • ModelData 指针为 NULL
  • KeywordId 参数无效。
  • LangId 参数无效。
E_NO_MATCH
用户录制不包含指定的关键字 (keyword) 。

注解

请注意,音频以独特的方式处理语音激活训练。 下表总结了语音激活训练与常规语音识别用法之间的差异。

培训 识别
模型 原始 语音
Pin 普通 突发
音频格式 32 位浮点 (类型 = Audio,Subtype = IEEE_FLOAT,采样率 = 16 kHz,bits = 32) 由 OS 音频堆栈管理
麦克风 麦克风 0 数组中的所有麦克风

要求

要求
最低受支持的客户端 Windows 10
最低受支持的服务器 Windows Server 2016
目标平台 Windows
标头 keyworddetectoroemadapter.h

另请参阅

IKeywordDetectorOemAdapter

IMFMediaType

KEYWORDID