javax.sound.midi

接口
异常
java.lang.Object
  继承者 javax.sound.midi.SoundbankResource
直接已知子类:
Instrument

public abstract class SoundbankResource
     
extends Object

SoundbankResource 表示存储在 Soundbank 中的任何音频资源。常见的音库资源包括:

  • 乐器。可通过多种方式指定乐器。但是,所有的音库都有定义乐器的某些机制。定义过程中,它们可能引用音库中存储的其他资源。每个乐器都有一个 Patch,它指定在 MIDI 消息中可通过其引用的 MIDI 程序和库。乐器信息可存储在 Instrument 对象中。
  • 音频采样。采样通常是一个采样音频波表,包含持续几分之一秒或最多几秒的短声音录音。这些音频采样可由 Synthesizer 使用来合成声音,以便作为对 MIDI 命令的响应,或者提取出来供应用程序使用。(此术语反映了乐师使用“采样”一词统指一系列连续的音频采样或帧,而不是单一的瞬间采样)。音频采样的数据类将是一个对象,它封装了音频采样数据本身和有关如何解释该数据的信息(音频数据的格式),例如 AudioInputStream
  • 嵌入式 sequence。音库可包含内置存储在一个数据对象(如 Sequence)中的乐曲数据。

使用波表合成或相关技巧合成的合成器在合成音符时回放采样中的音频,通常是在模仿原先录制的实际乐器时。但是,在 InstrumentsSoundbank 中的采样之间不必有一一对应关系。单个 Instrument 可使用多个 SoundbankResource(通常用于具有不相似的音高或亮度的音符)。同样,多个 Instrument 可使用同一个采样。


构造方法摘要
protected SoundbankResource(Soundbank soundBank, String name, Class<?> dataClass)
          根据给定的音库和波表索引构造一个新的 SoundbankResource
 
方法摘要
abstract  Object getData()
          获得存储在此 SoundbankResource 中的采样音频。
 Class<?> getDataClass()
          获得此采样所使用的表示其数据的类。
 String getName()
          获得资源的名称。
 Soundbank getSoundbank()
          获得包含此 SoundbankResource 的音库。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

SoundbankResource

protected SoundbankResource(Soundbank soundBank,
                            String name,
                            Class<?> dataClass)
根据给定的音库和波表索引构造一个新的 SoundbankResource。(设置 SoundbankResource 的名称、采样音频数据和乐器是子类的任务)。

参数:
soundBank - 包含此 SoundbankResource 的音库
name - 采样的名称
dataClass - 用于表示采样数据的类
另请参见:
getSoundbank(), getName(), getDataClass(), getData()
方法详细信息

getSoundbank

public Soundbank getSoundbank()
获得包含此 SoundbankResource 的音库。

返回:
存储此 SoundbankResource 的音库

getName

public String getName()
获得资源的名称。这通常应该是资源的描述性字符串。

返回:
乐器的名称

getDataClass

public Class<?> getDataClass()
获得此采样所使用的表示其数据的类。由 getData 返回的对象将是此类。如果此 SoundbankResource 对象不支持对其数据的直接访问,则返回 null

返回:
用于表示采样数据的类,如果数据不可访问,则返回 null

getData

public abstract Object getData()
获得存储在此 SoundbankResource 中的采样音频。返回的对象类型取决于具体类的实现,可使用 getDataClass 查询对象类型。

返回:
包含采样音频数据的对象
另请参见:
getDataClass()