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

クラスShortMessage

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

public class ShortMessage
extends MidiMessage
ShortMessageには、ステータス・バイトのあとに2バイトまでのデータ・バイトが続くMIDIメッセージが格納されます。 これの基準を満たすMIDIメッセージには、チャネル・ボイス、チャネル・モード、システム・コモン、システム・リアルタイムの各形式、つまりシステム・エクスクルーシブとメタイベントを除くすべてが含まれます。 ShortMessageクラスでは、MIDIメッセージの内容を取得および設定するメソッドが提供されます。

ShortMessageのいくつかのメソッドには、MIDIのステータス・バイトまたはデータ・バイトを指定するための整数型パラメータがあります。 数値がわかっている場合は、それを直接指定できます。 システム・コモン・メッセージおよびシステム・リアルタイム・メッセージでは、多くの場合SYSTEM_RESETなどの、対応するShortMessageのフィールドを使用できます。 チャネル・メッセージでは、ステータス・バイトの上位4ビットをコマンド値によって指定し、下位4ビットをMIDIチャネル番号によって指定します。 Javaの符号付きバイト形式で受信されたMIDIデータ・バイトを変換するには、MidiMessageクラスの説明にある変換コードを使用できます。

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

    フィールド 
    修飾子と型 フィールド 説明
    static int ACTIVE_SENSING
    アクティブ・センシング・メッセージのステータス・バイト(0xFEまたは254)です。
    static int CHANNEL_PRESSURE
    チャネル圧力のコマンド値(アフター・タッチ) message (0xD0または208)。
    static int CONTINUE
    コンティニュー・メッセージのステータス・バイト(0xFBまたは251)です。
    static int CONTROL_CHANGE
    コントロール・チェンジ・メッセージのコマンド値(0xB0または176).です。
    static int END_OF_EXCLUSIVE
    エンド・オブ・システム・エクスクルーシブ・メッセージのステータス・バイト(0xF7または247)です。
    static int MIDI_TIME_CODE
    MIDIタイム・コード・クォータ・フレーム・メッセージのステータス・バイト(0xF1または241)です。
    static int NOTE_OFF
    ノート・オフメッセージのコマンド値(0x80または128).です。
    static int NOTE_ON
    ノート・オンメッセージのコマンド値(0x90または144).です。
    static int PITCH_BEND
    ピッチ・ベンド・メッセージのコマンド値(0xE0または224).です。
    static int POLY_PRESSURE
    Polyphonic Key Pressureのコマンド値(アフタータッチ) message (0xA0、または160)。
    static int PROGRAM_CHANGE
    プログラム・チェンジ・メッセージのコマンド値(0xC0または192).です。
    static int SONG_POSITION_POINTER
    ソング・ポジション・ポインタ・メッセージのステータス・バイト(0xF2または242)です。
    static int SONG_SELECT
    MIDIソング・セレクト・メッセージのステータス・バイト(0xF3または243)です。
    static int START
    スタート・メッセージのステータス・バイト(0xFAまたは250)です。
    static int STOP
    ストップ・メッセージのステータス・バイト(0xFCまたは252)です。
    static int SYSTEM_RESET
    システム・リセット・メッセージのステータス・バイト(0xFFまたは255)です。
    static int TIMING_CLOCK
    タイミング・クロック・メッセージのステータス・バイト(0xF8または248)です。
    static int TUNE_REQUEST
    チューン・リクエスト・メッセージのステータス・バイト(0xF6または246)です。

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

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

    コンストラクタ 
    修飾子 コンストラクタ 説明
      ShortMessage()
    新しいShortMessageを構築します。
    protected ShortMessage​(byte[] data)
    新しいShortMessageを構築します。
      ShortMessage​(int status)
    データ・バイトを必要としないMIDIメッセージを表すShortMessageを新しく構築します。
      ShortMessage​(int status, int data1, int data2)
    データ・バイト2つで構成されるMIDIメッセージを表すShortMessageを新しく構築します。
      ShortMessage​(int command, int channel, int data1, int data2)
    データ・バイト2つで構成されるチャネルMIDIメッセージを表すShortMessageを新しく構築します。
  • メソッドのサマリー

    修飾子と型 メソッド 説明
    Object clone()
    このオブジェクトと同じクラスで、同じ内容の新しいオブジェクトを作成します。
    int getChannel()
    このイベントに関連したMIDIチャネルを取得します。
    int getCommand()
    このイベントに関連したMIDIコマンドを取得します。
    int getData1()
    メッセージの第1データ・バイトを取得します。
    int getData2()
    メッセージの第2データ・バイトを取得します。
    protected int getDataLength​(int status)
    特定のステータス・バイト値に関連したデータ・バイト数を取得します。
    void setMessage​(int status)
    データ・バイトを必要としないMIDIメッセージのパラメータを設定します。
    void setMessage​(int status, int data1, int data2)
    データ・バイト1つまたは2つで構成されるMIDIメッセージのパラメータを設定します。
    void setMessage​(int command, int channel, int data1, int data2)
    データ・バイト2つで構成されるチャネル・メッセージにショート・メッセージ・パラメータを設定します。

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

    getLength, getMessage, getStatus, setMessage

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

    equalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait
  • フィールド詳細

  • コンストラクタの詳細

    • ShortMessage

      public ShortMessage()
      新しいShortMessageを構築します。 新しいメッセージの内容には、有効なMIDIメッセージが指定されることが保証されます。 構築後にメッセージの内容を設定するには、setMessageメソッドの1つを使用します。
      関連項目:
      setMessage(int)
    • ShortMessage

      public ShortMessage​(int status) throws InvalidMidiDataException
      データ・バイトを必要としないMIDIメッセージを表すShortMessageを新しく構築します。 メッセージの内容は、setMessageメソッドの1つを使用して変更できます。
      パラメータ:
      status - MIDIステータス・バイト
      例外:
      InvalidMidiDataException - statusで、データ・バイトを必要としないメッセージに対して有効なMIDIステータス・バイトが指定されていない場合
      導入されたバージョン:
      1.7
      関連項目:
      setMessage(int), setMessage(int, int, int), setMessage(int, int, int, int), MidiMessage.getStatus()
    • ShortMessage

      public ShortMessage​(int status, int data1, int data2) throws InvalidMidiDataException
      データ・バイト2つで構成されるMIDIメッセージを表すShortMessageを新しく構築します。 データ・バイト1つだけで構成されるメッセージの場合は、2番目のデータ・バイトが無視されます。 データ・バイトなしのメッセージの場合は、両方のデータ・バイトが無視されます。 メッセージの内容は、setMessageメソッドの1つを使用して変更できます。
      パラメータ:
      status - MIDIステータス・バイト
      data1 - 第1データ・バイト
      data2 - 第2データ・バイト
      例外:
      InvalidMidiDataException - メッセージを構成するステータス・バイトまたはすべてのデータ・バイトが有効なMIDIメッセージを指定していない場合
      導入されたバージョン:
      1.7
      関連項目:
      setMessage(int), setMessage(int, int, int), setMessage(int, int, int, int), MidiMessage.getStatus(), getData1(), getData2()
    • ShortMessage

      public ShortMessage​(int command, int channel, int data1, int data2) throws InvalidMidiDataException
      データ・バイト2つで構成されるチャネルMIDIメッセージを表すShortMessageを新しく構築します。 データ・バイト1つだけで構成されるメッセージの場合は、2番目のデータ・バイトが無視されます。 データ・バイトなしのメッセージの場合は、両方のデータ・バイトが無視されます。 メッセージの内容は、setMessageメソッドの1つを使用して変更できます。
      パラメータ:
      command - このメッセージで表されるMIDIコマンド
      channel - メッセージに関連したチャネル
      data1 - 第1データ・バイト
      data2 - 第2データ・バイト
      例外:
      InvalidMidiDataException - メッセージを構成するコマンド値、チャネル値、またはすべてのデータ・バイトが有効なMIDIメッセージを指定していない場合
      導入されたバージョン:
      1.7
      関連項目:
      setMessage(int), setMessage(int, int, int), setMessage(int, int, int, int), getCommand(), getChannel(), getData1(), getData2()
    • ShortMessage

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

    • setMessage

      public void setMessage​(int status) throws InvalidMidiDataException
      データ・バイトを必要としないMIDIメッセージのパラメータを設定します。
      パラメータ:
      status - MIDIステータス・バイト
      例外:
      InvalidMidiDataException - statusで、データ・バイトを必要としないメッセージに対して有効なMIDIステータス・バイトが指定されていない場合
      関連項目:
      setMessage(int, int, int), setMessage(int, int, int, int)
    • setMessage

      public void setMessage​(int status, int data1, int data2) throws InvalidMidiDataException
      データ・バイト1つまたは2つで構成されるMIDIメッセージのパラメータを設定します。 データ・バイト1つで構成されるメッセージの場合は2番目のデータ・バイトが無視され、データ・バイトなしのメッセージの場合は両方のデータ・バイトが無視されます。
      パラメータ:
      status - MIDIステータス・バイト
      data1 - 第1データ・バイト
      data2 - 第2データ・バイト
      例外:
      InvalidMidiDataException - ステータス・バイト、またはメッセージに属するすべてのデータ・バイトが有効なMIDIメッセージを指定していない場合
      関連項目:
      setMessage(int, int, int, int), setMessage(int)
    • setMessage

      public void setMessage​(int command, int channel, int data1, int data2) throws InvalidMidiDataException
      データ・バイト2つで構成されるチャネル・メッセージにショート・メッセージ・パラメータを設定します。 データ・バイト1つだけで構成されるメッセージの場合は2番目のデータ・バイトが無視され、データ・バイトなしのメッセージの場合は両方のデータ・バイトが無視されます。
      パラメータ:
      command - このメッセージで表されるMIDIコマンド
      channel - メッセージに関連したチャネル
      data1 - 第1データ・バイト
      data2 - 第2データ・バイト
      例外:
      InvalidMidiDataException - メッセージを構成するステータス・バイトまたはすべてのデータ・バイトが有効なMIDIメッセージを指定していない場合
      関連項目:
      setMessage(int, int, int), setMessage(int), getCommand(), getChannel(), getData1(), getData2()
    • getChannel

      public int getChannel()
      このイベントに関連したMIDIチャネルを取得します。 このメソッドでは、イベントがMIDIチャネル・メッセージであることが想定されています。イベントがMIDIチャネル・メッセージでない場合には、戻り値は意味のあるものにはなりません。
      戻り値:
      メッセージに関連したMIDIチャネル
      関連項目:
      setMessage(int, int, int, int)
    • getCommand

      public int getCommand()
      このイベントに関連したMIDIコマンドを取得します。 このメソッドでは、イベントがMIDIチャネル・メッセージであることが想定されています。イベントがMIDIチャネル・メッセージでない場合には、戻り値は意味のあるものにはなりません。
      戻り値:
      このイベントに関連したMIDIコマンド
      関連項目:
      setMessage(int, int, int, int)
    • getData1

      public int getData1()
      メッセージの第1データ・バイトを取得します。
      戻り値:
      data1フィールドの値
      関連項目:
      setMessage(int, int, int)
    • getData2

      public int getData2()
      メッセージの第2データ・バイトを取得します。
      戻り値:
      data2フィールドの値
      関連項目:
      setMessage(int, int, int)
    • clone

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

      protected final int getDataLength​(int status) throws InvalidMidiDataException
      特定のステータス・バイト値に関連したデータ・バイト数を取得します。
      パラメータ:
      status - ショートMIDIメッセージを表すステータス・バイト値
      戻り値:
      バイト単位のデータ長(0、1、または2)
      例外:
      InvalidMidiDataException - status引数でショート・メッセージのステータス・バイトを指定していない場合