Java Sound

Java Sound ist die grundlegende Programmierschnittstelle der Referenzimplementierung von Java zur Ein- und Ausgabe von Audiodaten via Steuerdaten (MIDI) oder Bitstream-Format (beispielsweise WAV). Sie ist explizit hardwarenah angelegt und bietet Möglichkeiten zur Klangmanipulation sowie kontrollierten Pufferung der Audiowiedergabe.

Das anwenderorientierte Java Media Framework (JMF) und dessen inoffizieller Nachfolger JavaFX bauen auf Java Sound auf.[1]

Entwicklung

Java Sound wurde 1999/2000 mit der JDK-Version 1.3 veröffentlicht. In Version 1.1 war es nur mittels Applets und Suns eigenem Au-Dateiformats möglich, Töne auszugeben. Ab Version 1.2 war die Wiedergabe von WAV-, MIDI- und AIFF-Dateien unterstützt.

Mit Java Sound wurde in Version 1.3 eine universelle Schnittstelle eingeführt, welche Audiodaten hardwarenah verarbeitet und neben der Ausgabe auch die Aufnahme von Audiodaten ermöglichte. Die Unterstützung weiterer Dateiformate wurde in höhere Abstraktionsebenen ausgelagert.

In Version 1.5 wurde eine Reihe weiterer Standards implementiert, Kompatibilität mit verschiedenen Betriebssystemen hergestellt, die Ansteuerung von Ein- und Ausgabe-Geräten verbessert, Werkzeuge zur Manipulation von MIDI-Daten nachgereicht sowie eine Reihe von Bugs behoben.[2] Seitdem werden die Audio-Funktionalitäten von Java in Softwarebibliotheken weiterentwickelt, die auf Java Sound aufbauen.[1]

Bis 2003 wurde parallel eine Open-Source-Implementierung namens Tritonus entwickelt.[3] Da Java selbst seit 2006 zunehmend quelloffen ist, wurde das Projekt nicht weiterverfolgt.[4]

Struktur

Java Sound spezifiziert vier Pakete, davon zwei für Dienstschnittstellen:

  • javax.sound.sampled definiert Schnittstellen zur Aufnahme und Wiedergabe, sowie zum Mischen von digitalem Ton
  • javax.sound.midi definiert Schnittstellen zur MIDI-Synthese, -Sequenzierung und zum Transport von Ereignisse
  • javax.sound.sampled.spi und javax.sound.midi.spi (SPI: Service Provider Interface = Plug-ins) definieren Schnittstellen zur Erstellung zusätzlicher Dienste durch Drittanbieter, beispielsweise

Literatur

  • David Brackeen, Bret Barker, Laurence Vanhelsuwé: Developing Games in Java. New Riders Publishing, Los Angeles 2003, ISBN 1-59273-005-1, 4. Sound Effects and Music.
  • Manuel René Robledo Esparza: Java Sound als Plattform für die Entwicklung studiotauglicher Audioapplikationen. Stuttgart 2004, S. 40, 52–67, 90–94 (bsz-bw.de [PDF; 5,9 MB]).
  • Guido Krüger, Thomas Stark: Handbuch der Java-Programmierung. 6., aktualisierte Auflage. Addison-Wesley, München / Boston 2009, ISBN 978-3-8273-2874-8, S. 1229–1250.
  • Jan Newmarch: Linux Sound Programming. Apress, Berkeley 2017, ISBN 978-1-4842-2495-3, S. 197–210, 327–342.

Einzelnachweise

  1. a b Christian Ullenboom: Java SE 9 Standard-Bibliothek. 3., aktualisierte und überarbeitete Auflage. Rheinwerk Computing, Bonn 2017, ISBN 978-3-8362-5874-6, 9.5 Audiodateien (rheinwerk-verlag.de [abgerufen am 24. Juli 2026]).
  2. Java Sound API: What's new in version 1.5.0. In: oracle.com. Abgerufen am 24. Juli 2026 (englisch).
  3. Tritonus: Open Source Java Sound. In: tritonus.org. 7. Mai 2004, abgerufen am 24. Juli 2026 (englisch).
  4. Dave Phillips: Java Sound & Music Software for Linux, Part 1. In: Linux Journal. 5. September 2008, abgerufen am 24. Juli 2026 (englisch).

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.