Package org.xiph.speex.spi
Class SpeexAudioFileWriter
- java.lang.Object
-
- javax.sound.sampled.spi.AudioFileWriter
-
- org.xiph.speex.spi.SpeexAudioFileWriter
-
public class SpeexAudioFileWriter extends javax.sound.sampled.spi.AudioFileWriter
Provider for Speex audio file writing services. This implementation can write Speex audio files from an audio stream.- Version:
- $Revision: 1.3 $
- Author:
- Marc Gimpel, Wimba S.A. (mgimpel@horizonwimba.com)
-
-
Field Summary
Fields Modifier and Type Field Description static javax.sound.sampled.AudioFileFormat.Type[]
NO_FORMAT
static javax.sound.sampled.AudioFileFormat.Type[]
SPEEX_FORMAT
-
Constructor Summary
Constructors Constructor Description SpeexAudioFileWriter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description javax.sound.sampled.AudioFileFormat.Type[]
getAudioFileTypes()
Obtains the file types for which file writing support is provided by this audio file writer.javax.sound.sampled.AudioFileFormat.Type[]
getAudioFileTypes(javax.sound.sampled.AudioInputStream stream)
Obtains the file types that this audio file writer can write from the audio input stream specified.private int
write(javax.sound.sampled.AudioInputStream stream, java.io.OutputStream out)
Writes a stream of bytes representing an audio file of the file type indicated to the output stream provided.int
write(javax.sound.sampled.AudioInputStream stream, javax.sound.sampled.AudioFileFormat.Type fileType, java.io.File out)
Writes a stream of bytes representing an audio file of the file format indicated to the external file provided.int
write(javax.sound.sampled.AudioInputStream stream, javax.sound.sampled.AudioFileFormat.Type fileType, java.io.OutputStream out)
Writes a stream of bytes representing an audio file of the file type indicated to the output stream provided.
-
-
-
Method Detail
-
getAudioFileTypes
public javax.sound.sampled.AudioFileFormat.Type[] getAudioFileTypes()
Obtains the file types for which file writing support is provided by this audio file writer.- Specified by:
getAudioFileTypes
in classjavax.sound.sampled.spi.AudioFileWriter
- Returns:
- array of file types. If no file types are supported, an array of length 0 is returned.
-
getAudioFileTypes
public javax.sound.sampled.AudioFileFormat.Type[] getAudioFileTypes(javax.sound.sampled.AudioInputStream stream)
Obtains the file types that this audio file writer can write from the audio input stream specified.- Specified by:
getAudioFileTypes
in classjavax.sound.sampled.spi.AudioFileWriter
- Parameters:
stream
- - the audio input stream for which audio file type support is queried.- Returns:
- array of file types. If no file types are supported, an array of length 0 is returned.
-
write
public int write(javax.sound.sampled.AudioInputStream stream, javax.sound.sampled.AudioFileFormat.Type fileType, java.io.OutputStream out) throws java.io.IOException
Writes a stream of bytes representing an audio file of the file type indicated to the output stream provided. Some file types require that the length be written into the file header, and cannot be written from start to finish unless the length is known in advance. An attempt to write such a file type will fail with an IOException if the length in the audio file format is AudioSystem.NOT_SPECIFIED.- Specified by:
write
in classjavax.sound.sampled.spi.AudioFileWriter
- Parameters:
stream
- - the audio input stream containing audio data to be written to the output stream.fileType
- - file type to be written to the output stream.out
- - stream to which the file data should be written.- Returns:
- the number of bytes written to the output stream.
- Throws:
java.io.IOException
- - if an I/O exception occurs.java.lang.IllegalArgumentException
- - if the file type is not supported by the system.- See Also:
AudioFileWriter.isFileTypeSupported(AudioFileFormat.Type, AudioInputStream)
,getAudioFileTypes()
-
write
public int write(javax.sound.sampled.AudioInputStream stream, javax.sound.sampled.AudioFileFormat.Type fileType, java.io.File out) throws java.io.IOException
Writes a stream of bytes representing an audio file of the file format indicated to the external file provided.- Specified by:
write
in classjavax.sound.sampled.spi.AudioFileWriter
- Parameters:
stream
- - the audio input stream containing audio data to be written to the file.fileType
- - file type to be written to the file.out
- - external file to which the file data should be written.- Returns:
- the number of bytes written to the file.
- Throws:
java.io.IOException
- - if an I/O exception occurs.java.lang.IllegalArgumentException
- - if the file format is not supported by the system- See Also:
AudioFileWriter.isFileTypeSupported(javax.sound.sampled.AudioFileFormat.Type)
,getAudioFileTypes()
-
write
private int write(javax.sound.sampled.AudioInputStream stream, java.io.OutputStream out) throws java.io.IOException
Writes a stream of bytes representing an audio file of the file type indicated to the output stream provided.- Parameters:
stream
- - the audio input stream containing audio data to be written to the output stream.out
- - stream to which the file data should be written.- Returns:
- the number of bytes written to the output stream.
- Throws:
java.io.IOException
- - if an I/O exception occurs.
-
-