Frage

Ich hätte gedacht, dass dies wäre eine einfache Sache zu tun, aber keine Menge googeln herum gedreht, bis keine Lösungen.

Ich habe eine Anwendung geschrieben, die für einen client, der läuft im Vollbildmodus und ermöglicht dem Benutzer die Seite durch pädagogische Bücher, um zu helfen, lehren Kinder zu Lesen.So weit, So gut.Einige Sätze aus der angezeigten Materialien werden dem Benutzer vorgelesen und, wieder, so weit so gut.Normalerweise sind diese sounds sind Lesen Sie auf dem system-volume.(ie, egal auf welcher Lautstärke jedes andere system sounds werden abgespielt.)

Der client, jedoch, will nun der Benutzer in der Lage sein, um anpassen der Lautstärke im Programm.Ich habe die Benutzeroberfläche und Datenverarbeitung Ende der Arbeit, aber ich bin eine harte Zeit, die Lautstärke des clips wird wiedergegeben in einer sinnvollen Art und Weise.Jetzt habe ich eine funky-setup, das beinhaltet das Lesen der ursprünglichen Verstärkung des Clips und dann die, die nach oben oder unten für jeden clip.Dies hat zwar die Lautstärke einstellen, scheint es nicht zu tun, es relativ zu dem Volumen des Systems -- alle sounds viel leiser als die Lautstärke des Systems.

Also, meine Frage ist wirklich: wie tun Sie vorschlagen, Steuern der Lautstärke innerhalb eines Programms? Alle meine Forschung hat sich nichts sinnvolles, das impliziert mir, dass es schwierig oder sogar unmöglich, aber das scheint einfach nicht richtig.

Oh, details:Ich lese in WAVs als AudioInputStreams und spielen Sie als java.sound.abgetastet.Clip.Ich bin der Kontrolle der Aussteuerung mit Hilfe FloatControl.Typ.MASTER_GAIN.(FloatControl.Typ.LAUTSTÄRKE ist nicht unterstützt.) Ich bin stecken mit Java 1.4.

War es hilfreich?

Lösung

Man könnte auch schauen, um zu sehen, ob es ist eine ältere version des Java Media Framework (JMF), dass unterstützt Java 1.4...es kann bieten Ihnen eine umfassende Umgebung für die Arbeit mit audio.

Andere als, dass, Sie sagen, Sie stecken in 1.4...Sie könnten sehen, ob es irgendeinen Weg gibt, die Sie bekommen können Upgrade auf Java 5 oder 6, wenn Sie testen möchten, die entweder von diese zuerst auf Ihrem lokalen Rechner, um zu sehen, ob Sie wirklich helfen.

Ich denke, ein letzter Vorschlag ist, zu finden, einige Java-Spiel-Entwicklung Websites und poste deine Frage dort;Ich würde denken, würden Sie herausgefunden haben, Wege, um es...aber Sie können auch eine Menge von "aktualisieren Sie Ihre jvm" - Antworten gibt es auch.:-)

Viel Glück.

Andere Tipps

Dies ist eine OS-spezifische Sache zu tun, und Sie müssen, um verwenden entweder JNI oder J/Invoke oder JNIWrapper oder jna oder...

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top