EVT_ACX_STREAMAUDIOENGINE_ASSIGN_LOOPBACK_PROTECTION 콜백 함수(acxelements.h)

EVT_ACX_STREAMAUDIOENGINE_ASSIGN_LOOPBACK_PROTECTION 콜백은 드라이버에 의해 구현되며 오디오 엔진 노드에 대해 루프백 보호 상태 설정될 때 호출됩니다.

구문

EVT_ACX_STREAMAUDIOENGINE_ASSIGN_LOOPBACK_PROTECTION EvtAcxStreamaudioengineAssignLoopbackProtection;

NTSTATUS EvtAcxStreamaudioengineAssignLoopbackProtection(
  ACXSTREAMAUDIOENGINE StreamAudioEngine,
  ACX_CONSTRICTOR_OPTION ConstrictorOption
)
{...}

매개 변수

StreamAudioEngine

초기화된 기존 ACXSTREAMAUDIOENGINE 개체입니다. ACX 개체에 대한 자세한 내용은 ACX 개체 요약을 참조하세요.

ConstrictorOption

스트림 오디오 엔진의 루프백 보호 상태 지정하는 ACX_CONSTRICTOR_OPTION. 상태 AcxConstrictorOptionNone 또는 AcxConstrictorOptionMute로 설정할 수 있습니다. AcxConstrictorOptionMute가 적용된 활성 스트림이 있는 경우 이 오디오 출력에 대한 루프백 탭은 침묵을 내보냅니다. 모든 활성 스트림에 AcxConstrictorOptionNone이 적용되면 루프백 탭에 의미 있는 데이터가 포함됩니다.

반환 값

호출에 성공하면 를 반환합니다 STATUS_SUCCESS . 그렇지 않으면 적절한 오류 코드를 반환합니다. 자세한 내용은 NTSTATUS 값 사용을 참조하세요.

설명

예제

예제 사용법은 다음과 같습니다.

EVT_ACX_STREAMAUDIOENGINE_ASSIGN_LOOPBACK_PROTECTION        CodecR_EvtAcxStreamAudioEngineAssignLoopbackProtection;

NTSTATUS
CodecR_EvtAcxStreamAudioEngineAssignLoopbackProtection(
    _In_    ACXSTREAMAUDIOENGINE    StreamAudioEngine,
    _In_    ACX_CONSTRICTOR_OPTION  ConstrictorOption
)
{
    NTSTATUS status = STATUS_INVALID_PARAMETER;
    ACXSTREAM stream;
    PCODEC_STREAM_CONTEXT ctx;
    CRenderStreamEngine * streamEngine = NULL;

    PAGED_CODE();

    stream = AcxStreamAudioEngineGetStream(StreamAudioEngine);
    if (stream)
    {
        ctx = GetCodecStreamContext(stream);

        streamEngine = static_cast<CRenderStreamEngine*>(ctx->StreamEngine);

        status = streamEngine->SetLoopbackProtection(ConstrictorOption);
    }

    return status;
}

ACX 요구 사항

최소 ACX 버전: 1.0

ACX 버전에 대한 자세한 내용은 ACX 버전 개요를 참조하세요.

요구 사항

요구 사항
헤더 acxelements.h
IRQL PASSIVE_LEVEL

추가 정보