Sto facendo una piccola applicazione, ho bisogno di controllare l'audio del computer. In giro trovo poco, sul sito Oracle c'è il seguente snippet:
codice:
Port lineIn;
FloatControl volCtrl;
try {
mixer = AudioSystem.getMixer(null);
lineIn = (Port)mixer.getLine(Port.Info.LINE_IN);
lineIn.open();
volCtrl = (FloatControl) lineIn.getControl(
FloatControl.Type.VOLUME);
// Assuming getControl call succeeds,
// we now have our LINE_IN VOLUME control.
} catch (Exception e) {
System.out.println("Failed trying to find LINE_IN"
+ " VOLUME control: exception = " + e);
}
ma mi lancia un eccezione:
java.lang.IllegalArgumentException: Unsupported control type: Line In
at com.sun.media.sound.AbstractLine.getControl(Unknow n Source)
at core.ProtocolHandler.volumeDown(ProtocolHandler.ja va:205)
at core.ProtocolHandler.answer(ProtocolHandler.java:1 76)
at core.Server.run(Server.java:74)
at java.lang.Thread.run(Unknown Source)
Ho provato anche a cambiare Port.Info con VULUME o MASTER_GAIN, ma non cambia.
Su altri siti ho trovato varianti simili, provate, ma sempre questo errore...
Consigli?