モジュール java.desktop
パッケージ 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)です。
    • コンストラクタのサマリー

      コンストラクタ 
      修飾子 コンストラクタ 説明
        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つで構成されるチャネル・メッセージにショート・メッセージ・パラメータを設定します。
    • フィールドの詳細

      • MIDI_TIME_CODE

        public static final int MIDI_TIME_CODE
        MIDIタイム・コード・クォータ・フレーム・メッセージのステータス・バイト(0xF1または241)です。
        関連項目:
        MidiMessage.getStatus()定数フィールド値
      • SONG_POSITION_POINTER

        public static final int SONG_POSITION_POINTER
        ソング・ポジション・ポインタ・メッセージのステータス・バイト(0xF2または242)です。
        関連項目:
        MidiMessage.getStatus()定数フィールド値
      • END_OF_EXCLUSIVE

        public static final int END_OF_EXCLUSIVE
        エンド・オブ・システム・エクスクルーシブ・メッセージのステータス・バイト(0xF7または247)です。
        関連項目:
        MidiMessage.getStatus()定数フィールド値
      • NOTE_OFF

        public static final int NOTE_OFF
        ノート・オフメッセージのコマンド値(0x80または128).です。
        関連項目:
        定数フィールド値
      • NOTE_ON

        public static final int NOTE_ON
        ノート・オンメッセージのコマンド値(0x90または144).です。
        関連項目:
        定数フィールド値
      • POLY_PRESSURE

        public static final int POLY_PRESSURE
        Polyphonic Key Pressureのコマンド値(アフタータッチ) message (0xA0、または160)。
        関連項目:
        定数フィールド値
      • CONTROL_CHANGE

        public static final int CONTROL_CHANGE
        コントロール・チェンジ・メッセージのコマンド値(0xB0または176).です。
        関連項目:
        定数フィールド値
      • PROGRAM_CHANGE

        public static final int PROGRAM_CHANGE
        プログラム・チェンジ・メッセージのコマンド値(0xC0または192).です。
        関連項目:
        定数フィールド値
      • CHANNEL_PRESSURE

        public static final int CHANNEL_PRESSURE
        チャネル圧力のコマンド値(アフター・タッチ) message (0xD0または208)。
        関連項目:
        定数フィールド値
      • PITCH_BEND

        public static final int PITCH_BEND
        ピッチ・ベンド・メッセージのコマンド値(0xE0または224).です。
        関連項目:
        定数フィールド値
    • コンストラクタの詳細

      • ShortMessage

        public ShortMessage​()
        新しいShortMessageを構築します。 新しいメッセージの内容には、有効なMIDIメッセージが指定されることが保証されます。 構築後にメッセージの内容を設定するには、setMessageメソッドの1つを使用します。
        関連項目:
        setMessage(int)
      • 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,
                               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引数でショート・メッセージのステータス・バイトを指定していない場合