Hallo ihr Java-Experten,
ich brauche mal wieder eure Hilfe. Ich bin gerade dabei ein kleines Breakout-Spiel zu programmieren. Dabei soll sobald der Ball den Schläger oder einen der Steine trifft ein bestimmter Sound abgespielt werden. Das funktioniert auch alles wunderprächtig, aber der Sound ist sehr leise. Daher habe ich versucht, die Lautstärke zu regulieren via FloatControl. Dabei bekomme ich aber zur Laufzeit eine Fehlermeldung, zu der ich keine vernünftigen Informationen bei stackoverflow etc. bekomme:
java.lang.illegalArgumentException : Unsupported control type: master gain. Kann mir jemand von euch diesbezüglich weiterhelfen? Vielen Dank schon mal vorab.
Hier der Codeausschnit (es geht um die auskommentierten Zeilen):
ich brauche mal wieder eure Hilfe. Ich bin gerade dabei ein kleines Breakout-Spiel zu programmieren. Dabei soll sobald der Ball den Schläger oder einen der Steine trifft ein bestimmter Sound abgespielt werden. Das funktioniert auch alles wunderprächtig, aber der Sound ist sehr leise. Daher habe ich versucht, die Lautstärke zu regulieren via FloatControl. Dabei bekomme ich aber zur Laufzeit eine Fehlermeldung, zu der ich keine vernünftigen Informationen bei stackoverflow etc. bekomme:
java.lang.illegalArgumentException : Unsupported control type: master gain. Kann mir jemand von euch diesbezüglich weiterhelfen? Vielen Dank schon mal vorab.
Hier der Codeausschnit (es geht um die auskommentierten Zeilen):
Java:
try {
soundclip = AudioSystem.getClip();
aistr = AudioSystem.getAudioInputStream(this.getClass().getResource("/Bass-Drum-1.wav"));
// FloatControl gainControl = (FloatControl) soundclip.getControl(FloatControl.Type.MASTER_GAIN);
// double gain = 0.8;
// float dB = (float) (Math.log(gain) / Math.log(10.0) * 20.0);
// gainControl.setValue(dB);
soundclip.open(aistr);
} catch (LineUnavailableException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (UnsupportedAudioFileException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}