Advertisement

javax.sound.midi包的初步研究(二)

阅读量:

在上一部分中,我们简要提及了通过javax.sound.midi包实现MIDI播放的相关内容。接下来,我们将详细探讨如何对MIDI音符信号进行捕捉与处理。

此前,我们曾利用Sequence类中的某一特定方法:

复制代码
    Track[] tracks = Sequence.getTracks();
    

对于音频处理有一定认知的人应当知晓,MIDI所记录的音频信息是以多轨形式存在的,依据MIDI信号的基本规则,其最多可支持128条独立音轨(编号范围为0至127)。因此,一个 javax.sound.midi.Track 实际上可以被理解为在该MIDI文件中所包含的某一条音轨数据的具体实现对象。

MIDI通过一种被称为“信息”(Message)的机制来保存音符相关的数据。通常情况下,这类信息可以被区分为“短信息”(ShortMessage,需注意与手机中的“短信”概念进行区分)和“综合信息”(MetaMessage)。根据相关文档对信息内容的分类说明可知,短信息主要承担着控制音轨启动、停止、调节音量及其他播放相关操作的功能。而综合信息则并未明确规定其具体用途,在MetaMessage的Javadoc中亦可查阅到相

全部评论 (0)

还没有任何评论哟~