Compartir a través de


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
S_OK
La función salió correctamente.
E_POINTER
El puntero ModelData es NULL.
E_INVALIDARG
Los parámetros KeywordId o LangId no son válidos.
HRESULT_FROM_WIN32(ERROR_GEN_FAILURE)
El procesamiento no se pudo completar.
E_HW_RESET
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

CoTaskMemAlloc

CoTaskMemFree

IKeywordDetectorOemAdapter

IMiniportWaveRTInputStream::GetReadPacket

KSPROPERTY_SOUNDDETECTOR_MATCHRESULT

SOUNDDETECTOR_PATTERNHEADER