KSPROPSETID_SoundDetector2

KSPROPSETID_SoundDetector2 属性集包含用于为也支持检测器的音频捕获设备注册筛选器的属性。 筛选器有一个 KS 引脚工厂,其引脚类别为 KSNODETYPE_AUDIO_KEYWORDDETECTOR。 给定的 KS 筛选器实例中不能有多个具有此 KS 引脚类别的引脚工厂。

KSPROPSETID_SoundDetector2 在 Windows 10 版本 1903 及更高版本中受支持。 KSPROPSETID_SoundDetector2 属性集用于支持多个语音代理。 有关详细信息,请参阅多语音助手KSPROPSETID_SoundDetector 属性集用于仅支持 Cortana 的系统。

KSPROPSETID_SoundDetector2 使用 KSSOUNDDETECTORPROPERTY 结构,而不是 KSPROPERTY:

typedef struct {
    KSPROPERTY  Property;
    GUID        EventId;
} KSSOUNDDETECTORPROPERTY, *PKSSOUNDDETECTORPROPERTY;

所有 KSPROPSETID_SoundDetector2 属性都使用 KSSOUNDDETECTORPROPERTY 数据结构调用。 此数据结构包含一个 KSPROPERTY,以及要防护、重置、检测关键字的事件 ID 等。

标头文件定义 KSPROPSETID_SoundDetector2 属性集,如下所示:

#define STATIC_KSPROPSETID_SoundDetector2\
    0xfe07e322, 0x450c, 0x4bd5, 0x84, 0xca, 0xa9, 0x48, 0x50, 0xe, 0xa6, 0xaa
DEFINE_GUIDSTRUCT("FE07E322-450C-4BD5-84CA-A948500EA6AA", KSPROPSETID_SoundDetector2);

KSPROPSETID_SoundDetector2 属性集包含下列属性:

  • KSPROPERTY_SOUNDDETECTOR_SUPPORTEDPATTERNS - 此属性由操作系统设置,以配置要检测的关键字。

  • KSPROPERTY_SOUNDDETECTOR_PATTERNS - 驱动程序的 KS 筛选器支持此读/写属性。 操作系统设置此属性以配置要检测的关键字。

  • KSPROPERTY_SOUNDDETECTOR_ARMED - 此读/写属性只是指示检测器是否防护的布尔状态。 操作系统将其设置为使用关键字检测器。 操作系统可以清除此项以解除连接。 当设置了关键字模式,并在检测到关键字后,驱动程序会自动清除此模式。 (操作系统必须重新防护。)

  • KSPROPERTY_SOUNDDETECTOR_RESET - 将检测器重置为未设置模式的未防护状态。

  • KSPROPERTY_SOUNDDETECTOR_STREAMINGSUPPORT - 将来仅用于语音启动检测器。 此请求失败,表明不支持属性或成功,并对所有其他驱动程序返回 true。

在关键字检测时,发送包含 KSNOTIFICATIONID_SoundDetector 的 PNP 通知。 注意:这不是 KSEvent,而是通过 IoReportTargetDeviceChangeAsynchronous 发送的带有有效负载的 PNP 事件。