Condividi tramite


EVT_ACX_PEAKMETER_RETRIEVE_LEVEL funzione di callback (acxelements.h)

La EVT_ACX_PEAKMETER_RETRIEVE_LEVEL funzione di callback viene implementata dal driver e viene chiamata quando viene richiesto il livello di un canale specificato in un nodo peakmeter.

Sintassi

EVT_ACX_PEAKMETER_RETRIEVE_LEVEL EvtAcxPeakmeterRetrieveLevel;

NTSTATUS EvtAcxPeakmeterRetrieveLevel(
  ACXPEAKMETER PeakMeter,
  ULONG Channel,
  LONG *Level
)
{...}

Parametri

PeakMeter

Oggetto ACXPEAKMETER esistente, inizializzato. Per altre informazioni sugli oggetti ACX, vedere Riepilogo degli oggetti ACX.

Channel

ULONG che fa riferimento a un canale nel nodo del picco specificato. Se questo valore è -1, fa riferimento al canale master che imposta il livello per tutti i canali nel nodo peakmeter.

Level

Valore LONG che indica il livello massimo di segnale audio che si è verificato per il canale specificato nel nodo peakmeter dall'ultima reimpostazione del nodo peakmeter.

Valore restituito

Restituisce STATUS_SUCCESS se la chiamata ha avuto esito positivo. In caso contrario, restituisce un codice di errore appropriato. Per altre informazioni, vedere Uso di valori NTSTATUS.

Osservazioni

Esempio

Di seguito è riportato un esempio di utilizzo.

typedef struct _CODEC_PEAKMETER_ELEMENT_CONTEXT {
    LONG            PeakMeterLevel[MAX_CHANNELS];
} CODEC_PEAKMETER_ELEMENT_CONTEXT, *PCODEC_PEAKMETER_ELEMENT_CONTEXT;

WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(CODEC_PEAKMETER_ELEMENT_CONTEXT, GetCodecPeakMeterElementContext)

EVT_ACX_PEAKMETER_RETRIEVE_LEVEL    CodecR_EvtPeakMeterRetrieveLevelCallback;

NTSTATUS
NTAPI
CodecR_EvtPeakMeterRetrieveLevelCallback(
    _In_    ACXPEAKMETER    PeakMeter,
    _In_    ULONG           Channel,
    _Out_   LONG *          PeakMeterLevel
    )
{
    PAGED_CODE();

    ASSERT(PeakMeter);
    PCODEC_PEAKMETER_ELEMENT_CONTEXT peakmeterCtx = GetCodecPeakMeterElementContext(PeakMeter);
    ASSERT(peakmeterCtx);

    if (Channel == ALL_CHANNELS_ID)
    {
        Channel = 0;
    }

    *PeakMeterLevel = peakmeterCtx->PeakMeterLevel[Channel];

    return STATUS_SUCCESS;
}

Requisiti ACX

versione minima di ACX: 1.0

Per altre informazioni sulle versioni di ACX, vedere panoramica della versione ACX.

Fabbisogno

Requisito Valore
intestazione acxelements.h
IRQL PASSIVE_LEVEL

Vedere anche

  • intestazione acxelements.h