Condividi tramite


Funzione AcxAudioEngineCreate (acxelements.h)

La funzione AcxAudioEngineCreate viene usata per creare un motore audio che verrà associato a un elemento padre del 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) 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 Attributes come sono gestiti da ACX.

Config

Struttura di ACX_AUDIOENGINE_CONFIG inizializzata che descrive la configurazione del motore audio.

AudioEngine

Puntatore a una posizione che riceve l'handle al nuovo oggetto ACXAUDIOENGINE usato 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 dei valori NTSTATUS.

Commenti

Esempio

Di seguito è riportato l'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 ACX, vedere Panoramica della versione di ACX.

Requisiti

Requisito Valore
Intestazione acxelements.h
IRQL PASSIVE_LEVEL

Vedi anche