システムの音量を変更することに興味があります。私は Windows 8 で実行していますが、「Java アプリケーション」のボリュームのみを変更できるコードをいくつか見つけました。しかし、アプリケーションの音量だけでなく、システムの音量も変更したいと考えています。
私はこれを使用しましたが、うまくいきませんでした:
Mixer.Info[] infos = AudioSystem.getMixerInfo();
for (Mixer.Info info : infos) {
Mixer mixer = AudioSystem.getMixer(info);
if (mixer.isLineSupported(Port.Info.HEADPHONE)) {
Port port;
try {
port = (Port) mixer.getLine(Port.Info.HEADPHONE);
port.open();
if (port.isControlSupported(FloatControl.Type.VOLUME)) {
FloatControl bc = (FloatControl) port
.getControl(FloatControl.Type.VOLUME);
System.out.println(info);
System.out.println(" - " + bc.getValue());
bc.setValue(0.1f);
}
port.close();
} catch (LineUnavailableException e) {
e.printStackTrace();
}
}
}
このコードは、javaw.exe のボリュームのみを変更します。たとえば、Google Chrome で YouTube 動画を再生している場合、Chrome の音量を変更することはできません。
すべてのシステムの音量を制御する最良の方法はどれですか?
前もって感謝します。