Share via


Função AcxAudioEngineCreate (acxelements.h)

A função AcxAudioEngineCreate é usada para criar um mecanismo de áudio que será associado a um circuito pai do objeto de dispositivo WDFDEVICE.

Sintaxe

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

Parâmetros

Object

Um objeto WDFDEVICE (descrito em Resumo de Objetos framework) que será associado ao circuito.

Attributes

Uma estrutura WDF_OBJECT_ATTRIBUTES usada para associar o AcxAudioEngine ao objeto de circuito pai. Observe que atributos adicionais do WDF, como WDF_EXECUTION_LEVEL ou WDF_SYNCHRONIZATION_SCOPE, não devem ser definidos usando o parâmetro Attributes , pois são gerenciados pelo ACX.

Config

Uma estrutura de ACX_AUDIOENGINE_CONFIG inicializada que descreve a configuração do mecanismo de áudio.

AudioEngine

Um ponteiro para um local que recebe o identificador para o novo objeto ACXAUDIOENGINE usado em um circuito de renderização, para representar um DSP. Para obter mais informações sobre objetos ACX, consulte Resumo de objetos ACX.

Retornar valor

Retorna STATUS_SUCCESS se a chamada foi bem-sucedida. Caso contrário, ele retornará um código de erro apropriado. Para obter mais informações, consulte Usando valores NTSTATUS.

Comentários

Exemplo

O uso de exemplo é mostrado abaixo.

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

Requisitos do ACX

Versão mínima do ACX: 1.0

Para obter mais informações sobre as versões do ACX, consulte Visão geral da versão do ACX.

Requisitos

Requisito Valor
Cabeçalho acxelements.h
IRQL PASSIVE_LEVEL

Confira também