다음을 통해 공유


IOCTL_SBAUD_GET_MUTEPROPERTYVALUES IOCTL(sidebandaudio.h)

오디오 드라이버는 IOCTL_SBAUD_GET_MUTEPROPERTYVALUES IOCTL을 호출하여 모든 채널에 대한 음소거 단계별 데이터 범위 및 최소/최대 값을 쿼리할 수 있습니다. 그런 다음 이러한 값은 KSPROPERTY_AUDIO_MUTE 기본 지원을 위해 반환되어야 합니다.

주 코드

IRP_MJ_DEVICE_CONTROL

입력 버퍼

IOCTL_SBAUD_GET_DEVICE_DESCRIPTOR 보고한 오디오 엔드포인트 수를 기반으로 하는 0 기반 엔드포인트 인덱스 값입니다. 0에서 (N-1)까지의 ULONG 값입니다. 여기서 N은 디바이스의 엔드포인트 수입니다.

입력 버퍼 길이

ULONG의 크기입니다.

출력 버퍼

KSPROPERTY_DESCRIPTION KSPROPERTY_DESCRIPTION 및 KSPROPERTY_MEMBERSHEADER 설명된 대로 KSPROPERTY_MEMBERSHEADER및 음소거 단계별 데이터 범위가 뒤따릅니다.

NULL이면 Irp-IoStatus.Information>가 출력 버퍼에 필요한 바이트 수로 설정됩니다.

출력 버퍼 길이

모든 KSPROPERTY_MEMBERSHEADER 및 단계 범위 외에 KSPROPERTY_DESCRIPTION 크기입니다. 이 크기는 SIDEBANDAUDIO_ENDPOINT_DESCRIPTOR 반환됩니다. MutePropertyValuesSize.

상태 블록

요청이 성공하면 Irp-IoStatus.Status>가 STATUS_SUCCESS 설정됩니다. 그렇지 않으면 NTSTATUS 코드로 적절한 오류 조건에 대한 상태입니다.

출력 버퍼가 NULL이면 Irp-IoStatus.Status>가 STATUS_BUFFER_TOO_SMALL 설정되고 Irp-IoStatus.Information>가 출력 버퍼에 필요한 바이트 수로 설정됩니다.

적절한 크기의 출력 버퍼가 제공되면 Irp-IoStatus.Information>가 출력 버퍼에 기록된 바이트 수로 설정됩니다.

자세한 내용은 NTSTATUS 값을 참조하세요.

설명

이 IOCTL은 커널 모드에서만 호출할 수 있습니다.

사이드밴드 오디오를 구현하는 오디오 드라이버는 KS 필터의 음소거 노드 또는 오디오 엔진 노드를 통해 엔드포인트 음소거를 보급해야 합니다. 두 방법 모두 이 IOCTL에서 제공하는 기본 지원 정보를 활용할 수 있습니다.

요구 사항

요구 사항
헤더 sidebandaudio.h

추가 정보

KSPROPERTY_AUDIO_MUTE

KSNODEPROPERTY_AUDIO_CHANNEL

IMiniportAudioEngineNode::GetDeviceChannelCount

I/O 제어 코드 소개

sidebandaudio.h