Condividi tramite


Funzione AcxAudioEngineCreate (acxelements.h)

La funzione AcxAudioEngineCreate viene usata per creare un motore audio che verrà associato a un elemento padre dell'oggetto dispositivo WDFDEVICE del circuito.

Sintassi

NTSTATUS AcxAudioEngineCreate(
  ACXCIRCUIT              Object,
  PWDF_OBJECT_ATTRIBUTES  Attributes,
  PACX_AUDIOENGINE_CONFIG Config,
  ACXAUDIOENGINE          *AudioEngine
);

Parametri

Object

Oggetto WDFDEVICE (descritto in Riepilogo degli oggetti framework) che verrà associato al circuito.

Attributes

Struttura WDF_OBJECT_ATTRIBUTES utilizzata per associare AcxAudioEngine all'oggetto circuito padre. Si noti che gli attributi WDF aggiuntivi, ad esempio WDF_EXECUTION_LEVEL o WDF_SYNCHRONIZATION_SCOPE, non devono essere impostati usando il parametro attributi perché sono gestiti da ACX.

Config

Struttura ACX_AUDIOENGINE_CONFIG inizializzata che descrive la configurazione del motore audio.

AudioEngine

Puntatore a una posizione che riceve l'handle al nuovo oggetto ACXAUDIOENGINE utilizzato in un circuito di rendering, per rappresentare un DSP. Per altre informazioni sugli oggetti ACX, vedere Riepilogo degli oggetti ACX.

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.

    NTSTATUS                        status;
    WDF_OBJECT_ATTRIBUTES           attributes;
    ACX_AUDIOENGINE_CONFIG          audioEngineCfg;

    ACX_AUDIOENGINE_CONFIG_INIT(&audioEngineCfg);

    audioEngineCfg.HostPin = Pins[HostPin];
    audioEngineCfg.OffloadPin = Pins[OffloadPin];
    audioEngineCfg.LoopbackPin = Pins[LoopbackPin];
    audioEngineCfg.VolumeElement = volumeElement;
    audioEngineCfg.MuteElement = muteElement;
    audioEngineCfg.PeakMeterElement = peakmeterElement;
    audioEngineCfg.Callbacks = &audioEngineCallbacks;

    WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&attributes, CODEC_ENGINE_CONTEXT);
    attributes.ParentObject = Circuit;

    status = AcxAudioEngineCreate(Circuit, &attributes, &audioEngineCfg, AudioEngine);

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