- java.lang.Object
-
- javax.sound.midi.Sequence
-
public class Sequence extends Object
Sequenceは、Sequencerオブジェクトによって再生可能な音楽情報(多くの場合、曲全体または曲全体)を含むデータ構造です。 具体的には、Sequenceはタイミング情報および1つ以上のトラックを含んでいます。 各trackは一連のMIDIイベント(ノート・オン、ノート・オフ、プログラム変更、メタ・イベントなど)で構成されています。 シーケンスのタイミング情報は、そのシーケンスのイベントのタイムスタンプに使用される単位を指定します。SequenceをMIDIファイルから作成するには、そのファイルを入力ストリームに読み込んでMidiSystemのgetSequenceメソッドの1つを呼び出します。 また、シーケンスをゼロから作成するには、空きSequenceに新しいTracksを追加し、それらのTracksにMidiEventオブジェクトを追加します。
-
-
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 protected floatdivisionTypeシーケンスのタイミング分割形式です。static floatPPQテンポ・ベースのタイミング形式で、これに対する解像度は四分音符当たりのパルス(ティック)で表示されます。protected intresolutionシーケンスのタイミング解像度です。static floatSMPTE_24SMPTEベースのタイミング形式で、1秒当たり24フレームです(解像度は1フレーム当たりのティックで表示)。static floatSMPTE_25SMPTEベースのタイミング形式で、1秒当たり25フレームです(解像度は1フレーム当たりのティックで表示)。static floatSMPTE_30SMPTEベースのタイミング形式で、1秒当たり30フレームです(解像度は1フレーム当たりのティックで表示)。static floatSMPTE_30DROPSMPTEベースのタイミング形式で、1秒当たり29.97フレームです(解像度は1フレーム当たりのティックで表示)。protected Vector<Track>tracksこのシーケンスのMIDIトラックです。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 修飾子と型 メソッド 説明 TrackcreateTrack()空のトラックをこのシーケンスの一部として新しく作成します。booleandeleteTrack(Track track)シーケンスから、指定されたトラックを削除します。floatgetDivisionType()このシーケンスのタイミング分割形式を取得します。longgetMicrosecondLength()マイクロ秒単位のこのシーケンスのデュレーションを取得します。Patch[]getPatchList()このシーケンスで参照されるパッチのリストを取得します。intgetResolution()このシーケンスのタイミング解像度を取得します。longgetTickLength()MIDIティック単位のこのシーケンスのデュレーションを取得します。Track[]getTracks()このシーケンスの全トラックを含む配列を取得します。
-
-
-
フィールドの詳細
-
PPQ
public static final float PPQ
テンポ・ベースのタイミング形式で、これに対する解像度は四分音符当たりのパルス(ティック)で表示されます。- 関連項目:
Sequence(float, int)、定数フィールド値
-
SMPTE_24
public static final float SMPTE_24
SMPTEベースのタイミング形式で、1秒当たり24フレームです(解像度は1フレーム当たりのティックで表示)。- 関連項目:
Sequence(float, int)、定数フィールド値
-
SMPTE_25
public static final float SMPTE_25
SMPTEベースのタイミング形式で、1秒当たり25フレームです(解像度は1フレーム当たりのティックで表示)。- 関連項目:
Sequence(float, int)、定数フィールド値
-
SMPTE_30DROP
public static final float SMPTE_30DROP
SMPTEベースのタイミング形式で、1秒当たり29.97フレームです(解像度は1フレーム当たりのティックで表示)。- 関連項目:
Sequence(float, int)、定数フィールド値
-
SMPTE_30
public static final float SMPTE_30
SMPTEベースのタイミング形式で、1秒当たり30フレームです(解像度は1フレーム当たりのティックで表示)。- 関連項目:
Sequence(float, int)、定数フィールド値
-
divisionType
protected float divisionType
シーケンスのタイミング分割形式です。- 関連項目:
PPQ,SMPTE_24,SMPTE_25,SMPTE_30DROP,SMPTE_30,getDivisionType()
-
resolution
protected int resolution
シーケンスのタイミング解像度です。- 関連項目:
getResolution()
-
tracks
protected Vector<Track> tracks
このシーケンスのMIDIトラックです。- 関連項目:
getTracks()
-
-
コンストラクタの詳細
-
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が有効でない場合- 関連項目:
PPQ,SMPTE_24,SMPTE_25,SMPTE_30DROP,SMPTE_30,getDivisionType(),getResolution(),getTracks()
-
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が有効でない場合- 関連項目:
PPQ,SMPTE_24,SMPTE_25,SMPTE_30DROP,SMPTE_30,getDivisionType(),getResolution()
-
-
メソッドの詳細
-
getDivisionType
public float getDivisionType()
このシーケンスのタイミング分割形式を取得します。- 戻り値:
- 分割形式(PPQ、またはSMPTE形式の1つ)
- 関連項目:
PPQ,SMPTE_24,SMPTE_25,SMPTE_30DROP,SMPTE_30,Sequence(float, int),MidiFileFormat.getDivisionType()
-
getResolution
public int getResolution()
このシーケンスのタイミング解像度を取得します。 シーケンスの分割形式がPPQの場合、解像度は1ビートあたりのティックで指定されます。 SMTPEタイミングの場合、解像度は1フレームあたりのティックで指定されます。- 戻り値:
- 1ビート当たり(PPQ)または1フレーム当たり(SMPTE)のティック数
- 関連項目:
getDivisionType(),Sequence(float, int),MidiFileFormat.getResolution()
-
createTrack
public Track createTrack()
空のトラックをこのシーケンスの一部として新しく作成します。 このトラックには、最初、トラックの終わりというメタイベントが含まれています。 新たに作成されたトラックが返されます。 シーケンス内のすべてのトラックは、getTracks()を使用して取得できます。 トラックはdeleteTrack(javax.sound.midi.Track)を使用してシーケンスから削除できます。- 戻り値:
- 新しく作成されたトラック
-
deleteTrack
public boolean deleteTrack(Track track)
シーケンスから、指定されたトラックを削除します。- パラメータ:
track- 削除するトラック- 戻り値:
- トラックがそのトラックに存在し、かつ削除された場合は
true、そうでない場合はfalse - 関連項目:
createTrack(),getTracks()
-
getTracks
public Track[] getTracks()
このシーケンスの全トラックを含む配列を取得します。 シーケンスがトラックを含んでいない場合、長さ0の配列が返されます。- 戻り値:
- トラックの配列
- 関連項目:
createTrack(),deleteTrack(javax.sound.midi.Track)
-
getMicrosecondLength
public long getMicrosecondLength()
マイクロ秒単位のこのシーケンスのデュレーションを取得します。- 戻り値:
- マイクロ秒単位のこのシーケンスのデュレーション
-
getTickLength
public long getTickLength()
MIDIティック単位のこのシーケンスのデュレーションを取得します。- 戻り値:
- ティック単位のこのシーケンスの長さ
- 関連項目:
getMicrosecondLength()
-
getPatchList
public Patch[] getPatchList()
このシーケンスで参照されるパッチのリストを取得します。 このパッチ・リストを使用して、必要なInstrumentオブジェクトをSynthesizerにロードできます。- 戻り値:
- このシーケンスで使用される
Patchオブジェクトの配列 - 関連項目:
Synthesizer.loadInstruments(Soundbank, Patch[])
-
-