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

クラスMetaMessage

java.lang.Object
javax.sound.midi.MidiMessage
javax.sound.midi.MetaMessage
すべての実装されたインタフェース:
Cloneable

public class MetaMessage
extends MidiMessage
MetaMessageはシンセサイザに意味のないMidiMessageですが、MIDIファイルに保存してプログラムで解釈することができます。 (MidiMessageクラスの説明を参照。) 標準MIDIファイルの仕様によってシーケンス番号、歌詞、演奏指示点、テンポの設定など、様々なタイプのメタイベントが定義されています。 また、歌詞、著作権、テンポ指示、拍子記号および調記号、マーカーなどの情報のメタイベントもあります。詳細については、MIDI Manufacturer's Association (http://www.midi.org)発行の『Complete MIDI 1.0 Detailed Specification』に収められている「Standard MIDI Files 1.0」の仕様を参照してください。

MIDIワイヤ・プロトコルを使用してデータを転送する場合、ステータス値が0xFFShortMessageはシステム・リセット・メッセージを表します。 MIDIファイルでは、この同じ状態値がMetaMessageを表します。 メタ・メッセージの型は、ステータス・バイト0xFFに続く最初のバイトによってそれぞれ区別されます。 後続のバイトはデータ・バイトです。 システム・エクスクルーシブ・メッセージの場合と同様に、MetaMessageの型によってデータ・バイト数は異なります。

関連項目:
MetaEventListener
  • フィールドのサマリー

    フィールド 
    修飾子と型 フィールド 説明
    static int META
    MetaMessage (0xFFつまり255)のステータス・バイトは、MIDIファイルで使用されます。

    クラス javax.sound.midi.MidiMessageで宣言されたフィールド

    data, length
  • コンストラクタのサマリー

    コンストラクタ 
    修飾子 コンストラクタ 説明
      MetaMessage()
    新しいMetaMessageを構築します。
    protected MetaMessage​(byte[] data)
    新しいMetaMessageを構築します。
      MetaMessage​(int type, byte[] data, int length)
    MetaMessageを新しく構築し、メッセージ・パラメータを設定します。
  • メソッドのサマリー

    修飾子と型 メソッド 説明
    Object clone()
    このオブジェクトと同じクラスで、同じ内容の新しいオブジェクトを作成します。
    byte[] getData()
    メタ・メッセージのデータのコピーを取得します。
    int getType()
    MetaMessageの型を取得します。
    void setMessage​(int type, byte[] data, int length)
    MetaMessageのメッセージ・パラメータを設定します。

    クラス javax.sound.midi.MidiMessageで宣言されたメソッド

    getLength, getMessage, getStatus, setMessage

    クラス java.lang.Objectで宣言されたメソッド

    equalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait
  • フィールド詳細

  • コンストラクタの詳細

    • MetaMessage

      public MetaMessage()
      新しいMetaMessageを構築します。 メッセージの内容はここでは設定されません。続いてsetMessageを使用してメッセージの内容を設定します。
    • MetaMessage

      public MetaMessage​(int type, byte[] data, int length) throws InvalidMidiDataException
      MetaMessageを新しく構築し、メッセージ・パラメータを設定します。 メッセージの内容は、setMessageメソッドを使用して変更できます。
      パラメータ:
      type - メタ・メッセージの型(128未満のこと)
      data - MIDIメッセージのデータ・バイト
      length - dataバイト配列のバイト容量。負の値を指定することはできず、data.length以下
      例外:
      InvalidMidiDataException - パラメータ値が有効なMIDIメタ・メッセージを指定していない場合
      導入されたバージョン:
      1.7
      関連項目:
      setMessage(int, byte[], int), getType(), getData()
    • MetaMessage

      protected MetaMessage​(byte[] data)
      新しいMetaMessageを構築します。
      パラメータ:
      data - 詳細なメッセージを含むバイトの配列。 メッセージ・データはsetMessageメソッドを使って変更できる。
      関連項目:
      setMessage(int, byte[], int)
  • メソッドの詳細

    • setMessage

      public void setMessage​(int type, byte[] data, int length) throws InvalidMidiDataException
      MetaMessageのメッセージ・パラメータを設定します。 メタ・メッセージには唯一0xFFというステータス・バイト値だけが可能なので、ここで指定する必要はありません。 getStatusを呼び出すと、すべてのメタ・メッセージに対して0xFFが返されます。

      MetaMessageでは、type引数がステータス・バイトに続くバイトの有効値となります。 data引数はMetaMessageのすべての後続バイトを含みます。 言い換えると、MetaMessageの型を指定するバイトはデータ・バイトとは見なされません。

      パラメータ:
      type - メタ・メッセージの型(128未満のこと)
      data - MIDIメッセージのデータ・バイト
      length - dataバイト配列のバイト数
      例外:
      InvalidMidiDataException - パラメータ値が有効なMIDIメタ・メッセージを指定していない場合
    • getType

      public int getType()
      MetaMessageの型を取得します。
      戻り値:
      MetaMessageの型を示す整数型
    • getData

      public byte[] getData()
      メタ・メッセージのデータのコピーを取得します。 バイトの戻り配列には、ステータス・バイトまたはメッセージ長データは含まれません。 メタ・メッセージのデータの長さが配列の長さです。 メッセージ全体の長さはステータス・バイトおよびメタ・メッセージ型バイトを含むため、戻り配列より長くなる場合があります。
      戻り値:
      メタ・メッセージ・データを含む配列
      関連項目:
      MidiMessage.getLength()
    • clone

      public Object clone()
      このオブジェクトと同じクラスで、同じ内容の新しいオブジェクトを作成します。
      定義:
      clone、クラス: MidiMessage
      戻り値:
      このインスタンスの複製
      関連項目:
      Cloneable