Name: kk38543 Date: 01/05/2000
In JDK versions 1.0.x, 1.1.x, and 1.2.x, the audio
device was handled by AudioClip as follows:
- when AudioClip.play() or AudioClip.loop() was called,
the audio device was opened (if not already open) and
playback of the clip was started.
- when AudioClip.stop() was called, playback of the
particular clip was stopped and, if no other clips
were playing, the audio device was released.
An applet could stop playback of all clips in its
stop() method, so that no sounds could continue playing
once the applet was stopped, and the audio device could
Currently, in JDK 1.3, the audio device is not released
even if all AudioClips are stopped. This is a huge problem
because the audio device is frequently an exclusive-use
resource. An applet running in a browser and using the
AudioClip interface to play sounds cannot ever close the
audio device. The device remains open even if the applet
stops and the user surfs all over the internet afterwards.
On many audio systems, this means that audio will not be
available to, for instance, ActiveX controls or audio
plug-in applications in the browser, or to other desktop
applications. The audio device remains open until the
browser process exits.