Método IKeywordDetectorOemAdapter::P arseDetectionResultData (keyworddetectoroemadapter.h)
El sistema operativo llama al método ParseDetectionResultData después de controlar un evento de detección de palabras clave y después de recuperar los datos de resultado de KSPROPERTY_SOUNDDETECTOR_MATCHRESULT. El sistema operativo pasa los datos de resultados de coincidencia específicos del OEM a este método para obtener los resultados de una detección de palabras clave. OEMDLL procesa los resultados y devuelve información sobre la palabra clave coincidente, el idioma asociado a la palabra clave coincidente y el usuario coincidente (si existe).
Sintaxis
HRESULT ParseDetectionResultData(
[in] IStream *UserModelData,
[in] SOUNDDETECTOR_PATTERNHEADER *Result,
[out] KEYWORDID *KeywordId,
[out] LANGID *LangId,
[out] BOOL *pIsUserMatch,
[out] ULONG64 *KeywordStartPerformanceCounterValue,
[out] ULONG64 *KeywordEndPerformanceCounterValue
);
Parámetros
[in] UserModelData
Puntero a IStream enlazado a los datos del modelo para el patrón de arming.
[in] Result
Puntero al SOUNDDETECTOR_PATTERNHEADER desde la DDI.
[out] KeywordId
Identifica una función de palabra clave. El controlador puede devolver 0 para indicar ninguna coincidencia.
[out] LangId
Identifica un idioma.
[out] pIsUserMatch
Indica si el usuario coincide.
[out] KeywordStartPerformanceCounterValue
Opcionalmente, devuelve la hora de inicio de la palabra clave en términos del contador de rendimiento de Windows. El OEMDLL debe devolver 0 si no está disponible.
[out] KeywordEndPerformanceCounterValue
Opcionalmente, devuelve la hora de finalización de la palabra clave en términos del contador de rendimiento de Windows. El OEMDLL debe devolver 0 si no está disponible.
Valor devuelto
Este método puede devolver uno de estos valores.
Valor devuelto | Descripción |
---|---|
|
La función salió correctamente. |
|
El puntero ModelData es NULL. |
|
Los parámetros KeywordId o LangId no son válidos. |
|
El procesamiento no se pudo completar. |
|
El restablecimiento de hardware debido a un error interno. |
Comentarios
Si el controlador incluye cualquier parte de la palabra clave hablada en el flujo de palabra clave o comando de ráfaga desde su pin del detector de palabras clave, el controlador debe devolver un valor válido para KeywordEndTime. De lo contrario, el controlador puede devolver opcionalmente 0.
Si el controlador devuelve KeywordStartTime o KeywordEndTime, los valores devueltos deben ser coherentes con las marcas de tiempo devueltas de la rutina IMiniportWaveRTInputStream::GetReadPacket del controlador.
El controlador puede devolver valores válidos para KeywordStartTime y KeywordEndTime independientemente de si el controlador incluye cualquier parte de la palabra clave hablada en el flujo de comandos o palabra clave de ráfaga.
Si el autor de la llamada recibe E_HW_RESET, el hardware no detectó ninguna palabra clave y el estado se perdió. Se requerirá un nuevo brazo para volver a un estado de supervisión.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 10 |
Servidor mínimo compatible | Windows Server 2016 |
Plataforma de destino | Windows |
Encabezado | keyworddetectoroemadapter.h |
Consulte también
IMiniportWaveRTInputStream::GetReadPacket