IAudioMeterInformation インターフェイス (endpointvolume.h)

IAudioMeterInformation インターフェイスは、オーディオ エンドポイント デバイス間のオーディオ ストリームのピーク メーターを表します。 クライアントは、パラメーター iid が REFIID IID_IAudioMeterInformationに設定された IMMDevice::Activate メソッドを呼び出すことによって、エンドポイント オブジェクトの IAudioMeterInformation インターフェイスへの参照を取得します。

エンドポイント デバイスとの間でオーディオ データをストリーミングするアダプター デバイスでハードウェア ピーク メーターが実装されている場合、 IAudioMeterInformation インターフェイスはそのメーターを使用してオーディオ ストリームのピーク レベルを監視します。 オーディオ デバイスにハードウェア ピーク メーターがない場合、オーディオ エンジンはソフトウェアのピーク メーターをクライアントに透過的に自動的に実装します。

デバイスにハードウェア ピーク メーターがある場合、クライアントは IAudioMeterInformation インターフェイスの メソッドを使用して、共有モードと排他モードの両方でデバイスのピーク レベルを監視できます。 デバイスにハードウェア ピーク メーターがない場合、クライアントはこれらの方法を使用して、共有モードでデバイスのピーク レベルを監視できますが、排他モードでは監視できません。 排他モードでは、クライアントとデバイスは、ソフトウェアピークメーターをバイパスして、オーディオデータを直接交換します。 排他モードでは、ソフトウェアピークメーターは常に0.0のピーク値を報告します。

デバイスにハードウェア ピーク メーターがあるかどうかを確認するには、 IAudioMeterInformation::QueryHardwareSupport メソッドを呼び出します。

レンダリング エンドポイント デバイスの場合、 IAudioMeterInformation インターフェイスは、ストリームがエンドポイント ボリューム コントロールによって減衰される前に、出力ストリームのピーク レベルを監視します。 同様に、キャプチャ エンドポイント デバイスの場合、インターフェイスは、エンドポイント ボリューム コントロールによってストリームが減衰される前に、入力ストリームのピーク レベルを監視します。

IAudioMeterInformation インターフェイスのメソッドによって報告されるピーク値は、0.0 から 1.0 の範囲に正規化されます。 たとえば、PCM ストリームに 16 ビット サンプルが含まれており、特定の測定期間中のピーク サンプル値が –8914 の場合、ピーク メーターによって記録される絶対値は 8914 で、 IAudioMeterInformation インターフェイスによって報告される正規化されたピーク値は 8914/32768 = 0.272 になります。

IAudioMeterInformation インターフェイスを使用するコード例については、「Peak Meters」を参照してください。

継承

IAudioMeterInformation インターフェイスは、IUnknown インターフェイスから継承します。 IAudioMeterInformation には、次の種類のメンバーもあります。

メソッド

IAudioMeterInformation インターフェイスには、これらのメソッドがあります。

 
IAudioMeterInformation::GetChannelsPeakValues

GetChannelsPeakValues メソッドは、オーディオ ストリーム内のすべてのチャネルのピーク サンプル値を取得します。
IAudioMeterInformation::GetMeteringChannelCount

GetMeteringChannelCount メソッドは、ピーク メーターで監視されるオーディオ ストリーム内のチャネルの数を取得します。
IAudioMeterInformation::GetPeakValue

GetPeakValue メソッドは、オーディオ ストリーム内のチャネルのピーク サンプル値を取得します。
IAudioMeterInformation::QueryHardwareSupport

QueryHardwareSupport メソッドは、ハードウェアでサポートされている機能についてオーディオ エンドポイント デバイスに対してクエリを実行します。 (IAudioMeterInformation.QueryHardwareSupport)

要件

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

関連項目

コア オーディオ インターフェイス

EndpointVolume API

IMMDevice::Activate