Share via


IAudioEndpointVolume::SetMasterVolumeLevelScalar 메서드(endpointvolume.h)

SetMasterVolumeLevelScalar 메서드는 오디오 엔드포인트 디바이스에 들어가거나 나가는 오디오 스트림의 master 볼륨 수준을 설정합니다. 볼륨 수준은 0.0에서 1.0 범위의 정규화된 오디오 테이퍼 값으로 표현됩니다.

구문

HRESULT SetMasterVolumeLevelScalar(
  [in] float   fLevel,
  [in] LPCGUID pguidEventContext
);

매개 변수

[in] fLevel

새 master 볼륨 수준입니다. 수준은 0.0에서 1.0까지의 범위에서 정규화된 값으로 표현됩니다.

[in] pguidEventContext

IAudioEndpointVolumeCallback::OnNotify 메서드의 컨텍스트 값입니다. 이 매개 변수는 이벤트 컨텍스트 GUID를 가리킵니다. SetMasterVolumeLevelScalar 호출이 엔드포인트의 볼륨 수준을 변경하면 해당 엔드포인트에 IAudioEndpointVolumeCallback 인터페이스를 등록한 모든 클라이언트가 알림을 받습니다. OnNotify 메서드 구현에서 클라이언트는 이벤트 컨텍스트 GUID를 검사하여 이벤트 컨텍스트 GUID 또는 다른 클라이언트가 볼륨 변경 이벤트의 원본인지 여부를 검색할 수 있습니다. 호출자가 이 매개 변수에 대한 NULL 포인터를 제공하는 경우 알림 루틴은 GUID_NULL 컨텍스트 GUID 값을 받습니다.

반환 값

메서드가 성공하면 S_OK가 반환되고, 실패할 경우 가능한 반환 코드는 다음 표에 표시된 값을 포함하지만 이에 국한되지 않습니다.

반환 코드 설명
E_INVALIDARG
매개 변수 fLevel 이 0.0에서 1.0까지 범위를 벗어났습니다.
E_OUTOFMEMORY
메모리가 부족합니다.

설명

볼륨 수준은 0.0에서 1.0까지의 범위로 정규화됩니다. 여기서 0.0은 최소 볼륨 수준이고 1.0은 최대 수준입니다. 이 범위 내에서 정규화된 볼륨 수준과 신호 진폭 감쇠의 관계는 비선형 오디오 테이퍼 곡선으로 설명됩니다. 곡선의 모양은 이후 버전의 Windows에서 변경될 수 있습니다. 오디오 테이퍼 곡선에 대한 자세한 내용은 오디오 테이퍼 볼륨 컨트롤을 참조하세요.

이 메서드에 전달되는 정규화된 볼륨 수준은 애플리케이션 창 및 화면 디스플레이에서 볼륨 컨트롤의 위치를 나타내는 데 적합합니다.

SetMasterVolumeLevelScalar를 호출하는 코드 예제는 엔드포인트 볼륨 컨트롤을 참조하세요.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 endpointvolume.h

추가 정보

IAudioEndpointVolume 인터페이스

IAudioEndpointVolumeCallback 인터페이스

IAudioEndpointVolumeCallback::OnNotify