失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > MIDI通信协议(翻译)

MIDI通信协议(翻译)

时间:2019-01-18 15:21:39

相关推荐

MIDI通信协议(翻译)

MIDI通信协议

概述MIDI命令字节MIDI通道 MIDI数据字节

原文:/weixin_43572492/article/details/84966690

【修订记录】

1、0810,翻译文本本地化

2、0430,文本优化

概述

音乐数字接口(Musical Instrument Digital Interface,简称MIDI)是电脑CPU为8bit时期的产物,MIDI数据以字节为单位进行单项传输。(高端的MIDI芯片可能同时支持发送和接收)

MIDI数据以UART通信:波特率=31250,数据位=8b,开始位=1b,停止位=1b,无校验。

通常,MIDI数据包由两部分组成:①命令字节,②数据字节;但也有一些MIDI数据包不含数据字节。

表1 MIDI数据包的组成

命令字节的最高位为1,数据字节的最高位为0,可见,用二进制或十六进制来查看更直观。

命令字节是MIDI消息序列的第一个字节,后面跟着一定数量的MIDI数据字节。数据字节用于传送诸如音高、音量、音色、力度等信息。

例如,以第100级力度演奏C4的MIDI数据包是:0x90→0x3C→0x64。0x80是命令字节,它表示“演奏”。后跟有2个数据字节:前者是“C4”的常数,后者是“以第100级力度”的常数。

注意:A4=440(Hz)

MIDI命令字节

命令字节可按照高低位,拆分为表示命令的高4位表示某条通道的低4位。如前文所述的“演奏”命令,高4位是0b1001,表示“演奏”,低4位是0b0000,表示“在通道1上”,所以0x90的完整意思是“在通道1上演奏”,进而,上述数据包的完整意思是“在通道1上,以第100级力度演奏C4”。

表2 命令字节的分解

MIDI通道

要使用多条音轨发声时,往往要用到MIDI通道。即:将不同的声部交给不同的通道去处理和演奏。可以像理解电视频道一样去理解MIDI通道的概念。

表3 命令字节简表

MIDI数据字节

参见下列文章

MIDI数据字节:找到中央C(音名:C4)

MIDI数据字节:GM1旋律乐器音色库(带中文名称)

MIDI数据字节:GM1打击乐器音色库(带乐器中文名称)

如果觉得《MIDI通信协议(翻译)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。