オーディオ ファイルを再生する Java アプリケーションがあります。そのため、オーディオ ファイルまたはサウンドが Java アプリケーションによって再生される前に、Windows メディア プレーヤー、VLC プレーヤーなどの他のすべてのアプリケーション サウンドが現在再生されている場合はミュートしたいと考えています。
私の Java アプリケーションがオーディオ ファイルの再生を完了した後、再度ミュートを解除したいと考えています。
それを行う方法はありますか?
ありがとう
いいえ、できません。これは Java とは関係ありませんが、OS では許可されていません。適切に動作するアプリケーションは、オーディオ フォーカスを失ったときに再生を一時停止する必要があります。
昔ながらのJavaAFAIKではこれを行うことはできません。JNIまたはJNAを使用する必要があります。トリックを行う可能性のあるオーディオアクセス用のAPIがいくつかあります。たとえば、Javaのportaudioを使用できます(最近、誰かがそれを行うオープンソースプロジェクトを発表しました。見つからない場合は、portaudioのmalingリストで質問してください)。いくつかの問題があります: