Privacy Policy Cookie Policy Terms and Conditions MIDI - Wikipedia

MIDI

维基百科,自由的百科全书

Image:03wiki-zn-frontpage-icon.gifMIDI正在翻译。欢迎您积极翻译与修订
目前已翻译4%,原文在英語維基百科
MIDI音樂鍵盤
MIDI音樂鍵盤

樂器數碼介面 Musical Instrument Digital Interface 簡稱MIDI,是一個工業標準的電子通訊協定,為電子樂器等演奏裝置 (如合成器) 定義各種音符或彈奏碼,容許電子樂器、電腦或其它的演奏配備彼此連接,調節和同步,得即時交換演奏資料。

MIDI 不傳送聲音,只傳送像是音調和音樂強度的數碼數據, 音量,抖音和 panning[1] 等參數的控制訊號,還有設定節奏的時鐘信號。在不同的電腦上,輸出的聲音也有所不同(亞德諾半導體公司(Analog Devices)编解碼器(Codec)的使用者和創新科技(Creative Technology)音效卡的使用者最為明顯)。

MIDI播映控制協議(MSC Protocol)是為MIDI而設的工業標準, 由MIDI設備生產商協會在1991年制定。它允許不同種類的媒體控制裝置在相互之間的通訊,借助计算机可以表现现场显示控制的功能与娱乐应用。与音乐 MIDI 相同,MSC 并不传输实际显示的媒体 - 它只是简单地传输有关多媒体性能的数字信号。

现在,几乎所有的音乐录音将 MIDI 作为一项关键开放技术来记录音乐。除此之外,MIDI 也用来控制包括录音设备的硬件,如舞台灯、效应踏板等高性能的设备。最近,MIDI 已经渗入移动电话领域。MIDI 用来播放支持 MIDI 移动电话的铃声。MIDI 还可为某些视频游戏提供背景音乐。

MIDI 标准是在1981年由工程师戴夫·史密斯的一篇论文向音频工程协会提出的,MIDI 规范 1.0 发布于1983年 8月。

MIDI使得计算机合成器声卡以及电子鼓乐器能互相控制、交换信息。虽然现在的计算机的声卡都是MIDI-兼容的,并能逼真地模拟乐器的声音,事實上聲卡的MIDI合成器在歷史上導致了半信半疑的聲音的質量損害了一臺作為MIDI樂器的通用電腦的形象。這是MIDI規格本身和根據聲卡聲音使用的質量無關導致。

MIDI幾乎直接地負責帶來"合成器牆壁" 現象1970年代-80年代 搖滾樂音樂會, 當音樂鍵盤執行者有時掩藏了在各種各樣的儀器庫。在MIDI後出現的許多合成器是被發布的19 英寸rack版本, 使執行者從唯一的音樂鍵盤控制多臺儀器。其它MIDI 的重要作用是硬體的發展和電腦為主的音樂排序器, 可能用作記錄, 編輯和重播表演。

Synchronization of MIDI sequences is made possible by the use of MIDI timecode, an implementation of the SMPTE time code standard using MIDI messages, and MIDI timecode has become the standard for digital music synchronization.

许多音乐文件格式都基于MIDI字节数据流。这些格式都非常紧凑,通常一个文件只需10kb就能够生成一段完整的音乐。

目录

[编辑] 簡介MIDI運作

[编辑] MIDI音軌訊息如何運作

当MIDI乐器演奏了一个音符的时候,它随之将音符转换成MIDI信息(MIDI messages)。一个典型的由键盘获取的音符的MIDI信息的过程包括:

  1. 用户以特定速率(此速率通常轉變成音符的音量,但也可以用合成器設定音符的音色)演奏中央C音符
  2. 用户改变按压键盘按键的力度-這個技術稱為鍵後觸感(aftertouch)
  3. 用户释放并停止演奏中央C音符

MIDI信息传输速率达到每秒31250位。其它的相关参数同时也被一同转换。例如,例如当变调轮有所变化的时候,这个信息也将在MIDI信息中有所体现。只要演奏者演奏音符,乐器就可以自主的完成这样的数据采集工作。

