4

私はプログラムを作成していますが、オーディオを再生しているプログラムを見つけてミュートしたいので、聞こえるのはすべて私のものです。

(これはプログラムのオプションであり、悪意のあるものではありません)

私はそれを調べましたが、どのプログラムがオーディオを再生しているかを確認する方法を見つけることができないようです (Windows と同じように)

id がわからないため、これを試みるコード例はありません。

誰かが読み逃したり、上記の文が正しくない場合に備えて、音声が再生されているすべてのプロセスを見つけて、そのプロセスをKILLまたはMUTEたいと思います

4

2 に答える 2

2

Windows 7 で個々のプログラムのピーク メーターを取得できれば、セッションとアプリケーションを識別できます。IAudioSessionControlインターフェイスは、標準のボリューム ミキサー アプリケーション (特にセッションのミュート) を介してユーザーが実行できるものと同様のミュート オプションを提供します。

于 2013-02-13T10:48:24.020 に答える
0

かなり似た質問がありました。おそらく、私の回答に投稿したのと同じアプローチがあなたのシナリオに合うでしょう: https://stackoverflow.com/a/14828598/674700。変更する必要があるのは、ファイルのタイプ (など).mp3.wavあり、アプリケーションを除いて、見つかったプロセスを強制終了します。

欠点: アプリケーションを管理者として実行する必要があり、サードパーティのコンソール アプリも必要です。

于 2013-02-13T10:26:56.283 に答える