Ich versuche, einen MP3-Player in Java zu machen, und ich kann nicht herausfinden, wie man die Lautstärke in ihm steuert.Wie man das Volumen einer SourceDataLine in Java einstellt
Ich habe so etwas wie dies versucht:
// Adjust the volume on the output line.
if (dataLine.isControlSupported(FloatControl.Type.MASTER_GAIN)) {
FloatControl volume = (FloatControl) dataLine.getControl(FloatControl.Type.MASTER_GAIN);
volume.setValue(100.0F);
}
Alles, was ich bis zu diesem Code geschrieben haben, hat gut funktioniert, aber anscheinend ist die Datenleitung nicht unterstützt Kontrolle, weil sie über diese Aussage IF springt.
Meine Frage ist: Haben Sie eine Idee, warum das passiert und wie könnte ich dieses Problem umgehen, so dass ich das Volumen meiner Anwendung kontrollieren konnte?
dataLine.getControls() gibt diesen Master Gain mit aktuellem Wert: 0,0 dB (Bereich: -80,0 - 6,0206) Mutet Steuerung mit aktuellem Wert: Falsch Balance mit aktuellem Wert: 0.0 (Bereich: -1.0 - 1.0) Schwenken mit aktuellem Wert: 0.0 (Bereich: -1.0 - 1.0) Ich habe mich in der Zwischenzeit mit meinem Code beschäftigt erkannte, dass sich die Werte des Master Gains tatsächlich geändert haben, aber ich kann keine Änderungen im Song hören – Liviu