乐器所演奏的所有音符根据其音名和音程的不同都有特定的MIDI信息。例如,任何乐器演奏的中央C音符,它的MIDI信息都是一致的。这样使得它所生成的二进制信息也保持一致,这种规范化的声明方法是MIDI标准的核心部分。

所有的MIDI乐器都遵循MIDI规范说明,这样使得其生成的MIDI信息能够明确的指明具体的音符。借助这样的标准和协议,所有的MIDI乐器可以相互交换信息,同时也可以和具有MIDI识别或者MIDI软件的计算机进行信息交换。MIDI接口用于将当前MIDI乐器生成的MIDI信息转换成二进制代码,以让接收端的MIDI乐器或计算机识别处理。所有的MIDI乐器都有内置接口。另外,计算机的声卡通常也具有这种内置的MIDI接口。

[编辑] How MIDI Show Control works

When any cue is called by a user (typically a Stage Manager) and/or preprogrammed timeline in a show control software application, the show controller transmits one or more Real Time System Exclusive messages from its 'MIDI Out' port. A typical MSC message sequence is:

  1. the user just called a cue
  2. the cue is for lighting device 3
  3. the cue is number 45.8
  4. the cue is in cue list 7

For more details, please see MIDI Show Control. This section has been shortened because of the size of this article.

[编辑] The MIDI specification

[编辑] Electrical connections

MIDI 埠 與 電纜.
MIDI 埠 與 電纜.

MIDI 的標準是一種為樂器設計的通訊協定,就像其他通訊實體的標準一樣。

MIDI 連接介面是由一個單功 (半雙功) 數位 電流迴路 串列通訊 電子連接介面, 取樣頻率 在 每秒31,250 位元. 開始位元 ( 為 0 ), 8 個資料位元、 沒有 parity 位元、停止位元(為1)。

Only one end of the loop is referenced to ground, with the other end 'floating', to prevent ground loops from producing analog audio interference and hum. The current loop on the transmitter side drives the LED of an opto-coupler on the receiver side. This means the devices are in fact opto-isolated. The opto-coupler must be a high-speed type (the Sharp PC900 is very common). As most opto-couplers have asymmetrical switching times (delays for switching on are different from the delays when switching off), they distort the signal (the zero to one relations). If several MIDI devices are connected in series by daisy-chaining the MIDI-THRU to the next devices MIDI-IN, the signal gets more and more distorted (until receive errors happen because the pulses get too narrow).

MIDI connectors use standard 5-pin DIN connectors which at one time were a de facto European standard for consumer audio interconnection. Over time the simpler American RCA phono jack has replaced DIN in this application, leaving MIDI as the only place they are commonly encountered in modern equipment.

[编辑] Message format

Each one-way connection (called a port 樂埠) can transmit or receive standard musical messages, such as note-on, note-off, controllers (which include volume, pedal (腳踏板), modulation signals, etc.), pitch-bend, program change (音色變換), aftertouch (續壓值), channel pressure, and system-related messages. These signals are sent along with one of 16 channel (樂道) identifiers (識別碼). The channels are used to separate "voices (音色)" or "instruments (樂器)", somewhat like tracks in a multi-track mixer.

The ability to multiplex 16 "channels" onto a single wire makes it possible to control several instruments at once using a single MIDI connection. When a MIDI instrument (器材) is capable of producing several independent sounds simultaneously (a multitimbral instrument), MIDI channels are used to address these sections independently. (This should not be confused with "polyphonic"; the ability to play several notes simultaneously in the same "voice".)

The MIDI protocol supports no more than 128 different instruments. To overcome the limitation, the concept of a "bank" was introduced - a collection of 128 instruments. The bank can usually be changed using a controller message, enabling access to many more instruments than normally possible.

