midi |如何分辨不同的弦乐工具(小提琴,大提琴,贝斯)之间的区别

时间:2011-05-27 16:26:35

标签: flash actionscript-3 midi midi-instrument

我正在尝试使用flash midi文件进行可视化(使用外部midi-to-flash库)

有没有办法说出小提琴,中提琴,大提琴和小提琴之间的区别? midi文件中的低音提琴。我得到了仪器的这些值(忽略数字):

1长笛13

2 Oboe 15

3单簧管14

4 Bassoon 16

5法国号18

6小号17

7 Timpani 26

8 String Ensemble 1 3

9 String Ensemble 1 3

10 String Ensemble 1 3

11 String Ensemble 1 3

12 String Ensemble 1 3

13 poustic Grand Piano 5

14 poustic Grand Piano 5

15 Acoustic Grand Piano 5

16 poustic Grand Piano 5

如您所见,所有字符串都获得相同的“String Ensemble”值...

一种方法是询问每个音符是高(65>)还是低(50 <)等,并且大致决定乐器类型(对于特定音符)。但由于这些值是随机的而且不准确 - 不能正确分离它们(特别是因为不同的工具仍然具有共享的音符高度值)。

  1. 是否在midi档案中写过(大提琴,小提琴......)?

  2. 有没有办法承担它?

  3. 我有5首曲目。是否可以假设(例如)前两个是小提琴,第三个是大提琴等?或者他们都是混合的?

1 个答案:

答案 0 :(得分:5)

简而言之,没有。

您所看到的很简单General MIDI patches。但是,这些乐器的声音取决于产生声音的合成器,并且不是由MIDI定义的。完全可以选择与所示补丁完全不同的仪器。

话虽如此,41被定义为小提琴,42是中提琴,43是大提琴,44是低音提琴。但是,不要指望它们总是以这种方式使用。

至于第一/第二小提琴,这取决于该人决定如何制作MIDI文件,并且没有编程方式可以找到它。例如,如果乐器补丁是相同的,我希望该乐器的所有用法都在一个通道上。除非他们使用的软件由于某种原因决定将其拆分。 (例如,如果源分数已将其拆分。)

我相信一个MIDI文件有一些空间用于曲目名称等,但你不会在每个MIDI文件中看到它们,并且它们是自由格式的名称,所以它们不会以任何方式标记你可以以编程方式使用。

MIDI仅用于控制合成器,并不代表我们人类理解的乐谱。