请解析下面部分MIDI文件: 4D 54 68 64 00 00 00 06 00 01 00 01 00 78 4D 54 72 6B 00 00 00 41 00 FF 03 12 46 6F 67 67 79 20 4D 6F 75 6E 74 61 69 6E 20 54 6F 70 00 FF 01 1D 6E 61 6D 65 3A 43 6F 75 6E 74 72 79 2C 43 6F 75 6E 74 72 79 2C CF E7 B4 E5 C0 D6 2C 0A 00 FF 58 04 04 02 18 08 00 FF 59 02 03 00 00 FF 51 03 07 A1 20 00 FF 21 01 00 FF 2F 00 4D 54 72 6B 00 00 02 AA 00 FF 21 01 00 00 FF 03 0C 42 61 73 73 20 20 20 20 28 42 42 29 00 CA 23 00 BA 0A 40 83 60 5D 00 00 5B 00 00 9A 21 50 81 18 21 00 1C 21 52 32 21 00 0A 28 57 29 28 00 13 28 4B 5A 28 00 1E 28 43 0D 28
时间: 2023-06-10 19:05:39 浏览: 108
这是一个标准 MIDI 文件的前几个字节,包含了文件头和和一些元数据,具体如下:
- 4D 54 68 64 00 00 00 06 00 01 00 01 00 78: 文件头,标识为 "MThd",后面的 00 00 00 06 表示该 MIDI 文件有 6 个字节。00 01 表示 MIDI 格式为 1,即多轨 MIDI 文件。00 01 表示该 MIDI 文件中的轨道数为 1。
- 4D 54 72 6B 00 00 00 41: 轨道头,标识为 "MTrk",后面的 00 00 00 41 表示该轨道有 65 个字节。后面的字节是轨道的事件,具体内容是:
- FF 03 12 46 6F 67 67 79 20 4D 6F 75 6E 74 61 69 6E 20 54 6F 70: 序列号字符串,表示该 MIDI 文件序列号为 "Foggy Mountain Top"。
- FF 01 1D 6E 61 6D 65 3A 43 6F 75 6E 74 72 79 2C 43 6F 75 6E 74 72 79 2C CF E7 B4 E5 C0 D6 2C 0A: 元事件,具体为 "name:Country,Country,持续时间,开始",其中 "CF E7 B4 E5 C0 D6" 是编码后的 "持续时间,开始" 。
- 00 FF 58 04 04 02 18 08: 节拍事件,具体为 "节拍标志,拍号,每个拍号的时值,n,32分音符的每个时值上的MIDI时钟数"。
- 00 FF 59 02 03 00: 调号事件,具体为 "调号标志,升降号,记号数"。
- 00 FF 51 03 07 A1 20: 时间事件,具体为 "时间码类型,MIDI时钟每个刻度的时间,MIDI刻度每拍的刻度数",其中 "07 A1 20" 是编码后的 "MIDI时钟每个刻度的时间,MIDI刻度每拍的刻度数"。
- 00 FF 21 01 00: 元事件,具体为 "MIDI端口,端口"。
- 00 FF 2F 00: 结束事件,表示该轨道已经结束。
- 4D 54 72 6B 00 00 02 AA: 后续还有一个轨道,并且该轨道有 682 个字节。
- 00 FF 21 01 00 00 FF 03 0C 42 61 73 73 20 20 20 20 28 42 42 29 00: 元事件,具体为 "MIDI端口,端口 | 序列号字符串 | 元数据字符串",其中 "42 61 73 73 20 20 20 20 28 42 42 29" 是编码后的 "Bass (BB)"。
- CA 23 00 BA 0A 40 83 60 5D 00 00 5B 00 00 9A 21 50 81 18 21 00 1C 21 52 32 21 00 0A 28 57 29 28 00 13 28 4B 5A 28 00 1E 28 43 0D 28: 节拍序列,包含了一些 MIDIEVENT,每个 MIDIEVENT 的具体含义需要根据前面的元数据来解析。
阅读全文