다음을 통해 공유


IMFAudioStreamVolume 인터페이스(mfidl.h)

개별 오디오 채널의 볼륨 수준을 제어합니다.

SAR(스트리밍 오디오 렌더러)은 이 인터페이스를 서비스로 노출합니다. 인터페이스에 대한 포인터를 얻으려면 서비스 식별자 MR_STREAM_VOLUME_SERVICE사용하여 IMFGetService::GetService를 호출합니다. SAR에서 직접 GetService 를 호출하거나 미디어 세션에서 호출할 수 있습니다.

상속

IMFAudioStreamVolume 인터페이스는 IUnknown 인터페이스에서 상속됩니다. IMFAudioStreamVolume 에는 다음과 같은 유형의 멤버도 있습니다.

메서드

IMFAudioStreamVolume 인터페이스에는 이러한 메서드가 있습니다.

 
IMFAudioStreamVolume::GetAllVolumes

오디오 스트림의 모든 채널에 대한 볼륨 수준을 검색합니다.
IMFAudioStreamVolume::GetChannelCount

오디오 스트림의 채널 수를 검색합니다.
IMFAudioStreamVolume::GetChannelVolume

오디오 스트림에서 지정된 채널의 볼륨 수준을 검색합니다.
IMFAudioStreamVolume::SetAllVolumes

오디오 스트림의 모든 채널에 대한 개별 볼륨 수준을 설정합니다.
IMFAudioStreamVolume::SetChannelVolume

오디오 스트림에서 지정된 채널의 볼륨 수준을 설정합니다.

설명

애플리케이션에 채널 수준 볼륨 제어가 필요하지 않은 경우 IMFSimpleAudioVolume 인터페이스를 사용하여 오디오 세션의 master 볼륨 수준을 제어할 수 있습니다.

볼륨은 감쇠 수준으로 표현됩니다. 여기서 0.0은 무음, 1.0은 전체 볼륨(감쇠 없음)을 나타냅니다. 각 채널의 감쇠 수준은 다음의 산물입니다.

  • 오디오 세션의 master 볼륨 수준입니다.
  • 채널의 볼륨 수준입니다.
예를 들어 master 볼륨이 0.8이고 채널 볼륨이 0.5인 경우 해당 채널의 감쇠는 0.8 × 0.5 = 0.4입니다. 볼륨 수준은 1.0(양의 게인)을 초과할 수 있지만 오디오 엔진은 0 데시벨을 초과하는 오디오 샘플을 클립합니다.

다음 수식을 사용하여 볼륨 수준을 decibel(dB) 눈금으로 변환합니다.

감쇠(dB) = 20 * log10(Level)

예를 들어 볼륨 수준 0.50은 6.02dB의 감쇠를 나타냅니다.

요구 사항

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

참고 항목

미디어 파운데이션 인터페이스

스트리밍 오디오 렌더러