javax.sound.sampled.spi

Class AudioFileWriter

Known Direct Subclasses:
GstAudioFileWriter

public abstract class AudioFileWriter
extends Object

This abstract class provides an API for writing audio files. Concrete subclasses implement the methods declared here.
Since:
1.3

Constructor Summary

AudioFileWriter()
Creat a new audio file writer.

Method Summary

abstract AudioFileFormat.Type[]
getAudioFileTypes()
Return an array of all audio file format types supported by this provider.
abstract AudioFileFormat.Type[]
getAudioFileTypes(AudioInputStream ais)
Return an array of all the audio file format types supported by this provider, which can be written given the input stream.
boolean
isFileTypeSupported(AudioFileFormat.Type type)
Return true if the indicated type is supported by this provider.
boolean
isFileTypeSupported(AudioFileFormat.Type type, AudioInputStream ais)
Return true if the indicated type is supported by this provider, and can be written from the given audio input stream.
abstract int
write(AudioInputStream ais, AudioFileFormat.Type type, File out)
Write audio data to a file.
abstract int
write(AudioInputStream ais, AudioFileFormat.Type type, OutputStream os)
Write audio data to an output stream.

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

AudioFileWriter

public AudioFileWriter()
Creat a new audio file writer.

Method Details

getAudioFileTypes

public abstract AudioFileFormat.Type[] getAudioFileTypes()
Return an array of all audio file format types supported by this provider.

getAudioFileTypes

public abstract AudioFileFormat.Type[] getAudioFileTypes(AudioInputStream ais)
Return an array of all the audio file format types supported by this provider, which can be written given the input stream.
Parameters:
ais - the audio input stream

isFileTypeSupported

public boolean isFileTypeSupported(AudioFileFormat.Type type)
Return true if the indicated type is supported by this provider.
Parameters:
type - the audio file format type

isFileTypeSupported

public boolean isFileTypeSupported(AudioFileFormat.Type type,
                                   AudioInputStream ais)
Return true if the indicated type is supported by this provider, and can be written from the given audio input stream.
Parameters:
type - the audio file format type
ais - the audio input stream to write

write

public abstract int write(AudioInputStream ais,
                          AudioFileFormat.Type type,
                          File out)
            throws IOException
Write audio data to a file.
Parameters:
ais - the audio input stream to write
type - the desired audio file format type
out - the file to write to
Returns:
the number of bytes written
Throws:
IOException - if an I/O error occurs when writing

write

public abstract int write(AudioInputStream ais,
                          AudioFileFormat.Type type,
                          OutputStream os)
            throws IOException
Write audio data to an output stream.
Parameters:
ais - the audio input stream to write
type - the desired audio file format type
os - the output stream
Returns:
the number of bytes written
Throws:
IOException - if an I/O error occurs when writing

Audio file writer API Copyright (C) 2005 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.