Partager via


AcxAudioEngineCreate, fonction (acxelements.h)

La fonction AcxAudioEngineCreate est utilisée pour créer un moteur audio qui sera associé à un parent d’objet d’appareil WDFDEVICE de circuit.

Syntaxe

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

Paramètres

Object

Objet WDFDEVICE (décrit dans Résumé des objets framework) qui sera associé au circuit.

Attributes

Une structure WDF_OBJECT_ATTRIBUTES utilisée pour associer AcxAudioEngine à l’objet de circuit parent. Notez que les attributs WDF supplémentaires, tels que WDF_EXECUTION_LEVEL ou WDF_SYNCHRONIZATION_SCOPE, ne doivent pas être définis à l’aide du paramètre Attributes, car ils sont gérés par ACX.

Config

Structure ACX_AUDIOENGINE_CONFIG initialisée qui décrit la configuration du moteur audio.

AudioEngine

Pointeur vers un emplacement qui reçoit le handle vers le nouvel objet ACXAUDIOENGINE utilisé dans un circuit de rendu, pour représenter un DSP. Pour plus d’informations sur les objets ACX, consultez Résumé des objets ACX.

Valeur retournée

Retourne STATUS_SUCCESS si l’appel a réussi. Sinon, il retourne un code d’erreur approprié. Pour plus d’informations, consultez Utilisation de valeurs NTSTATUS.

Remarques

Exemple

L’exemple d’utilisation est illustré ci-dessous.

    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);

Configuration requise d’ACX

Version minimale d’ACX : 1.0

Pour plus d’informations sur les versions d’ACX, consultez Vue d’ensemble des versions d’ACX.

Configuration requise

Condition requise Valeur
En-tête acxelements.h
IRQL PASSIVE_LEVEL

Voir aussi