モジュール java.desktop
パッケージ javax.sound.midi

クラスMidiSystem



  • public class MidiSystem
    extends Object
    MidiSystemクラスは、シンセサイザ、シーケンサ、MIDI入出力ポートなどのデバイスを含むインストール済みMIDIシステム・リソースへのアクセスを提供します。 一般に見られる単純なMIDIアプリケーションは、1つ以上のMidiSystemメソッドを呼び出して、どのデバイスがインストールされているかを調べ、そのアプリケーションに必要なデバイスを取得することから始めます。

    また、クラスにはファイル、ストリーム、および標準MIDIファイル・データまたはサウンド・バンクを含むURLの読取り用メソッドもあります。 指定されたMIDIファイルの形式をMidiSystemに照会できます。

    MidiSystemをインスタンス化することはできません。メソッドはすべて静的です。

    プロパティを使用して、デフォルトのMIDIデバイスを指定できます。 システム・プロパティ、プロパティ・ファイルの両方とも使用可能です。 "sound.properties"プロパティ・ファイルは、実装固有のロケーション(通常、Javaインストール・ディレクトリ内のconfディレクトリです)から読み込まれます。 プロパティがシステム・プロパティとしても、プロパティ・ファイル内にも存在する場合は、システム・プロパティが優先されます。 プロパティがまったく指定されていない場合は、使用可能なデバイスの中から適切なデフォルト・プロパティが選択されます。 プロパティ・ファイルの構文はProperties.loadに指定されています。 次の表は、使用可能なプロパティ・キーと、これらを認識するメソッドのリストです。

    MIDIシステムのプロパティ・キー
    プロパティ・キー インタフェース 影響を受けるメソッド
    javax.sound.midi.Receiver Receiver getReceiver()
    javax.sound.midi.Sequencer Sequencer getSequencer()
    javax.sound.midi.Synthesizer Synthesizer getSynthesizer()
    javax.sound.midi.Transmitter Transmitter getTransmitter()
    プロパティ値は、プロバイダ・クラス名とデバイス名をハッシュ記号(「#」)で区切った形式で表されます。 プロバイダ・クラス名は、具象MIDI device providerクラスの完全指定名です。 デバイス名は、MidiDevice.InfogetNameメソッドから返されるStringとマッチングされます。 クラス名、デバイス名の一方を省略することもできます。 クラス名だけを指定した場合、ハッシュ記号は省略できます。

    プロバイダ・クラスが指定されていて、インストール済プロバイダから正常に取得できる場合、このプロバイダからMidiDevice.Infoオブジェクトのリストが取り出されます。 そうでない場合、またはこれらのデバイスがこれ以降マッチングを行わない場合、使用可能なすべてのMidiDevice.Infoオブジェクトを含めるために、getMidiDeviceInfo()からリストが取得されます。

    デバイス名が指定されている場合、結果として得られたMidiDevice.Infoオブジェクトのリストが検索されます。名前が一致した最初のオブジェクト(そのMidiDeviceはそれぞれのインタフェースを実装する)が返されます。 一致するMidiDevice.Infoオブジェクトが見つからない場合、またはデバイス名が指定されていない場合、結果リストの最初の適切なデバイスが返されます。 SequencerおよびSynthesizerの場合、それぞれのインタフェースを実装するデバイスが適切なデバイスです。これに対して、ReceiverおよびTransmitterの場合、SequencerもSynthesizerも実装せず、ReceiverまたはTransmitterを1つ以上提供するデバイスが適切なデバイスです。

    たとえば、"com.sun.media.sound.MidiProvider#SunMIDI1"を値に持つプロパティjavax.sound.midi.Receiverでは、getReceiverが呼び出されたとき、次のような結果が得られます: インストール済MIDIデバイス・プロバイダのリスト内にcom.sun.media.sound.MidiProviderクラスが存在する場合、"SunMIDI1"という名前の最初のReceiverデバイスが返されます。 見つからない場合は、名前とは関係なく、そのプロバイダの最初のReceiverが返されます。 存在しない場合は、すべてのデバイスのリスト(getMidiDeviceInfoによって返される)内の"SunMIDI1"という名前の最初のReceiverが返されます。これが見つからない場合、すべてのデバイスのリスト内で最初に見つかったReceiverが返されます。 これにも失敗した場合は、MidiUnavailableExceptionがスローされます。

    • メソッドのサマリー

      すべてのメソッド staticメソッド 具象メソッド 
      修飾子と型 メソッド 説明
      static MidiDevice getMidiDevice​(MidiDevice.Info info)
      要求されたMIDIデバイスを取得します。
      static MidiDevice.Info[] getMidiDeviceInfo​()
      システムで使用可能な全MIDIデバイスのセットを表す情報オブジェクトの配列を取得します。
      static MidiFileFormat getMidiFileFormat​(File file)
      指定されたFileのMIDIファイル形式を取得します。
      static MidiFileFormat getMidiFileFormat​(InputStream stream)
      指定された入力ストリームのデータのMIDIファイル形式を取得します。
      static MidiFileFormat getMidiFileFormat​(URL url)
      指定されたURLのデータのMIDIファイル形式を取得します。
      static int[] getMidiFileTypes​()
      システムがファイル書込みサポートを提供するMIDIファイル・タイプのセットを取得します。
      static int[] getMidiFileTypes​(Sequence sequence)
      指定されたシーケンスからシステムが書込み可能なMIDIファイル・タイプのセットを取得します。
      static Receiver getReceiver​()
      外部MIDIポートまたはその他のデフォルト・デバイスから、MIDIレシーバを取得します。
      static Sequence getSequence​(File file)
      指定されたFileからMIDIシーケンスを取得します。
      static Sequence getSequence​(InputStream stream)
      指定された入力ストリームからMIDIシーケンスを取得します。
      static Sequence getSequence​(URL url)
      指定されたURLからMIDIシーケンスを取得します。
      static Sequencer getSequencer​()
      デフォルト・デバイスに接続されたデフォルトのSequencerを取得します。
      static Sequencer getSequencer​(boolean connected)
      オプションでデフォルト・デバイスに接続された、デフォルトのSequencerを取得します。
      static Soundbank getSoundbank​(File file)
      指定されたFileからSoundbankを読み取ることによって、それを構築します。
      static Soundbank getSoundbank​(InputStream stream)
      指定されたストリームからMIDIサウンド・バンクを読み取ることによって、MIDIサウンド・バンクを構築します。
      static Soundbank getSoundbank​(URL url)
      指定されたURLから読み取ることによって、Soundbankを構築します。
      static Synthesizer getSynthesizer​()
      デフォルト・シンセサイザを取得します。
      static Transmitter getTransmitter​()
      外部MIDIポートまたはほかのデフォルト・ソースから、MIDIトランスミッタを取得します。
      static boolean isFileTypeSupported​(int fileType)
      指定されたMIDIファイル・タイプのファイル書込みサポートをシステムが提供しているかどうかを示します。
      static boolean isFileTypeSupported​(int fileType, Sequence sequence)
      指定されたファイル・タイプのMIDIファイルを、示されたシーケンスから書き込めるかどうかを示します。
      static int write​(Sequence in, int type, File out)
      提供される外部ファイルに示されるMIDIファイル・タイプのファイルを表すバイトのストリームを書き込みます。
      static int write​(Sequence in, int fileType, OutputStream out)
      提供される出力ストリームに示されるMIDIファイル・タイプのファイルを表すバイトのストリームを書き込みます。
    • メソッドの詳細

      • getMidiDeviceInfo

        public static MidiDevice.Info[] getMidiDeviceInfo​()
        システムで使用可能な全MIDIデバイスのセットを表す情報オブジェクトの配列を取得します。 getMidiDeviceを呼び出すことにより、返された情報オブジェクトを使用して、対応するデバイスを取得できます。
        戻り値:
        MidiDevice.Infoオブジェクトの配列で、インストールされたMIDIデバイスごとに1つの配列が返される。 該当するデバイスがインストールされていない場合、長さ0の配列が返される。
      • getReceiver

        public static Receiver getReceiver​()
                                    throws MidiUnavailableException
        外部MIDIポートまたはその他のデフォルト・デバイスから、MIDIレシーバを取得します。 返されたレシーバは常にMidiDeviceReceiverインタフェースを実装します。

        システム・プロパティjavax.sound.midi.Receiverが定義されている場合、またはsound.propertiesファイル内に定義されている場合、このプロパティは、デフォルトのレシーバを提供するデバイスを識別するために使用されます。 詳細は、class descriptionを参照してください。

        適切なMIDIポートを使用できない場合、インストール済みシンセサイザからReceiverを取得します。

        デフォルト・デバイスで提供されるネイティブ・レシーバは、MidiDeviceReceiverインタフェースを実装しない場合、MidiDeviceReceiverインタフェースを実装するラッパー・クラス内にラップされます。 対応するReceiverメソッド呼出しはネイティブ・レシーバに転送されます。

        このメソッドが正常に実行されると、暗黙のうちに、ReceiverMidiDeviceが開きます(まだ開いていない場合)。 暗黙的に開かれたデバイスを閉じるには、返されたReceiver上でcloseを呼び出します。 MidiDeviceに格納されているシステム・リソースを解放するには、開いているすべてのReceiverインスタンスを閉じる必要があります。 開く/閉じるの動作の詳細については、MidiDeviceの説明を参照してください。

        戻り値:
        デフォルトMIDIレシーバ
        例外:
        MidiUnavailableException - リソース制約により、またはレシーバを提供するデバイスがシステムにインストールされていないためにデフォルトのレシーバを使用できない場合
      • getTransmitter

        public static Transmitter getTransmitter​()
                                          throws MidiUnavailableException
        外部MIDIポートまたはほかのデフォルト・ソースから、MIDIトランスミッタを取得します。 返されたトランスミッタは常にMidiDeviceTransmitterインタフェースを実装します。

        システム・プロパティjavax.sound.midi.Transmitterが定義されている場合、またはsound.propertiesファイル内に定義されている場合、このプロパティは、デフォルトのトランスミッタを提供するデバイスを識別するために使用されます。 詳細は、class descriptionを参照してください。

        デフォルト・デバイスで提供されるネイティブ・トランスミッタは、MidiDeviceTransmitterインタフェースを実装しない場合、MidiDeviceTransmitterインタフェースを実装するラッパー・クラス内にラップされます。 対応するTransmitterメソッド呼出しはネイティブ・トランスミッタに転送されます。

        このメソッドが正常に実行されると、暗黙のうちに、TransmitterMidiDeviceが開きます(まだ開いていない場合)。 暗黙的に開かれたデバイスを閉じるには、返されたTransmitter上でcloseを呼び出します。 MidiDeviceに格納されているシステム・リソースを解放するには、開いているすべてのTransmitterインスタンスを閉じる必要があります。 開く/閉じるの動作の詳細については、MidiDeviceの説明を参照してください。

        戻り値:
        デフォルトMIDIトランスミッタ
        例外:
        MidiUnavailableException - リソース制約により、またはトランスミッタを提供するデバイスがシステムにインストールされていないためにデフォルトのトランスミッタを使用できない場合
      • getSynthesizer

        public static Synthesizer getSynthesizer​()
                                          throws MidiUnavailableException
        デフォルト・シンセサイザを取得します。

        システム・プロパティjavax.sound.midi.Synthesizerが定義されている場合、またはsound.propertiesファイル内に定義されている場合、このプロパティは、デフォルトのシンセサイザを識別するために使用されます。 詳細は、class descriptionを参照してください。

        戻り値:
        デフォルト・シンセサイザ
        例外:
        MidiUnavailableException - リソース制約により、またはシステムにシンセサイザがインストールされていないためにデフォルトのシンセサイザを使用できない場合
      • getSequencer

        public static Sequencer getSequencer​()
                                      throws MidiUnavailableException
        デフォルト・デバイスに接続されたデフォルトのSequencerを取得します。 返されるSequencerインスタンスは、getSynthesizer()により返されるデフォルトのSynthesizerに接続されます。 使用可能なSynthesizerがない場合、またはデフォルトのSynthesizerを開くことができない場合、sequencerは、getReceiver()により返されるデフォルトのReceiverに接続されます。 接続を確立するには、SequencerからTransmitterインスタンスを取得し、そのReceiverを設定します。 シーケンサを閉じて再度開くと、デフォルト・デバイスとの接続が復元されます。

        このメソッドは、getSequencer(true)を呼び出すのと同等です。

        システム・プロパティjavax.sound.midi.Sequencerが定義されている場合、または「sound.properties」ファイル内に定義されている場合、このプロパティは、デフォルトのシーケンサを識別するために使用されます。 詳細は、class descriptionを参照してください。

        戻り値:
        デフォルトのReceiverに接続されたデフォルトのシーケンサ
        例外:
        MidiUnavailableException - リソース制約により、またはインストール済みMidiDeviceで使用できるReceiverがないため、またはシステムにシーケンサがインストールされていないため、シーケンサを使用できない場合
        関連項目:
        getSequencer(boolean), getSynthesizer(), getReceiver()
      • getSequencer

        public static Sequencer getSequencer​(boolean connected)
                                      throws MidiUnavailableException
        オプションでデフォルト・デバイスに接続された、デフォルトのSequencerを取得します。

        connectedがtrueの場合、返されるSequencerインスタンスは、getSynthesizer()により返されるデフォルトのSynthesizerに接続されます。 使用可能なSynthesizerがない場合、またはデフォルトのSynthesizerを開くことができない場合、sequencerは、getReceiver()により返されるデフォルトのReceiverに接続されます。 接続を確立するには、SequencerからTransmitterインスタンスを取得し、そのReceiverを設定します。 シーケンサを閉じて再度開くと、デフォルト・デバイスとの接続が復元されます。

        connectedがfalseの場合、返されるSequencerインスタンスは接続されず、開いたTransmittersが存在しない状態になります。 MIDIデバイスまたはSynthesizer上でシーケンサを使用するには、Transmitterを取得し、そのReceiverを設定する必要があります。

        システム・プロパティjavax.sound.midi.Sequencerが定義されている場合、またはsound.propertiesファイル内に定義されている場合、このプロパティは、デフォルトのシーケンサを識別するために使用されます。 詳細は、class descriptionを参照してください。

        パラメータ:
        connected - 返されるSequencerがデフォルトSynthesizerに接続されるかどうか
        戻り値:
        デフォルト・シーケンサ
        例外:
        MidiUnavailableException - リソース制約により、またはシステムにシーケンサがインストールされていないため、シーケンサを使用できない場合。または、connectedがtrueで、インストール済みMidiDeviceで使用可能なReceiverが存在しない場合
        導入されたバージョン:
        1.5
        関連項目:
        getSynthesizer(), getReceiver()
      • getSoundbank

        public static Soundbank getSoundbank​(InputStream stream)
                                      throws InvalidMidiDataException,
                                             IOException
        指定されたストリームからMIDIサウンド・バンクを読み取ることによって、MIDIサウンド・バンクを構築します。 ストリームは有効なMIDIサウンドバンク・ファイルを示す必要があります。 一般的に、MIDIサウンドバンク・プロバイダは、そのストリームをサポートするかどうかを判定する前にデータをいくらか読み取る必要があります。 これらのパーサーは、ストリームをマークし、ストリームをサポートするかどうかを判定するのに十分なデータを読み込み、サポートしない場合はストリームの読込みポインタをもとの位置に戻す、という機能が必要です。 入力ストリームがこれをサポートしない場合、このメソッドはIOExceptionを表示して失敗することがあります。
        パラメータ:
        stream - サウンドバンク・データのソース
        戻り値:
        サウンド・バンク
        例外:
        InvalidMidiDataException - システムが認識した有効なMIDIサウンドバンク・データをストリームが示さない場合
        IOException - サウンド・バンクをロードするときに入出力エラーが発生した場合
        NullPointerException - streamnullの場合
        関連項目:
        InputStream.markSupported(), InputStream.mark(int)
      • getSoundbank

        public static Soundbank getSoundbank​(URL url)
                                      throws InvalidMidiDataException,
                                             IOException
        指定されたURLから読み取ることによって、Soundbankを構築します。 URLは有効なMIDIサウンドバンク・ファイルを示す必要があります。
        パラメータ:
        url - サウンドバンク・データのソース
        戻り値:
        サウンド・バンク
        例外:
        InvalidMidiDataException - システムが認識した有効なMIDIサウンドバンク・データをURLが示さない場合
        IOException - サウンド・バンクをロードするときに入出力エラーが発生した場合
        NullPointerException - urlnullの場合
      • getSoundbank

        public static Soundbank getSoundbank​(File file)
                                      throws InvalidMidiDataException,
                                             IOException
        指定されたFileからSoundbankを読み取ることによって、それを構築します。 Fileは有効なMIDIサウンドバンク・ファイルを示す必要があります。
        パラメータ:
        file - サウンドバンク・データのソース
        戻り値:
        サウンド・バンク
        例外:
        InvalidMidiDataException - システムが認識した有効なMIDIサウンドバンク・データをFileが示さない場合
        IOException - サウンド・バンクをロードするときに入出力エラーが発生した場合
        NullPointerException - filenullの場合
      • getMidiFileFormat

        public static MidiFileFormat getMidiFileFormat​(InputStream stream)
                                                throws InvalidMidiDataException,
                                                       IOException
        指定された入力ストリームのデータのMIDIファイル形式を取得します。 ストリームは、システムが認識したファイル・タイプに有効なMIDIファイル・データを示す必要があります。

        このメソッドまたはこのメソッドが呼び出すコード、あるいはその両方とも、そのデータ形式がサポートされるかどうかを判定するためにストリームからデータをいくらか読み取る必要があります。 したがって、ストリームをマークし、データがサポートされる形式であるかどうかを判定するのに十分なデータを読み取り、ストリームのリード・ポインタを元の位置に戻すための実装が必要です。 入力ストリームがこの一連の操作を許可しない場合、このメソッドはIOExceptionをスローして失敗します。

        この操作は、インストールされたファイル・リーダーによって構文解析できる種類のファイルに限り有効です。 互換性のあるファイル・リーダーがインストールされていない場合、有効なファイルであってもInvalidMidiDataExceptionで失敗することがあります。 また、互換性のあるファイル・リーダーがインストールされている場合はInvalidMidiDataExceptionで失敗しますが、ファイル形式を決定する際にエラーが発生します。

        パラメータ:
        stream - ファイル形式情報を抽出する入力ストリーム
        戻り値:
        MIDIファイル形式を記述するMidiFileFormatオブジェクト
        例外:
        InvalidMidiDataException - システムが認識した有効なオーディオ・ファイル・データをストリームが示さない場合
        IOException - ストリームにアクセス中に入出力例外が発生した場合
        NullPointerException - streamnullの場合
        関連項目:
        getMidiFileFormat(URL), getMidiFileFormat(File), InputStream.markSupported(), InputStream.mark(int)
      • getMidiFileFormat

        public static MidiFileFormat getMidiFileFormat​(URL url)
                                                throws InvalidMidiDataException,
                                                       IOException
        指定されたURLのデータのMIDIファイル形式を取得します。 URLは、システムが認識したファイル・タイプに有効なMIDIファイル・データを示す必要があります。

        この操作は、インストールされたファイル・リーダーによって構文解析できる種類のファイルに限り有効です。 互換性のあるファイル・リーダーがインストールされていない場合、有効なファイルであってもInvalidMidiDataExceptionで失敗することがあります。 また、互換性のあるファイル・リーダーがインストールされている場合はInvalidMidiDataExceptionで失敗しますが、ファイル形式を決定する際にエラーが発生します。

        パラメータ:
        url - ファイル形式情報を抽出するURL
        戻り値:
        MIDIファイル形式を記述するMidiFileFormatオブジェクト
        例外:
        InvalidMidiDataException - システムが認識した有効なMIDIファイル・データをURLが示さない場合
        IOException - URLにアクセス中に入出力例外が発生した場合
        NullPointerException - urlnullの場合
        関連項目:
        getMidiFileFormat(InputStream), getMidiFileFormat(File)
      • getMidiFileFormat

        public static MidiFileFormat getMidiFileFormat​(File file)
                                                throws InvalidMidiDataException,
                                                       IOException
        指定されたFileのMIDIファイル形式を取得します。 Fileは、システムが認識したファイル・タイプに有効なMIDIファイル・データを示す必要があります。

        この操作は、インストールされたファイル・リーダーによって構文解析できる種類のファイルに限り有効です。 互換性のあるファイル・リーダーがインストールされていない場合、有効なファイルであってもInvalidMidiDataExceptionで失敗することがあります。 また、互換性のあるファイル・リーダーがインストールされている場合はInvalidMidiDataExceptionで失敗しますが、ファイル形式を決定する際にエラーが発生します。

        パラメータ:
        file - ファイル形式情報を抽出するFile
        戻り値:
        MIDIファイル形式を記述するMidiFileFormatオブジェクト
        例外:
        InvalidMidiDataException - システムが認識した有効なMIDIファイル・データをFileが示さない場合
        IOException - ファイルにアクセス中に入出力例外が発生した場合
        NullPointerException - filenullの場合
        関連項目:
        getMidiFileFormat(InputStream), getMidiFileFormat(URL)
      • getSequence

        public static Sequence getSequence​(InputStream stream)
                                    throws InvalidMidiDataException,
                                           IOException
        指定された入力ストリームからMIDIシーケンスを取得します。 ストリームは、システムが認識したファイル・タイプに有効なMIDIファイル・データを示す必要があります。

        このメソッドまたはこのメソッドが呼び出すコード、あるいはその両方とも、そのデータ形式がサポートされるかどうかを判定するためにストリームからデータをいくらか読み取る必要があります。 したがって、ストリームをマークし、データがサポートされる形式であるかどうかを判定するのに十分なデータを読み取り、ストリームのリード・ポインタを元の位置に戻すための実装が必要です。 入力ストリームがこの一連の操作を許可しない場合、このメソッドはIOExceptionをスローして失敗します。

        この操作は、インストールされたファイル・リーダーによって構文解析できる種類のファイルに限り有効です。 互換性のあるファイル・リーダーがインストールされていない場合、有効なファイルであってもInvalidMidiDataExceptionで失敗することがあります。 また、互換性のあるファイル・リーダーがインストールされている場合はInvalidMidiDataExceptionで失敗しますが、ファイル・データからSequenceオブジェクトを構築する際にエラーが発生します。

        パラメータ:
        stream - Sequenceを構築する入力ストリーム
        戻り値:
        入力ストリームに含まれるMIDIファイル・データにもとづくSequenceオブジェクト
        例外:
        InvalidMidiDataException - システムが認識した有効なオーディオ・ファイル・データをストリームが示さない場合
        IOException - ストリームにアクセス中に入出力例外が発生した場合
        NullPointerException - streamnullの場合
        関連項目:
        InputStream.markSupported(), InputStream.mark(int)
      • getSequence

        public static Sequence getSequence​(URL url)
                                    throws InvalidMidiDataException,
                                           IOException
        指定されたURLからMIDIシーケンスを取得します。 URLは、システムが認識したファイル・タイプに有効なMIDIファイル・データを示す必要があります。

        この操作は、インストールされたファイル・リーダーによって構文解析できる種類のファイルに限り有効です。 互換性のあるファイル・リーダーがインストールされていない場合、有効なファイルであってもInvalidMidiDataExceptionで失敗することがあります。 また、互換性のあるファイル・リーダーがインストールされている場合はInvalidMidiDataExceptionで失敗しますが、ファイル・データからSequenceオブジェクトを構築する際にエラーが発生します。

        パラメータ:
        url - Sequenceを構築するURL
        戻り値:
        URLが示すMIDIファイル・データに基づくSequenceオブジェクト
        例外:
        InvalidMidiDataException - システムが認識した有効なMIDIファイル・データをURLが示さない場合
        IOException - URLにアクセス中に入出力例外が発生した場合
        NullPointerException - urlnullの場合
      • getSequence

        public static Sequence getSequence​(File file)
                                    throws InvalidMidiDataException,
                                           IOException
        指定されたFileからMIDIシーケンスを取得します。 Fileは、システムが認識したファイル・タイプに有効なMIDIファイル・データを示す必要があります。

        この操作は、インストールされたファイル・リーダーによって構文解析できる種類のファイルに限り有効です。 互換性のあるファイル・リーダーがインストールされていない場合、有効なファイルであってもInvalidMidiDataExceptionで失敗することがあります。 また、互換性のあるファイル・リーダーがインストールされている場合はInvalidMidiDataExceptionで失敗しますが、ファイル・データからSequenceオブジェクトを構築する際にエラーが発生します。

        パラメータ:
        file - Sequenceを構築するFile
        戻り値:
        Fileが示すMIDIファイル・データに基づくSequenceオブジェクト
        例外:
        InvalidMidiDataException - システムが認識した有効なMIDIファイル・データをFileが示さない場合
        IOException - 入出力例外が発生した場合
        NullPointerException - filenullの場合
      • getMidiFileTypes

        public static int[] getMidiFileTypes​()
        システムがファイル書込みサポートを提供するMIDIファイル・タイプのセットを取得します。
        戻り値:
        一意のファイル・タイプの配列。 サポートされているファイル・タイプがない場合、長さ0の配列が返される。
      • isFileTypeSupported

        public static boolean isFileTypeSupported​(int fileType)
        指定されたMIDIファイル・タイプのファイル書込みサポートをシステムが提供しているかどうかを示します。
        パラメータ:
        fileType - 書込み機能が照会されるファイル・タイプ
        戻り値:
        ファイル・タイプがサポートされている場合はtrue、そうでない場合はfalse
      • getMidiFileTypes

        public static int[] getMidiFileTypes​(Sequence sequence)
        指定されたシーケンスからシステムが書込み可能なMIDIファイル・タイプのセットを取得します。
        パラメータ:
        sequence - MIDIファイル・タイプのサポートが照会されるシーケンス
        戻り値:
        一意のサポートされるファイル・タイプのセット。 サポートされているファイル・タイプがない場合、長さ0の配列が返される。
        例外:
        NullPointerException - sequencenullの場合
      • isFileTypeSupported

        public static boolean isFileTypeSupported​(int fileType,
                                                  Sequence sequence)
        指定されたファイル・タイプのMIDIファイルを、示されたシーケンスから書き込めるかどうかを示します。
        パラメータ:
        fileType - 書込み機能が照会されるファイル・タイプ
        sequence - ファイル書込みサポートが照会されるシーケンス
        戻り値:
        ファイル・タイプがこのシーケンスに対してサポートされている場合はtrue、そうでない場合はfalse
        例外:
        NullPointerException - sequencenullの場合
      • write

        public static int write​(Sequence in,
                                int fileType,
                                OutputStream out)
                         throws IOException
        提供される出力ストリームに示されるMIDIファイル・タイプのファイルを表すバイトのストリームを書き込みます。
        パラメータ:
        in - ファイルへ書き込まれるMIDIデータを含むシーケンス
        fileType - 出力ストリームへ書き込まれるファイルのファイル・タイプ
        out - ファイル・データが書き込まれるストリーム
        戻り値:
        出力ストリームへ書き込まれるバイト数
        例外:
        IOException - 入出力例外が発生した場合
        IllegalArgumentException - システムがそのファイル形式をサポートしていない場合
        NullPointerException - inまたはoutnullの場合
        関連項目:
        isFileTypeSupported(int, Sequence), getMidiFileTypes(Sequence)
      • write

        public static int write​(Sequence in,
                                int type,
                                File out)
                         throws IOException
        提供される外部ファイルに示されるMIDIファイル・タイプのファイルを表すバイトのストリームを書き込みます。
        パラメータ:
        in - ファイルへ書き込まれるMIDIデータを含むシーケンス
        type - 出力ストリームへ書き込まれるファイルのファイル・タイプ
        out - ファイル・データが書き込まれる外部ファイル
        戻り値:
        ファイルへ書き込まれるバイト数
        例外:
        IOException - 入出力例外が発生した場合
        IllegalArgumentException - システムがそのファイル・タイプをサポートしていない場合
        NullPointerException - inまたはoutnullの場合
        関連項目:
        isFileTypeSupported(int, Sequence), getMidiFileTypes(Sequence)