10

SndVolシステムユーティリティの機能の一部を実行するために、独自のAPIを作成しています。このAPIの一部として、特定のオーディオセッションの音量レベルを設定できるようにしたいと思います。

SndVolは、ユーザーがオーディオデバイスのマスター音量レベルを変更するために使用できる[デバイス]パネルにスライダーを表示し、セッションの音量レベルを変更する各オーディオセッション([アプリケーション]パネル)のスライダーを表示します。 :

SndVolボリュームミキサーのスクリーンショット

オーディオセッションの1つでスライダーハンドルをドラッグすると、SndVolはオーディオセッションの音量レベルを変更できます。それはどのようにそれをしますか?

WindowsVistaのCoreAudioAPIを使用して可能だと思いましたが、を使用してデバイスのオーディオセッションを繰り返すことはできますが、オブジェクトへのアクセスしか許可されないという問題が発生しましたIAudioSessionEnumeratorIAudioSessionEnumerator、オブジェクトを取得するにはオブジェクトIAudioSessionControlが必要ですオーディオセッションの音量レベルを設定するために使用できます。オブジェクトをオブジェクトに関連付けることは可能ですか?IAudioClientISimpleAudioVolumeIAudioClientIAudioSessionControl

4

2 に答える 2

11

IAudioSessionControlインターフェイスでQueryInterfaceを呼び出すと、多くの場合、ISimpleAudioVolumeにアクセスできます。

于 2011-05-21T19:43:35.623 に答える
2

Microsoftで働き、新しいオーディオAPIに取り組んだラリー・オスターマンは、新しいVista/Win7オーディオ機能に関する一連のブログ投稿を書きました。役立つ可能性のあるいくつかのリンクを次に示します。

新しいWindows7マルチメディア/オーディオSDKサンプルのクイックランスルー-サンプルはアプリごとのボリュームコントロールを示しています

Vistaのボリュームコントロール-Vista/Win7で追加されたアプリケーションごとのボリュームコントロールおよびその他の新しいオーディオ機能について説明します

ページの右側にインデックスがあります。あなたは役立つかもしれない他のいくつかの記事のためにオーディオタグ付きアイテムを見ることができます。

于 2011-05-21T02:37:38.050 に答える