JavaTM 2 Platform
Std. Ed. v1.3

javax.sound.midi
クラス Sequence

java.lang.Object
  |
  +--javax.sound.midi.Sequence

public class Sequence
extends Object

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

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

関連項目:
Sequencer.setSequence(java.io.InputStream stream), Sequencer.setSequence(Sequence sequence), Track.add(MidiEvent), MidiFileFormat

フィールドの概要
protected  float divisionType
          シーケンスのタイミング分割形式です。
static float PPQ
          テンポベースのタイミング形式で、これに対する解像度は四分音符当たりのパルス (ティック) で表示されます。
protected  int resolution
          シーケンスのタイミング解像度です。
static float SMPTE_24
          SMPTE ベースのタイミング形式で、1 秒当たり 24 フレームです (解像度は 1 フレーム当たりのティックで表示)。
static float SMPTE_25
          SMPTE ベースのタイミング形式で、1 秒当たり 25 フレームです (解像度は 1 フレーム当たりのティックで表示)。
static float SMPTE_30
          SMPTE ベースのタイミング形式で、1 秒当たり 30 フレームです (解像度は 1 フレーム当たりのティックで表示)。
static float SMPTE_30DROP
          SMPTE ベースのタイミング形式で、1 秒当たり 29.97 フレームです (解像度は 1 フレーム当たりのティックで表示)。
protected  Vector tracks
          このシーケンスの MIDI トラックです。
 
コンストラクタの概要
Sequence(float divisionType, int resolution)
          新しい MIDI シーケンスを、指定されたタイミング分割形式およびタイミング解像度で構築します。
Sequence(float divisionType, int resolution, int numTracks)
          新しい MIDI シーケンスを、指定されたタイミング分割形式、タイミング解像度、およびトラック数で構築します。
 
メソッドの概要
 Track createTrack()
          空のトラックをこのシーケンスの一部として新しく作成します。
 boolean deleteTrack(Track track)
          シーケンスから、指定されたトラックを削除します。
 float getDivisionType()
          このシーケンスのタイミング分割形式を取得します。
 long getMicrosecondLength()
          マイクロ秒単位のこのシーケンスのデュレーションを取得します。
 Patch[] getPatchList()
          このシーケンスで参照されるパッチのリストを取得します。
 int getResolution()
          このシーケンスのタイミング解像度を取得します。
 long getTickLength()
          MIDI ティック単位のこのシーケンスのデュレーションを取得します。
 Track[] getTracks()
          このシーケンスの全トラックを含む配列を取得します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

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 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[])

JavaTM 2 Platform
Std. Ed. v1.3

バグや機能要求の報告
さらに詳しい API リファレンスおよび開発者ドキュメントについては、 Java 2 SDK SE Developer Documentation を参照してください。このドキュメントには、概念、用語の定義、回避策、 実用的なコード例など、開発者を対象にした詳細な解説が掲載されています。

Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.