|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
javax.sound.midi
类 Track
java.lang.Object javax.sound.midi.Track
-
public class Track
- extends Object
MIDI 音轨是一个可随其他音轨存储在标准 MIDI 文件中的独立的 MIDI 事件流(带时间戳的 MIDI 数据)。MIDI 规范只允许 16 通道的 MIDI 数据,音轨是一个绕过此限制的方法。一个 MIDI 文件可包含任何数量的音轨,每个音轨包含其自身的多达 16 个通道的 MIDI 数据流。
Track
占用
演奏的数据层次中的一个中间层。sequencer 演奏 sequence,它包含音轨,而音轨包含 MIDI 事件。Sequencer 可能提供 mute 或 solo 具体音轨的控制。Sequencer
音轨的计时信息和精度由包含该音轨的 sequence 控制并存储在其中。给定的 Track
被当作属于维持其计时的特定的
。因此,新(空)音轨通过调用 Sequence
方法创建,而不是直接调用 Sequence.createTrack()
Track
构造方法。
Track
类通过从其添加或移除 MidiEvent
对象提供了用于编辑音轨的方法。这些操作使事件列表保持正确的时间顺序。还包括用于获得有关其包含的事件数或刻度持续时间的音轨大小的方法。
方法摘要 | |
---|---|
boolean |
add(MidiEvent event) 将新事件添加至音轨。 |
MidiEvent |
get(int index) 获得位于指定索引处的事件。 |
boolean |
remove(MidiEvent event) 从音轨中移除指定的事件。 |
int |
size() 获得此音轨中的事件数。 |
long |
ticks() 获得音轨的长度,用 MIDI 刻度表示。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
方法详细信息 |
---|
add
public boolean add(MidiEvent event)
- 将新事件添加至音轨。如果事件已包含在音轨中,则不再添加。事件列表按时间顺序排列,这意味着此事件将插入到列表中的适当位置,而不一定是最后。
-
- 参数:
-
event
- 要添加的事件 - 返回:
-
如果该事件在音轨中原先不存在并进行了添加,则返回
true
,否则返回false
remove
public boolean remove(MidiEvent event)
- 从音轨中移除指定的事件。
-
- 参数:
-
event
- 要移除的事件 - 返回:
-
如果事件原先在音轨中存在但后来被移除,则返回
true
,否则返回false
get
public MidiEvent get(int index) throws ArrayIndexOutOfBoundsException
- 获得位于指定索引处的事件。
-
- 参数:
-
index
- 事件向量中所需事件的位置 - 抛出:
-
- 如果指定的索引为负或小于此音轨的当前大小。ArrayIndexOutOfBoundsException
-
ArrayIndexOutOfBoundsException
- 另请参见:
-
size()
size
public int size()
- 获得此音轨中的事件数。
-
- 返回:
- 音轨的事件向量的大小
ticks
public long ticks()
-
获得音轨的长度,用 MIDI 刻度表示。(刻度持续的秒数由包含此音轨的
Sequence
的计时精度确定,同时也取决于由 sequencer 设置的音乐的节拍。) -
- 返回:
- 持续时间,以刻度为单位
- 另请参见:
-
Sequence.Sequence(float, int)
,Sequencer.setTempoInBPM(float)
,Sequencer.getTickPosition()
所有类
|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |