The Source for Java Technology Collaboration


JavaSound

(http://java.sun.com/products/java-media/sound/index.jsp)

Purpose

JavaSound is a "low-level" API for sound capture and playback. At present, the API does not provide many facilities for sound manipulation (i.e. it's not a DSP library).

The API is split into two main sections:

  • javax.sound.sampled for recording and playback of sounds as waveforms, by receiving or transmitting samples of those waveforms
  • javax.sound.midi for recording and playback of compositions represented as sequences of MIDI events.

Both sections use a Service Provider Interface (SPI), allowing the implementations to be enhanced by plugging in new implementations of pretty much everything from codecs to file formats to MIDI synthesizers.

History

This section needs work from someone who knows!!

Florian Bomers and Matthias Pfisterer started an open-source implementation of JavaSound in 1999, named the Tritonus project.

Florian worked with Sun from June 2001 until August 2004 as the JavaSound "lead" (actually a one-man superteam, as I understand it!)

JavaSound vs Java Media Framework

As said, JavaSound is intended to be a "low-level" API, in contrary to the JavaMediaFramework? (JMF). While simply playing or recording a WAV or MIDI file with JavaSound isn't very hard, there is no provision for more complex tasks like synchronizing sound with video. This is not the point of JavaSound, however, and, being a low-level API, such functionalities can be built on top of it.

One major advantage of JavaSound is that it is a standard package, included in J2SE? since version 1.3. JMF, on the other hand, is an optional package, which means it must be distributed with applications, or installed by the end user, in order to be available.

Links

JavaSound API Homepage

Product homepage on java.sun.com.

JavaSound 1.4.2 Programmer's Guide

The official user documentation, which is actually quite good. 15 chapters from intro to basic to expert; well-organised and reads like a tutorial.

Sun's JavaSound FAQ

Only for newbies, e.g. "What is JavaSound?" etc. See below for the technical FAQ.

JavaSound Resources

FAQs, code examples and applications collected and published by the Tritonus guys.

The JavaSound FAQ (on jsresources.org)

FAQs: General, Audio Programming, MIDI Programming, Applets, Performance, Resources, Triotonus, Misc.

JavaSound Mailing List

The subscription page for the Sun-run mailing list. Quite active and helpful (though read the FAQ before posting). Florian and Matthias have always provided expert guidance help through the list. Hopefully the next Sun JavaSound man/woman will also be as open and helpful.

JavaSound Mailing List Archives

What's new in JavaSound in:

  • 1.5.0 (1.5.0 was a major update: Ports and MIDI I/O are now fully implemented on all platforms)
  • 1.4.2
  • 1.4.1
  • 1.4.0

API Documentation

Java Media Framework (JMF)

Links to Other Resources

A page of links to other resources from the JavaSound Resources site.

-- GrahamLea - 28 Sep 2004

Topic JavaSound . { Edit | Ref-By | Printable | Diffs r2 < r1 | More }
 XML java.net RSS

Revision r2 - 26 Oct 2005 - 08:48:23 - Main.kevglass
Parents: WebHome