Note messages can represent any note from C,,,, (i.e. five octaves (5 個 8 度音) below middle C or 8.175 Hz in common Western musical tuning; designated as MIDI note 0) to g''''' (i.e. five octaves above the G above middle C or 12,557 Hz; designated as MIDI note 127) with precision down to the semitone.

Pitch-bend messages range in ±2 semitones (sometimes adjustable with Registered Parameter Numbers), with precision of 1/8192 semitone. (The human hearing system can not hear the difference between adjacent pure tones that differ by less than 1/20 semitone.)

Controllers are quite versatile; they can usually be controlled by a musician using knobs, sliders, and footswitches on the instrument. They can be used to change the tone, timbre, and volume of the sound, as well as many others.

Program change messages are used to change the instrument of a particular channel to another instrument. These messages are necessary because as there are only 16 channels, only 16 instruments can be selected at one time, and so instruments can be changed in the middle of a song.

Aftertouch messages (also known as poly pressure messages) are sent in some instruments to indicate pressure changes on the note while it is being played. Similarly, channel pressure changes the pressure for the entire instrument, not just one note. The channel pressure messages are more commonly implemented in most synthesizers, while the individual pressure sensors that aftertouch messages require are reserved mainly for expensive, high-end synthesizers.

Manufacturer's System exclusive messages (also known as Manufacturer SysEx, Manuf Sysx, etc.) are defined by the manufacturer of the sequencer/synthesizer and can be any length. These messages are commonly used to send non-MIDI data over a MIDI connection, such as a synthesizer instrument sample or settings and a sequencer's memory dump. Because they are defined by the device's manufacturer, they are mainly used for backup purposes and rarely (if ever) useful in another MIDI device.

Real Time System Exclusive messages include the significant MIDI Show Control extension which enables all types of entertainment equipment to easily communicate with each other through the process of show control.

System messages contain meta-information about other MIDI messages. A sequencer, for example, often sends MIDI clock messages during playback that correspond to the MIDI timecode, so the device receiving the messages (usually a synthesizer) will be able to keep time. Also, some devices will send Active Sense messages, used only to keep the connection between the sender and the receiver alive after all MIDI communication has ceased.

It should be noted that MIDI can be used to provide facilities for playing in nonstandard musical tunings. However, these features are not standardized across all instruments.

[编辑] IN, OUT, THRU

Most MIDI-capable instruments feature a MIDI-IN, MIDI-OUT, and occasionally a MIDI-THRU connection in the form of five-pin DIN plugs. In order to build a two-way physical connection between two devices, a pair of cables must be used. The MIDI-THRU jack simply echoes the signal entering the device at MIDI-IN. This makes it possible to control several devices from a single source.

Daisy chaining of multiple devices on a single port can be accomplished using the MIDI-THRU port. This technique is generally limited to three devices in a row due to latency. The latency is caused by the fact that MIDI-IN ports are optically isolated. Instead of making a physical connection to pass electrical signals, the electrical signals arriving at the MIDI-IN port turn an LED on and off, which is read by a photo sensor. This physical break in the flow of electricity prevents the forming of ground loops. It also introduces a small amount of latency. Generally after travelling through 3 devices in a daisy chain, this latency becomes noticeable.

The 1985 Atari ST was the first home computer to sport the original five-pin format — which made the ST a very popular platform for running MIDI sequencer software. Most PC soundcards from the late 1990's had the ability to terminate a MIDI connection (usually through a MIDI-IN/MIDI-OUT converter on the game port). The game port has been supplanted in the modern PC by USB devices, and so typically a PC owner will need to purchase a MIDI interface that attaches to the USB or FireWire port of their machine to use MIDI.

[编辑] General MIDI

在MIDI, 每種樂器 (佔一條頻道) 以0-127各個數字分別, using the Program Change message. However, the basic MIDI 1.0 specification did not specify what instrument sound (鋼琴, 大號, 等) corresponds to each number. This was intentional, as MIDI originated as a professional music protocol, and in that context it is typical for a performer to assemble a custom palette of instruments appropriate for their particular repertoire, rather than taking a least-common-denominator approach.

Eventually interest developed in adapting MIDI as a consumer format, and for computer multimedia applications. In this context, in order for MIDI file content to be portable, the instrument program numbers used must call up the same instrument sound on every player. General MIDI (GM) was an attempt by the MIDI Manufacturer's Association (MMA) to resolve this problem by standardizing an instrument program number map, so that for example Program Change 1 always results in a piano sound on all GM-compliant players. GM also specified the response to certain other MIDI messages in a more controlled manner than the MIDI 1.0 specification. The GM spec is maintained and published by the MIDI Manufacturer's Association (MMA).

From a musical perspective, GM has a mixed reputation, mainly because of small or large audible differences in corresponding instrument sounds across player implementations, the limited size of the instrument palette (128 種樂器), its least-common denominator character, and the inability to add customized instruments to suit the needs of the particular piece. Yet the GM instrument set is still included in most MIDI instruments, and from a standardization perspective GM has proven durable.

Later, 在日本的公司Association for Musical Electronic Industry (sic) (AMEI) developed General MIDI Level 2 (GM2), incorporating aspects of the Yamaha XG and Roland GS formats, extending the instrument palette, specifying more message responses in detail, and defining new messages for custom tuning scales and more. The GM2 specs are maintained and published by the MMA and AMEI.

Later still, GM2 became the basis of Scalable Polyphony MIDI (SP-MIDI), a MIDI variant for mobile applications where different players may have different numbers of musical voices. SP-MIDI is a component of the 3GPP mobile phone terminal multimedia architecture, starting from release 5.

GM, GM2, and SP-MIDI are also the basis for selecting player-provided instruments in several of the MMA/AMEI XMF file formats (XMF Type 0, Type 1, and Mobile XMF), which allow extending the instrument palette with custom instruments in the Downloadable Sound (DLS) formats, addressing another major GM shortcoming.

[编辑] Low bandwidth

MIDI messages are extremely compact, due to the low bandwidth of the connection, and the need for near real-time accuracy. Most messages consist of a status byte (channel number in the low 4 bits, and an opcode in the high 4 bits), followed by one or two data bytes. However, the serial nature of MIDI messages means that long strings of MIDI messages take an appreciable time to send, and many people can hear those delays, especially when dealing with dense musical information or when many channels are particularly active. "Running status" is a convention that allows the status byte to be omitted if it would be the same as that of the previous message, helping to mitigate bandwidth issues somewhat.

[编辑] MIDI 文件格式

MIDI 訊息 (包含時間資訊) 會被收集(collect)和儲存在一個電腦檔案系統裡,而這個檔案稱為一個 MIDI 文件,或者更正式地說,一個標準 MIDI 文件 (Standard MIDI File, 以下簡稱 SMF ).

The SMF specification was developed by, and is maintained by, the MIDI Manufacturers Association (MMA).

MIDI files are typically created using desktop/laptop computer-based sequencing software (編曲軟體) (or sometimes a hardware-based MIDI instrument or workstation) that organizes MIDI messages into one or more parallel "tracks (樂軌)" for independent recording and editing.

In most but not all sequencers (編曲機), each track is assigned to a specific MIDI channel and/or a specific General MIDI instrument patch.

Although most current MIDI sequencer software (編曲軟體) uses proprietary "session file" formats rather than SMF, almost all sequencers provide export or "Save As..." support for the SMF format.

An SMF consists of one header chunk and one or more track chunks. There are three SMF formats; the format is encoded in the file header.

Format 0 (格式 0) contains a single track and represents a single song performance.

Format 1 (格式 1) may contain any number of tracks, enabling preservation of the sequencer track structure, and also represents a single song performance.

Format 2 (格式 2) may have any number of tracks, each representing a separate song performance. Format 2 is not commonly supported by sequencers nor commonly found in the wild.

Large collections of SMFs can be found on the web, most commonly with the extension .mid.midi.

These files are most frequently authored with the assumption that they will be played on General MIDI players, but not always. Occasional unintended bad-sounding playback is the result.

MIDI-Karaoke (卡啦OK: 伴唱曲檔) (which uses the ".kar" file extension) files are an "unofficial" extension of MIDI files, used to add synchronized lyrics (同步式歌詞) to standard MIDI files. Most SMF players do not display these lyrics, however numerous .kar-specific players are available. These often display the lyrics

THIS WEB:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2006:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu