首页资讯商务会员钢材特钢不锈炉料铁矿废钢煤焦铁合金有色化工水泥财经指数人才会展钢厂海外研究统计数据手机期货论坛百科搜索导航短信English
登录 注册

按字母顺序浏览 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

热门关键字: 螺纹钢 铁矿石 电炉 炼钢 合金钢 转炉 结构钢
钢铁百科 - 钢之家

MIDI发表评论(0)编辑词条

乐器数字接口(MusicalInstrumentDigitalInterface,MIDI)是20世纪80年代初为解决电声乐器之间的通信问题而提出的。MIDI传输的不是声音信号,而是音符、控制参数等指令,它指示MIDI设备要做什么,怎么做,如演奏哪个音符、多大音量等。它们被统一表示成MIDI消息(MIDIMessage)。传输时采用异步串行通信,标准通信波特率为31.25×(1±0.01)KBaud。

(图)MIDIMIDI
目录

MIDI-基本特征 编辑本段回目录

MIDI仅仅是一个通信标准,它是由电子乐器制造商们建立起来的,用以确定电脑音乐程序、合成器和其他电子音响的设备互相交换信息与控制信号的方法。MIDI系统实际就是一个作曲、配器、电子模拟的演奏系统。从一个MIDI设备转送到另一个MIDI设备上去的数据就是MIDI信w息。MIDI数据不是数字的音频波形,而是音乐代码或称电子乐谱。电视晚会的音乐编导可以用MIDI功能辅助音乐创作,或按MI-DI标准生成音乐数据传播媒介,或直接进行乐曲演奏。

MIDI-发展史 编辑本段回目录

(图)MIDI代码MIDI代码


MIDI不是首先出现在计算机里面的,它是由电子乐器生产厂家为了不同型号的电子乐器的“交流”而产生的,由于它采用的是数字化技术,当然自然而然的很容易的与计算机挂上了关系。所以要讲MIDI乐器的接口,有三种,MIDIOUT、MIDIIN、MIDITHRU。这些可以在MIDI乐器或带有MIDI的电子琴(现在的很多电子琴上都有MIDI接口)上找到的。MIDIOUT是将乐器中的数据(MIDI消息)向外发送;MIDIIN就是接收数据啦;至于MIDITHRU,是将收到的数据再传给另一个MIDI乐器或设备,可以说是若干个乐器连接的接口。可以这样说,MIDI所描述的是将MIDI乐器弹奏出的音变成01010一样的数据输出,也可以将计算机中的软件将要表示的音变成01010的二进制数据通过声卡输出,或者接收一些01010的数据进行处理。

一个标准的MIDI有16个通道,GM标准里的第10通道是专为打击乐设定的。

早期的MIDI设备除了都能接受MIDI信号之外没有统一的标准,尤其是在音色排列的方式上更是“随心所欲”的。也就是说在这台琴上制作完成的音乐拿到另一台不同型号的琴上播放时会变得面目全非,小提琴可能会变成小号,长笛可能会变成吉他,钢琴可能会变成大鼓……这对于专业音乐人士的工作并不会产生太大的影响,毕竟他们制作一次灌成唱片也就完事儿了,但是对于音乐爱好者之间的交流,尤其是多媒体的发展却极为不利。

于是著名的日本ROLAND公司于1990年制定出它称之为GS的标准。GS标准是在ROLAND的早期产品MT-32和CM-32/64的基础之上,规定了MIDI设备的最大同时发音数不得少于24个、鼓镲等打击乐器作为一组单独排列、128种乐器音色有统一的排列方式等。在这几项规定中,最重要的就是这128种音色的统一排列方式。有了这种排列方式,只要是在支持GS标准的设备上制作的音乐,拿到任何一台支持同样标准的设备上都能正常播放。

GS标准的制定本来是一件天大的好事,它使得全世界的电子乐器有了一个“全方位接触”的机会。可是,也许是由于这个标准真的是过于复杂,更可能是由于众多的MIDI设备制造商不愿意形成ROLAND的独霸世界标准的局面,总之最后世界各国的MIDI设备制造商并没有全盘接受这个标准,而是将之稍作改变,泡制出了一个GM标准。

GM标准的全称应该是“通用MIDI标准系统第一级”(GeneralMIDIsystemLevel1),这个标准制定于1991年,在GS标准基础上,主要规定了音色排列、同时发音数和鼓组的键位,而把GS标准中重要的音色编辑和音色选择部分去掉了。GM的音色排列方式基本上沿袭了GS标准,只是在名称上进行了无关痛痒的修改,如把GS的Piano1改名为AcousticGrandPiano等。

虽然GM标准不如GS那样功能强大,但是它毕竟是世界第一种通用的MIDI乐器排列的标准,而且正因为它将ROLANDGS标准作了简化,也使得更多的MIDI设备厂商可以制造符合此标准的MIDI设备。所以GM标准刚一制定,就得到了MIDI厂商,尤其是多媒体设备厂商的热烈响应。此后,各大MIDI厂商的设备纷纷被敲上GM的标制,MIDI设备之间实现了比以往更深层次的交流,为多媒体时代的真正到来作好了准备。对于现在的MIDI设备,GM标准是最基本的了。

另一个MIDI巨头YAMAHA也不甘示弱,他当然不甘于这样一个要求很低的标准,所以YAMAHA于1994年9月提出了自己的音源标准--XG。XG同样在兼容GM的基础上做了大幅度的扩展,如加入了“音色编辑”的功能,使得作曲家可以在MIDI乐曲中实时地改变乐器的音色;还加入了“音色选择”功能,在每一个XG音色上可以叠加若干种音色。

八十年代初,电脑音乐迎来了第一个真正的繁荣时期,同时也迎来了一个难以解决的问题,那就是各种电子乐器之间的通讯问题:各生产厂家都按照自己的规格生产电子乐器,当单独使用某一厂家的产品时,您还不会遇到什么问题,可是当您同时使用几家公司的设备构成一个电脑音乐系统的时候,麻烦就来了,怎么能使一台美国E-MU的音源发出您在日本ROLAND键盘上弹奏的一个标准A呢?
  
为了解决电子乐器的通讯问题,1982年,国际乐器制造者协会的十几家厂商(其中主要是美国和日本的厂商)会聚一堂,各抒己见。会议通过了美国SequentialCircuits公司的大卫.史密斯提出的“通用合成器接口”的方案,并改名为“音乐设备数字接口”,即“MusicalInstrumentDigitalInterface”缩写为“MIDI”,公布于世。1983年,MIDI协议1.0版正式制定出来。此后,所有的商业用电子乐器的背后都出现了几个五孔的MIDI插座,乐器之间不再存在“语言障碍”,它们同装上MIDI接口的电脑一起,构成了一个更加繁荣昌盛的电脑音乐大家庭。
  
实际上,MIDI本身只是MusicalInstrumentDigitalInterface的缩写,意思是音乐设备数字接口。这种接口技术的作用就是使电子乐器与电子乐器,电子乐器与电脑之间通过一种通用的通讯协议进行通讯,这种协议自然就是MIDI协议了。
  
对于搞计算机的人来说,把MIDI理解成一种局域网,网络的各个部分通过专用的串行电缆(MIDI线)连接,并以31.25KBPS的速度传送着数字音乐信息。
  
MIDI标准制定以后,开始只是在专业的电脑音乐圈儿里受到重视,但是随着电子技术的不断发展,尤其是近几年多媒体技术的突飞猛进,MIDI作为多媒的一个重要组成部分,被炒得沸沸扬扬,几乎达到了妇孺皆知的地步。而大家也已经把这种接口技术当作了电脑音乐的代名词,常有“做MIDI”,“玩儿MIDI”的说法,使一些正统的“电脑音乐人”觉得莫名其妙,啼笑皆非。
  
因此,将MIDI划分为“狭义MIDI”和“广义MIDI”两种概念,狭义MIDI就是上面所说的音乐设备数字接口,而广义MIDI则是大家已经约定俗成的整个电脑音乐的统称,这样即不会造成概念上的进一步混乱,也不会使得MIDI一词失去其本质的含义。
  
1985年11月,国际乐器制造者协会公布了《MIDI1.0版的细节规定》,重新定义了一些控制器号码。此外,为保证MIDI的健康发展,还专门成立了“MIDI厂商协会”和“日本MIDI标准委员会”等组织,MIDI标准从成长阶段步入了成熟阶段。
  
MIDI标准的成熟使各电子乐器生产厂商生产出各种电子乐器,有键盘式的(合成器、主控键盘)、弦控式的(MIDI吉他)、敲击式的(鼓机)甚至还有吹奏式的(呼吸控制器),除此之外,还有五花八门的各种音源模块(就是把没有键盘的电子合成器)供人选购。 MIDI-文件结构    
 

MIDI文件结构编辑本段回目录


标准MIDI文件结构
MIDI文件包含一个或更多MIDI块与每个事件的时间信息。它支持歌曲、序列和音轨结构,拍子和拍号信息。音轨名字和其他描述信息也可以与MIDI信息一同存储。这个格式支持多条音轨、多个序列。这种格式可以允许用户从一个音轨移向另一个音轨。
  
用于MIDI文件的8位二进制的数据块可以在一个高效率的传输的MIDI二进制文件中,分解可以存储为7位数据,或被转换成其他的ASCII或者被翻译为一个文本文件。
  
1、MIDI文件结构序列文件块组成
每个块4个字节,有32位长度。MIDI文件结构数据通过在文件的数据叉,或者在剪贴板上进行传输。(在Macintosh这个格式的文件类型是“Midi”)块结构允许被忽略跳过。
  
MIDI文件结构定义了块的二种类型:文件头块和音轨块。文件头块提供关于整个MIDI文件的最小数量信息。音轨块包含的MIDI数据序列也许包含16条MIDI通道的信息。使用多个音轨块,就可以用多条音轨、多个MIDI序列、谱式和歌曲。MIDI文件总是以文件头块开始,紧随其后的是一个或多个音轨块。
MThd
MTrk
MTrk…

MIDI文件结构音轨数据格式(MTrk块类型)
MTrk块类型是存放实际歌曲数据的地方。它是MIDI事件(和非MIDI事件)的序列。在MTrk块的有些数字是以叫可变长的数量的形式进行存储的。这些数字首先每个字节用7位,最高位不是有效位。除最后一位之外的所有字节,最高位设为1;最后一个字节最高位设为0。如果数字在0和127之间,它能正确地表示为一个字节。这作为可变长的数量代表的数字的有些例子:
数字(十六进制)变长表示法(十六进制)
0000000000
0000004040
0000007F7F
000000808100
00002000C000
00003FFFFF7F
0000400081800000
100000C08000
001FFFFFFFFF7F
0020000081808000
08000000C0808000
0FFFFFFFFFFFFF7F
  
允许的大数是0FFFFFFF,这是以可变长表示法表示的32位的最大数字。理论上,大数是有可能的,但是实际中不必要。
  
MIDI文件结构MTrk块的句法:“经过的时间”被作为一个可变长的量存储。它代表以下事件之前所要经过的时间。如果在音轨的第一个事件发生在音轨的开始,或者,如果二个事件同时发生,使用Δt的零。Δt总是存在。Δt的具体时间单位,在文件头块上指定。<元event>是所有MIDI通道消息。使用连续状态时:状态位也许在第一个事件以后被省去。在文件的第一个事件必须指定状态。Δt没有被认为是事件:它是格式的整体部分。
  
MIDI文件结构<元event>指定非MIDI信息
FF所有阶事件从FF开始,然后有事件类型(总是少于128),然后有作为一个可变长的数量被存放的数据的长度,然后是数据。如果没有数据,长度是0。
  
使用指定MIDI系统专属消息,或者作为“escape”指定将被传送的任何任意字节。一些合成器制造者指定他们的系统专属消息将被作为小包传送。每个小包作为一则整个语法系统专属消息的部分,但是他们被传送的时间是很重要的。这样的例子是在CZ补丁传送的字节或者FB-01's“系统独家新闻”中,可以传送部分数据。为了能处理像这样的情况,两个形式的被提供了:
F0<长度><数据>
F7<长度><数据>
  
在两种情况下,长度被作为一个可变长的数量存放,等于跟随它的字节数,不包括本身或消息类型(F0或F7),但是包括跟着的所有字节,包括所有在意欲被传送的信息末端的F7。绝大多数的系统专属消息将使用F0格式。例如,被传送的消息F043120007F7在MIDI文件将被存储为F00543120007F7。所有信息要求在末端包含F7,以便MIDI文件的处理程序知道它读了全部的信息。对于特别的情况,当一则唯一的系统专属信息被分开成多段,分到不同的时间传送时,小包除了最后一个都以F7结束。不能在多个小包之间传递任何其他的系统专属信息。例如:
假设字节431200将首先被传送到F0,紧随着200个时间单位的延迟,再紧随着由字节431200431200组成的数据,再紧随着100各时间单位的延迟,再紧随着由字节431200F7组成的数据,这在MIDI文件是这样的:
F0034312008148
200个单位的Δt
8148F70643120043120064
100个单位的Δt
64F704431200F7
  
F7事件也许也使用作为“escape”传送任何字节,包括实时字节、歌曲名或者MIDI时间代码,在这个规格通常没有被规定。

2、MIDI文件结构文件头块
在文件初的文件头块指定在文件中关于数据的一些基本信息。数据部分包含三个16位的字段,首先被存放高位字节(当然)。这里有完整的块的句法:
<块类型><块长度><格式><音轨数><分区>
 
块类型是四个ASCII字符“MThd”;随后的长度是一个6(高位优先的32位数字表示法)。格式,是指定文件的整体组织。

格式的只有三种值,指定三种格式:
0文件包含一条唯一的多通道音轨
1文件包含一个或更多同时的音轨
2文件包含一个或更多独立的音轨,相继进行播放
音轨数,是

→如果您认为本词条还有待完善,请 编辑词条

词条内容仅供参考,如果您需要解决具体问题
(尤其在法律、医学等领域),建议您咨询相关领域专业人士。
0

标签:

收藏到: Favorites  

同义词: 暂无同义词

关于本词条的评论 (共0条)发表评论>>

您希望联系哪位客服?(单击选择)