public interface Soundbank
一个
Soundbank
包含一组可以加载到Synthesizer
中的Instruments
。请注意,Java Sound中的Soundbank
与MIDI bank不同。MIDI允许最多16383个bank,每个bank包含最多128个乐器(有时也称为程序、补丁或音色)。然而,一个Soundbank
可以包含16383乘以128个乐器,因为Soundbank
中的乐器通过MIDI程序号和MIDI bank号(通过Patch
对象)进行索引。因此,Soundbank
可以被视为一组MIDI bank。
Soundbank
包括返回包含声音库名称、制造商、版本号和描述的String
对象的方法。这些字符串的确切内容和格式由实现者决定。
不同的合成器使用各种合成技术。常见的一种是波表合成,在波表合成中,播放录制声音的片段,通常带有循环和音高变化。可下载声音(DLS)格式使用录制声音的片段,Headspace Engine也是如此。基于波表合成(或其他存储声音录音的用途)的Soundbanks
和Instruments
通常应实现getResources()
方法,以提供对这些录制片段的访问。但这是可选的;如果合成技术不使用采样声音(FM合成和物理建模是这类技术的例子),或者如果使用但实现者选择不使采样可访问,则该方法可以返回零长度数组。
- 参见:
-
Method Summary
Modifier and TypeMethodDescription获取适合显示的声音库的文本描述。getInstrument
(Patch patch) 从给定的Patch
获取一个Instrument
。获取此声音库中包含的乐器列表。getName()
获取声音库的名称。提取声音库中包含的非乐器资源列表。获取提供声音库的公司的名称。获取声音库的版本字符串。
-
Method Details
-
getName
String getName()获取声音库的名称。- 返回:
-
一个命名声音库的
String
-
getVersion
String getVersion()获取声音库的版本字符串。- 返回:
-
一个指示声音库版本的
String
-
getVendor
String getVendor()获取提供声音库的公司的名称。- 返回:
- 供应商字符串
-
getDescription
String getDescription()获取适合显示的声音库的文本描述。- 返回:
-
描述声音库的
String
-
getResources
SoundbankResource[] getResources()提取声音库中包含的非乐器资源列表。- 返回:
- 一个资源数组,不包括乐器。如果声音库不包含资源(除乐器外),则返回长度为0的数组。
-
getInstruments
Instrument[] getInstruments()获取此声音库中包含的乐器列表。- 返回:
-
此
SoundBank
中的Instruments
数组。如果声音库不包含乐器,则返回长度为0的数组。 - 参见:
-
getInstrument
从给定的Patch
获取一个Instrument
。- 参数:
-
patch
- 指定bank索引和程序更改号的Patch
对象 - 返回:
-
请求的乐器,如果声音库不包含该乐器则返回
null
- 参见:
-