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

クラスSequence

java.lang.Object
javax.sound.midi.Sequence

public class Sequence extends Object
Sequenceは、Sequencerオブジェクトによって再生可能な音楽情報(多くの場合、曲全体または曲全体)を含むデータ構造です。 具体的には、Sequenceはタイミング情報および1つ以上のトラックを含んでいます。 trackは一連のMIDIイベント(ノート・オン、ノート・オフ、プログラム変更、メタ・イベントなど)で構成されています。 シーケンスのタイミング情報は、そのシーケンスのイベントのタイムスタンプに使用される単位を指定します。

SequenceをMIDIファイルから作成するには、そのファイルを入力ストリームに読み込んでMidiSystemgetSequenceメソッドの1つを呼び出します。 空のSequenceに新しいTracksを追加し、これらのTracksMidiEventオブジェクトを追加することで、シーケンスを最初から構築することもできます。

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

    フィールド
    修飾子と型
    フィールド
    説明
    protected float
    シーケンスのタイミング分割形式です。
    static final float
    テンポ・ベースのタイミング形式で、これに対する解像度は四分音符当たりのパルス(ティック)で表示されます。
    protected int
    シーケンスのタイミング解像度です。
    static final float
    SMPTEベースのタイミング形式で、1秒当たり24フレームです(解像度は1フレーム当たりのティックで表示)。
    static final float
    SMPTEベースのタイミング形式で、1秒当たり25フレームです(解像度は1フレーム当たりのティックで表示)。
    static final float
    SMPTEベースのタイミング形式で、1秒当たり30フレームです(解像度は1フレーム当たりのティックで表示)。
    static final float
    SMPTEベースのタイミング形式で、1秒当たり29.97フレームです(解像度は1フレーム当たりのティックで表示)。
    protected Vector<Track>
    このシーケンスのMIDIトラックです。
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    Sequence(float divisionType, int resolution)
    新しいMIDIシーケンスを、指定されたタイミング分割形式およびタイミング解像度で構築します。
    Sequence(float divisionType, int resolution, int numTracks)
    新しいMIDIシーケンスを、指定されたタイミング分割形式、タイミング解像度、およびトラック数で構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    空のトラックをこのシーケンスの一部として新しく作成します。
    boolean
    シーケンスから、指定されたトラックを削除します。
    float
    このシーケンスのタイミング分割形式を取得します。
    long
    マイクロ秒単位のこのシーケンスのデュレーションを取得します。
    このシーケンスで参照されるパッチのリストを取得します。
    int
    このシーケンスのタイミング解像度を取得します。
    long
    MIDIティック単位のこのシーケンスのデュレーションを取得します。
    このシーケンスの全トラックを含む配列を取得します。

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

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • フィールド詳細

    • PPQ

      public static final float PPQ
      テンポ・ベースのタイミング形式で、これに対する解像度は四分音符当たりのパルス(ティック)で表示されます。
      関連項目:
    • SMPTE_24

      public static final float SMPTE_24
      SMPTEベースのタイミング形式で、1秒当たり24フレームです(解像度は1フレーム当たりのティックで表示)。
      関連項目:
    • SMPTE_25

      public static final float SMPTE_25
      SMPTEベースのタイミング形式で、1秒当たり25フレームです(解像度は1フレーム当たりのティックで表示)。
      関連項目:
    • SMPTE_30DROP

      public static final float SMPTE_30DROP
      SMPTEベースのタイミング形式で、1秒当たり29.97フレームです(解像度は1フレーム当たりのティックで表示)。
      関連項目:
    • SMPTE_30

      public static final float SMPTE_30
      SMPTEベースのタイミング形式で、1秒当たり30フレームです(解像度は1フレーム当たりのティックで表示)。
      関連項目:
    • divisionType

      protected float divisionType
      シーケンスのタイミング分割形式です。
      関連項目:
    • resolution

      protected int resolution
      シーケンスのタイミング解像度です。
      関連項目:
    • tracks

      protected Vector<Track> tracks
      このシーケンスのMIDIトラックです。
      関連項目:
  • コンストラクタの詳細

    • Sequence

      public Sequence(float divisionType, int resolution) throws InvalidMidiDataException
      新しいMIDIシーケンスを、指定されたタイミング分割形式およびタイミング解像度で構築します。 分割形式は認識されたMIDIタイミング形式の1つであることが必要です。 テンポ・ベースのタイミングの場合、divisionTypeはPPQ (四分音符あたりのパルス)で、解像度はビートあたりのティックで指定されます。 SMTPEタイミングの場合、divisionTypeが1秒あたりのフレーム数を指定し、解像度はフレームあたりのティックで指定されます。 シーケンスには初期トラックを含みません。 トラックは、createTrack()deleteTrack(javax.sound.midi.Track)を使ってシーケンスに追加したり、シーケンスから削除することができます。
      パラメータ:
      divisionType - タイミング分割形式(PPQ、またはSMPTE形式の1つ)
      resolution - タイミング解像度
      例外:
      InvalidMidiDataException - divisionTypeが有効でない場合
      関連項目:
    • Sequence

      public Sequence(float divisionType, int resolution, int numTracks) throws InvalidMidiDataException
      新しいMIDIシーケンスを、指定されたタイミング分割形式、タイミング解像度、およびトラック数で構築します。 分割形式は認識されたMIDIタイミング形式の1つであることが必要です。 テンポ・ベースのタイミングの場合、divisionTypeはPPQ (四分音符あたりのパルス)で、解像度はビートあたりのティックで指定されます。 SMTPEタイミングの場合、divisionTypeが1秒あたりのフレーム数を指定し、解像度はフレームあたりのティックで指定されます。 シーケンスはnumTracksで指定されたトラック数で初期化されます。 これらのトラックは最初は空です(すなわち、「トラックの終わり」というメタイベントしか含まれていない)。 トラックは、getTracks()メソッドを使用して編集するために取り出すことができます。 createTrack()deleteTrack(javax.sound.midi.Track)を使って、追加のトラックを追加したり、既存のトラックを削除したりすることができます。
      パラメータ:
      divisionType - タイミング分割形式(PPQ、またはSMPTE形式の1つ)
      resolution - タイミング解像度
      numTracks - シーケンスのトラックの初期番号
      例外:
      InvalidMidiDataException - divisionTypeが有効でない場合
      関連項目:
  • メソッドの詳細

    • getDivisionType

      public float getDivisionType()
      このシーケンスのタイミング分割形式を取得します。
      戻り値:
      分割形式(PPQ、またはSMPTE形式の1つ)
      関連項目:
    • getResolution

      public int getResolution()
      このシーケンスのタイミング解像度を取得します。 シーケンスの分割形式がPPQの場合、解像度は1ビートあたりのティックで指定されます。 SMTPEタイミングの場合、解像度は1フレームあたりのティックで指定されます。
      戻り値:
      1ビート当たり(PPQ)または1フレーム当たり(SMPTE)のティック数
      関連項目:
    • createTrack

      public Track createTrack()
      空のトラックをこのシーケンスの一部として新しく作成します。 このトラックには、最初、「トラックの終わり」というメタイベントが含まれています。 新たに作成されたトラックが返されます。 シーケンス内のすべてのトラックは、getTracks()を使用して取得できます。 トラックは、deleteTrack(javax.sound.midi.Track)を使用してシーケンスから削除できます。
      戻り値:
      新しく作成されたトラック
    • deleteTrack

      public boolean deleteTrack(Track track)
      シーケンスから、指定されたトラックを削除します。
      パラメータ:
      track - 削除するトラック
      戻り値:
      トラックがそのトラックに存在し、かつ削除された場合はtrue、そうでない場合はfalse
      関連項目:
    • getTracks

      public Track[] getTracks()
      このシーケンスの全トラックを含む配列を取得します。 シーケンスがトラックを含んでいない場合、長さ0の配列が返されます。
      戻り値:
      トラックの配列
      関連項目:
    • getMicrosecondLength

      public long getMicrosecondLength()
      マイクロ秒単位のこのシーケンスのデュレーションを取得します。
      戻り値:
      マイクロ秒単位のこのシーケンスのデュレーション
    • getTickLength

      public long getTickLength()
      MIDIティック単位のこのシーケンスのデュレーションを取得します。
      戻り値:
      ティック単位のこのシーケンスの長さ
      関連項目:
    • getPatchList

      public Patch[] getPatchList()
      このシーケンスで参照されるパッチのリストを取得します。 このパッチ・リストを使用して、必要なInstrumentオブジェクトをSynthesizerにロードできます。
      戻り値:
      このシーケンスで使用されるPatchオブジェクトの配列
      関連項目: