MIDI

From OtomadWiki
这是一个文件格式介绍页面
library_books
本站收录音MAD相关的各种术语,欢迎您进行补充。

MIDI,全称Musical Instrument Digital Interface,是一种电脑、音频设备和电子乐器见通信的协议,也是一种记载乐谱的文件格式。目前MIDI协议被各DAW广泛使用。

历史

二十世纪80年代初,电子音乐业界尚无一个统一的音乐设备通信标准,各厂商的标准各不相同。

1981年,Dave Smith与Roland创始人Ikutaro Kakehashi和Oberheim Electronics创始人Tom Oberheim共同研讨设计出USI(Universal Synthesizer Interface)标准并提交至纽约AES协会。

1983年,在美国加州的NAMM Show上,经过数次修订的USI以MIDI的名号正式亮相。会场上展示了来自不同厂商的Prophet-600与Roland Jupiter-6成功地进行了连接。随后在1985年NAMM的会场上,MIDI 1.0协议正式发布。

2020年,NAMM Winter Show将会发布MIDI 2.0协议。

MIDI交流网站

MidiShow

MidiShow成立于2003年,是中国知名度最高的MIDI分享网站,至今网站已有超过十万MIDI投稿。目前MidiShow已重启论坛板块。

Online Sequencer

Online Sequencer 成立于 2013 年,是外网知名度较高的 MIDI 创作分享网站,截止于 2022 年 4 月 2 日已有 2567868 个 MIDI 被记录在此网站[1]。可以在此网站导入 MIDI 文件,还有一个论坛版块。(访问速度较慢)

在音MAD中的使用

在制作音MAD过程中,为了保证调音的音准正确,往往需要先寻找该曲目的MIDI或进行扒谱。对于刚入门的新人来说,如果以前没有音乐相关经历,那么参考MIDI能保证音准并在一定程度上能锻炼音感。

协议及文件格式简述

虽然各DAW都能很容易地导入导出MIDI,但简单了解MIDI协议与文件结构将会让你更明白MIDI的各种特性。以下部分内容参考了华北kingsky的文章。[2]

文件结构

MIDI文件是一种二进制文件,通常具有以下的结构:

  • 文件头:MThd,头部数据长度(通常为6),MIDI类型,音轨数目,时间类型+音轨数量
  • 音轨:
      • MTrk,音轨数据长度
      • 音轨事件:
        • 单个事件:Delta-time,事件类型,(其他参数...)
        • ...
        • 音轨结束事件:00 FF 2F 00

文件头

MIDI的文件头通常为以下格式:

4D 54 68 64 // "MTrk"
00 00 00 06 // 文件头数据长度,通常为6
00 01 // MIDI文件类型,有0、1、2三种
xx xx // MIDI时间的类型以及音轨数量。小于0x8000的使用TPQN(最常见),否则使用SMPTE。数值后十五位为MIDI音轨数量。

事件

无论是音符还是参数控制,MIDI中这些信息均以事件的形式储存。常见的事件有Key on、Key off、Program Change、Pitch Wheel Change等等。

  1. 来自官网底部介绍。
  2. https://tat.midishow.com/t/topic/4756