gpt4 book ai didi

java - 加载仪器

转载 作者:行者123 更新时间:2023-11-30 04:13:47 25 4
gpt4 key购买 nike

我是JAVA MIDI新手,我遇到了一个问题。我想加载一个 MIDI 文件,然后设置几个标签,其中包含每个轨道所使用的每种乐器的名称例如,如果 MIDI 文件有 5 个轨道(每个轨道只有一种乐器),那么我将获得 5 个标签,每个标签都有每个轨道上使用的乐器的名称.

有什么方法可以查看 MIDI 文件中每个轨道使用的乐器(函数、方法...)?

最佳答案

一旦您隔离了编排中的每个音轨,就有两种不同的方法来确定应该演奏它的乐器。

其中一个是 ID 为 0x04 的 MIDI 元消息将与乐器名称作为字符串一起出现。看这个great page detailing the MIDI file format了解详情。

第二种方式是 MIDI 程序更改消息将出现在轨道的开头。假设 MIDI 文件设置为使用 GM(通用 MIDI)乐器,您可以将程序更改消息的数据关联到 GM instrument。 .

请注意,程序更改可以出现在 MIDI 轨道中的任何位置,并且音序器应该相应地处理它们。尽管您在野外看到的大多数 MIDI 文件不会在轨道中间使用程序更改,但请记住,这是标准允许的,并且可能会发生。

关于java - 加载仪器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18948723/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com