javax.sound.midi.spi

Class MidiFileWriter

public abstract class MidiFileWriter extends Object

MidiFileWriter provides MIDI file writing services. There are three types of Standard MIDI File (SMF) formats, represented by integers 0, 1, and 2. Type 0 files contain a single track and represents a single song performance. Type 1 may contain multiple tracks for a single song performance. Type 2 may contain multiple tracks, each representing a separate song performance. See http://en.wikipedia.org/wiki/MIDI#MIDI_file_formats for more information.

Since: 1.3

Method Summary
abstract int[]getMidiFileTypes()
Return the MIDI file types supported by this writer.
abstract int[]getMidiFileTypes(Sequence sequence)
Return the MIDI file types supported by this writer for the given sequence.
booleanisFileTypeSupported(int fileType)
Returns true if this writer supports the given file type.
booleanisFileTypeSupported(int fileType, Sequence sequence)
Returns true if this writer supports the given file type for the given sequence.
abstract intwrite(Sequence in, int fileType, OutputStream out)
Write a sequence to a stream using the specified MIDI file type.
abstract intwrite(Sequence in, int fileType, File out)
Write a sequence to a file using the specified MIDI file type.

Method Detail

getMidiFileTypes

public abstract int[] getMidiFileTypes()
Return the MIDI file types supported by this writer.

Returns: the MIDI file types, or an empty array

getMidiFileTypes

public abstract int[] getMidiFileTypes(Sequence sequence)
Return the MIDI file types supported by this writer for the given sequence.

Parameters: sequence the sequence we'd like to write

Returns: the MIDI file types, or an empty array

isFileTypeSupported

public boolean isFileTypeSupported(int fileType)
Returns true if this writer supports the given file type.

Parameters: fileType the file type we're asking about

Returns: true if this writer supports fileType, false otherwise

isFileTypeSupported

public boolean isFileTypeSupported(int fileType, Sequence sequence)
Returns true if this writer supports the given file type for the given sequence.

Parameters: fileType the file type we're asking about sequence the sequence we'd like to write

Returns: true if this writer supports fileType, false otherwise

write

public abstract int write(Sequence in, int fileType, OutputStream out)
Write a sequence to a stream using the specified MIDI file type.

Parameters: in the sequence to write fileType the MIDI file type to use out the output stream to write to

Returns: the number of byte written

Throws: IOException if an I/O exception happens

write

public abstract int write(Sequence in, int fileType, File out)
Write a sequence to a file using the specified MIDI file type.

Parameters: in the sequence to write fileType the MIDI file type to use out the file to write to

Returns: the number of byte written

Throws: IOException if an I/O exception happens