次の方法で共有


IAudioEndpointVolume::GetChannelVolumeLevelScalar メソッド (endpointvolume.h)

GetChannelVolumeLevelScalar メソッドは、オーディオ エンドポイント デバイスに出入りするオーディオ ストリームの指定されたチャネルの正規化されたオーディオテーパボリューム レベルを取得します。

構文

HRESULT GetChannelVolumeLevelScalar(
  [in]  UINT  nChannel,
  [out] float *pfLevel
);

パラメーター

[in] nChannel

チャネル番号。 オーディオ ストリームに n 個のチャネルが含まれている場合、チャネルには 0 ~ n – 1 の番号が付きます。 チャネルの数を取得するには、 IAudioEndpointVolume::GetChannelCount メソッドを 呼び出します。

[out] pfLevel

メソッドがボリューム レベルを書き込む float 変数へのポインター。 レベルは、0.0 から 1.0 の範囲で正規化された値として表されます。

戻り値

メソッドが成功した場合は、S_OK を返します。 失敗した場合、次の表に示す値が含まれますが、これに限定されません。

リターン コード 説明
E_INVALIDARG
パラメーター nChannel は、ストリーム内のチャネルの数以上です。
E_POINTER
パラメーター pfLevelNULL です

解説

ボリューム レベルは 0.0 から 1.0 の範囲に正規化されます。ここで、0.0 は最小ボリューム レベル、1.0 は最大レベルです。 この範囲内では、正規化されたボリューム レベルと信号振幅の減衰の関係は、非線形のオーディオテーパ曲線によって記述されます。 今後のバージョンの Windows では、曲線の形状が変わる可能性があることに注意してください。 オーディオテーパカーブの詳細については、「 Audio-Tapered Volume Controls」を参照してください。

このメソッドによって取得される正規化されたボリューム レベルは、アプリケーション ウィンドウおよび画面上のディスプレイでのボリューム コントロールの位置を表すために適しています。

要件

   
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー endpointvolume.h

関連項目

IAudioEndpointVolume インターフェイス

IAudioEndpointVolume::GetChannelCount