Condividi tramite


Metodo IKeywordDetectorOemAdapter::P arseDetectionResultData (keyworddetectoroepter.h)

Il metodo ParseDetectionResultData viene chiamato dal sistema operativo dopo aver gestito un evento di rilevamento delle parole chiave e dopo aver recuperato i dati dei risultati da KSPROPERTY_SOUNDDETECTOR_MATCHRESULT. Il sistema operativo passa i dati dei risultati di corrispondenza specifici dell'OEM a questo metodo per ottenere i risultati di un rilevamento di parole chiave. OEMDLL elabora i risultati e restituisce informazioni sulla parola chiave corrispondente, sulla lingua associata alla parola chiave corrispondente e sull'utente corrispondente (se presente).

Sintassi

HRESULT ParseDetectionResultData(
  [in]  IStream                     *UserModelData,
  [in]  SOUNDDETECTOR_PATTERNHEADER *Result,
  [out] KEYWORDID                   *KeywordId,
  [out] LANGID                      *LangId,
  [out] BOOL                        *pIsUserMatch,
  [out] ULONG64                     *KeywordStartPerformanceCounterValue,
  [out] ULONG64                     *KeywordEndPerformanceCounterValue
);

Parametri

[in] UserModelData

Puntatore a IStream associato ai dati del modello per il modello di arming.

[in] Result

Puntatore al SOUNDDETECTOR_PATTERNHEADER dall'DDI.

[out] KeywordId

Identifica una funzione parola chiave. Il driver può restituire 0 per indicare nessuna corrispondenza.

[out] LangId

Identifica una lingua.

[out] pIsUserMatch

Indica se l'utente corrisponde.

[out] KeywordStartPerformanceCounterValue

Facoltativamente, restituisce l'ora di inizio della parola chiave in termini di contatore delle prestazioni di Windows. L'OEMDLL deve restituire 0 se non è disponibile.

[out] KeywordEndPerformanceCounterValue

Facoltativamente, restituisce l'ora di fine della parola chiave in termini di contatore delle prestazioni di Windows. L'OEMDLL deve restituire 0 se non è disponibile.

Valore restituito

Questo metodo può restituire uno di questi valori.

Valore restituito Descrizione
S_OK
La funzione è stata chiusa correttamente.
E_POINTER
Il puntatore ModelData è NULL.
E_INVALIDARG
I parametri KeywordId o LangId non sono validi.
HRESULT_FROM_WIN32(ERROR_GEN_FAILURE)
Impossibile completare l'elaborazione.
E_HW_RESET
Reimpostazione hardware a causa di un errore interno.

Osservazioni

Se il driver include una parte della parola chiave parlata nel flusso di parole chiave/comando burst dal relativo pin del rilevatore di parole chiave, il driver deve restituire un valore valido per KeywordEndTime. In caso contrario, il driver può restituire facoltativamente 0.

Se il driver restituisce KeywordStartTime o KeywordEndTime, i valori restituiti devono essere coerenti con i timestamp restituiti dalla routine IMiniportWaveRTInputStream::GetReadPacket.

Il driver può restituire valori validi per KeywordStartTime e KeywordEndTime indipendentemente dal fatto che il driver includa una parte della parola chiave pronunciata nel flusso di parole chiave/comando burst.

Se il chiamante riceve E_HW_RESET, nessuna parola chiave è stata rilevata dall'hardware e lo stato è andato perso. Per tornare a uno stato di monitoraggio, sarà necessario un nuovo braccio.

Fabbisogno

Requisito Valore
client minimo supportato Windows 10
server minimo supportato Windows Server 2016
piattaforma di destinazione Finestre
intestazione keyworddetectoroepter.h

Vedere anche

CoTaskMemAlloc

CoTaskMemFree

IKeywordDetectorOemAdapter

IMiniportWaveRTInputStream::GetReadPacket

KSPROPERTY_SOUNDDETECTOR_MATCHRESULT

SOUNDDETECTOR_PATTERNHEADER