JavaTM Platform
Standard Ed. 6

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 を新しく構築します。
 
メソッドの概要
 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 から継承されたメソッド
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

META

public static final int META
MetaMessage (0xFF つまり 255) のステータスバイトは、MIDI ファイルで使用されます。このステータスバイトは、リアルタイムの「MIDI ワイヤー」プロトコルで使用される SYSTEM_RESET と同じ値を保持します。

関連項目:
MidiMessage.getStatus(), 定数フィールド値
コンストラクタの詳細

MetaMessage

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


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 メタメッセージを指定していない場合
InvalidMidiDataException

getType

public int getType()
MetaMessage の型を取得します。

戻り値:
MetaMessage の型を示す整数型

getData

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

戻り値:
メタメッセージデータを含む配列
関連項目:
MidiMessage.getLength()

clone

public Object clone()
このオブジェクトと同じクラスで、同じ内容の新しいオブジェクトを作成します。

定義:
クラス MidiMessage 内の clone
戻り値:
このインスタンスの複製
関連項目:
Cloneable

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。