Module java.desktop

Class AudioFileWriter

java.lang.Object
javax.sound.sampled.spi.AudioFileWriter

public abstract class AudioFileWriter extends Object
Provider for audio file writing services. Classes providing concrete implementations can write one or more types of audio file from an audio stream.
Since:
1.3
  • Constructor Details

    • AudioFileWriter

      protected AudioFileWriter()
      Constructor for subclasses to call.
  • Method Details

    • getAudioFileTypes

      public abstract AudioFileFormat.Type[] getAudioFileTypes()
      Obtains the file types for which file writing support is provided by this audio file writer.
      Returns:
      array of file types. If no file types are supported, an array of length 0 is returned.
    • isFileTypeSupported

      public boolean isFileTypeSupported(AudioFileFormat.Type fileType)
      Indicates whether file writing support for the specified file type is provided by this audio file writer.
      Parameters:
      fileType - the file type for which write capabilities are queried
      Returns:
      true if the file type is supported, otherwise false
      Throws:
      NullPointerException - if fileType is null
    • getAudioFileTypes

      public abstract AudioFileFormat.Type[] getAudioFileTypes(AudioInputStream stream)
      Obtains the file types that this audio file writer can write from the audio input stream specified.
      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.
      Throws:
      NullPointerException - if stream is null
    • isFileTypeSupported

      public boolean isFileTypeSupported(AudioFileFormat.Type fileType, AudioInputStream stream)
      Indicates whether an audio file of the type specified can be written from the audio input stream indicated.
      Parameters:
      fileType - file type for which write capabilities are queried
      stream - for which file writing support is queried
      Returns:
      true if the file type is supported for this audio input stream, otherwise false
      Throws:
      NullPointerException - if fileType or stream are null
    • write

      public abstract int write(AudioInputStream stream, AudioFileFormat.Type fileType, OutputStream out) throws 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.
      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:
      IOException - if an I/O exception occurs
      IllegalArgumentException - if the file type is not supported by the system
      NullPointerException - if stream or fileType or out are null
      See Also:
    • write

      public abstract int write(AudioInputStream stream, AudioFileFormat.Type fileType, File out) throws IOException
      Writes a stream of bytes representing an audio file of the file format indicated to the external file provided.
      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:
      IOException - if an I/O exception occurs
      IllegalArgumentException - if the file format is not supported by the system
      NullPointerException - if stream or fileType or out are null
      See Also: