The Sound group is comprised of those developers designing, implementing and maintaining the various OpenJDK sound components.
Introduction
The Sound API is a low-level API for creating, modifying, and controlling the input and output of sound media, including both audio and MIDI (Musical Instrument Digital Interface) data. The JavaSound API provides explicit control over the capabilities normally required for sound input and output, in a framework that promotes extensibility and flexibility.
The public JavaSound API consists of two main packages:
javax.sound.sampled (interfaces and classes for sampled audio)
javax.sound.midi (interfaces and classes for MIDI).
The main part of the JavaSound impelentation is organized as SPI (Service Provider Interfaces). The SPI interfaces can be found in the following two locations:
javax.sound.sampled.spi
javax.sound.midi.spi
The implementation (non-public) classes are in com.sun.media.sound package. This package is not part of the initial OpenJDK source release because a large part of the package code is licensed from 3rd party and cannot be open sourced. OpenJDK grabs a pre-built version of the classes and native libraries from a commercial binary built.
Some code that is not yet released may be opened in the future. We are working on factoring out the code that can not be opened from code that can, and will open source the latter.The next goal is to replace the parts that remain closed with alternative implementations and make JavaSound completely open.
Source location
All of the JavaSound code is in the “j2se” workspace, so all references below are relative to the root of the “j2se” workspace.
JavaSound interfaces and basic class implementation are in
src/share/classes/javax/sound
SPI meta-inf files are in
src/share/classes/com/sun/media/sound/services
JavaSound make files are in
make/javax/sound
Community
Mailing Lists
sound-dev