AcxAudioEngineCreate 函数 (acxelements.h)

AcxAudioEngineCreate 函数用于创建与线路 WDFDEVICE 设备对象父级关联的音频引擎。

语法

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

参数

Object

将与线路关联的 WDFDEVICE 对象(“框架对象摘要”中所述)。

Attributes

用于将 AcxAudioEngine 与父线路对象关联的 WDF_OBJECT_ATTRIBUTES 结构。 请注意,不应使用 属性 参数来设置其他 WDF 属性(如 WDF_EXECUTION_LEVEL 或 WDF_SYNCHRONIZATION_SCOPE),因为它们是由 ACX 管理的。

Config

描述音频引擎配置的初始化 ACX_AUDIOENGINE_CONFIG 结构

AudioEngine

指向接收呈现线路中使用的新 ACXAUDIOENGINE 对象的句柄的位置的指针,用于表示 DSP。 有关 ACX 对象的详细信息,请参阅 ACX 对象的摘要

返回值

如果调用成功,则返回 STATUS_SUCCESS。 否则,它将返回适当的错误代码。 有关详细信息,请参阅 使用 NTSTATUS 值

言论

示例用法如下所示。

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

ACX 要求

最低 ACX 版本: 1.0

有关 ACX 版本的详细信息,请参阅 ACX 版本概述

要求

要求 价值
标头 acxelements.h
IRQL PASSIVE_LEVEL

另请参阅