javax.sound.sampled.spi

Class AudioFileReader

public abstract class AudioFileReader extends Object

This abstract class defines the interface to audio file readers. A concrete provider subclass will implement the methods declared here. These methods can be used to determine the format of files, and to retrieve an AudioInputStream for a file.

Since: 1.3

Constructor Summary
AudioFileReader()
The default constructor.
Method Summary
abstract AudioFileFormatgetAudioFileFormat(File file)
Return the format of the given file as deduced by this provider.
abstract AudioFileFormatgetAudioFileFormat(InputStream is)
Return the format of the given input stream as deduced by this provider.
abstract AudioFileFormatgetAudioFileFormat(URL url)
Return the format of the given URL as deduced by this provider.
abstract AudioInputStreamgetAudioInputStream(File file)
Return an AudioInputStream for the given file.
abstract AudioInputStreamgetAudioInputStream(InputStream is)
Return an AudioInputStream wrapping the given input stream.
abstract AudioInputStreamgetAudioInputStream(URL url)
Return an AudioInputStream for the given URL.

Constructor Detail

AudioFileReader

public AudioFileReader()
The default constructor. Note that this class is abstract and thus not directly instantiable.

Method Detail

getAudioFileFormat

public abstract AudioFileFormat getAudioFileFormat(File file)
Return the format of the given file as deduced by this provider. If the format of the file is not recognized, throws an exception. This will also throw an exception if there is an I/O error when reading the file.

Parameters: file the file to examine

Returns: the audio file format

Throws: UnsupportedAudioFileException if the file's format is not recognized IOException if there is an I/O error while reading the file

getAudioFileFormat

public abstract AudioFileFormat getAudioFileFormat(InputStream is)
Return the format of the given input stream as deduced by this provider. If the format of the stream is not recognized, throws an exception. This will also throw an exception if there is an I/O error when reading the stream. Note that providers typically use mark and reset on the stream when examining the data, and as a result an IOException may be thrown if the stream does not support these.

Parameters: is the stream to examine

Returns: the audio file format

Throws: UnsupportedAudioFileException if the stream's format is not recognized IOException if there is an I/O error while reading the stream

getAudioFileFormat

public abstract AudioFileFormat getAudioFileFormat(URL url)
Return the format of the given URL as deduced by this provider. If the format of the URL is not recognized, throws an exception. This will also throw an exception if there is an I/O error when reading the URL.

Parameters: url the URL to examine

Returns: the audio file format

Throws: UnsupportedAudioFileException if the URL's format is not recognized IOException if there is an I/O error while reading the URL

getAudioInputStream

public abstract AudioInputStream getAudioInputStream(File file)
Return an AudioInputStream for the given file. The file is assumed to hold valid audio data.

Parameters: file the file to read

Returns: an AudioInputStream for the file

Throws: UnsupportedAudioFileException if the file's type is not recognized IOException if there is an error while reading the file

getAudioInputStream

public abstract AudioInputStream getAudioInputStream(InputStream is)
Return an AudioInputStream wrapping the given input stream. The stream is assumed to hold valid audio data.

Parameters: is the input stream to wrap

Returns: an AudioInputStream for the stream

Throws: UnsupportedAudioFileException if the stream's type is not recognized IOException if there is an error while reading the stream

getAudioInputStream

public abstract AudioInputStream getAudioInputStream(URL url)
Return an AudioInputStream for the given URL. The URL is assumed to hold valid audio data.

Parameters: url the URL to read

Returns: an AudioInputStream for the URL

Throws: UnsupportedAudioFileException if the URL's type is not recognized IOException if there is an error while reading the URL