Especificação MIDI 1.0

Descritivo em Português elaborado por Miguel Ratton


INTRODUÇÃO

MIDI (Musical Instrument Digital Interface) é um padrão de transmissão serial de dados, que permite a troca de informações entre instrumentos e equipamentos de aplicação musical.

Os equipamentos que implementam funções MIDI, podem não conter todas as funções previstas pelo padrão, mas aquelas implementadas devem seguir estritamente o que está padronizado.


CONVENÇÕES

A representação de números neste texto segue a seguinte convenção:

- Números representados na base hexadecimal são sempre seguidos de um H, como 34H.
- Números representados na base binária são sempre representados precedidos de um $, como $10001011.
- Os demais números estão na base decimal.

Os termos técnicos estão traduzidos, sempre que possível, mas os termos originais, em inglês, foram preservados e são citados, de forma a facilitar a leitura de textos estrangeiros, muito comuns nesta área.

O termo equipamento neste texto significa qualquer dispositivo eletrônico de aplicações musicais: instrumentos musicais, módulos de efeitos sonoros, baterias eletrônicas, seqüenciadores, equipamentos de áudio, etc.


CARACTERÍSTICAS DE HARDWARE

Os equipamentos que implementam o interfaceamento MIDI devem possuir um transmissor ou um receptor, ou ambos, que execute a transmissão/recepção de mensagens no padrão MIDI. Tanto transmissão quanto recepção devem operar à uma taxa de 31.250 bauds (+/- 1%), em modo assíncrono, com um bit de início (start bit), 8 bits de dados(D0 a D7) e um bit de fim (stop bit), perfazendo um total de 10 bits por byte serial, e ocupando um período de 320 micro-segundos.

O hardware do transmissor é composto de um UART (Universal Asynchronous Receiver/Transmitter) para transmissão dos dados seriais, e um acionador (buffer) de saída, capaz de drenar uma corrente de até‚ 5 mA. A saída deve possuir resistores de proteção na eventualidade de curto-circuito entre os terminais. O conector de saída deve ser aterrado ao equipamento.

O hardware do receptor é composto de um acoplador óptico e um UART para recepção dos dados seriais. O acoplador óptico deve ser capaz de chavear com uma corrente menor ou igual a 5 mA no LED, e os tempos de subida e de descida não devem ultrapassar 2 micro-segundos, sendo recomendados os acopladores ópticos PC-900 (Sharp) e 6N138 (HP). O conector de entrada não deve ser aterrado ao equipamento.

Os conectores do equipamento devem ser do tipo DIN de 5 pinos (fêmea)dispostos em 180 graus, e montados em painel. Os conectores devem ser identificados como MIDI IN (entrada), MIDI OUT (saída) e, opcionalmente, MIDI THRU (repetição da entrada). São recomendados conectores Switchcraft 57 GB5F.

A saída opcional MIDI THRU deve prover uma cópia direta dos dados que entram pelo conector MIDI IN, de forma a permitir a ligação de mais de dois equipamentos em cadeia. No caso de cadeias muito longas (mais de três equipamentos), o padrão recomenda a utilização de acopladores ópticos mais rápidos, de forma a evitar que o acúmulo de atrasos de subida e descida no acoplador afetem a largura dos pulsos de sinal. O conector MIDI THRU deve ser aterrado ao equipamento.

O cabo de interligação de equipamentos deve possuir dois condutores e mais a blindagem, e não deve ter um comprimento o maior do que 15 metros(50 p‚s). Os plugs devem ser do tipo DIN (macho) de 5 pinos em 180 graus, com a blindagem conectada ao pino 2 em ambas as extremidades. É recomendado o plug Switchcraft 05 GM5M. O diagrama abaixo apresenta uma sugestão para os circuitos de saída e de entrada, conforme estabelece o padrão.




FORMATAÇÃO DOS DADOS

A comunicação pelo padrão MIDI utiliza, basicamente, mensagens do tipo multi-bytes contendo um Byte de Status (Status Byte) seguido de um ou dois Bytes de Dados (Data Bytes). As exceções à essa regra são as mensagens de Tempo Real e as de Sistema Exclusivo. A seguir, é apresentada a classificação das mensagens MIDI.

As mensagens MIDI são classificadas em duas categorias principais, que são as Mensagens de Canal (Channel Messages) e as Mensagens de Sistema(System Messages).


TIPOS DE BYTES

Existem dois tipos de bytes nas mensagens MIDI: os Bytes de Status (Status Bytes) e os Bytes de Dados (Data Bytes).



MODOS DE OPERAÇÃO

Os instrumentos musicais eletrônicos (sintetizadores, samplers, órgãos eletrônicos, etc) possuem dispositivos internos (hardware ou software) responsáveis pela geração das notas (sons). Esses dispositivos, chamados de vozes (voices), são em número limitado (em geral 8, 16 ou 32), e determinam a polifonia do instrumento.

Quando uma tecla é pressionada no teclado do instrumento, o processador interno do mesmo verifica se há alguma voz disponível, isto é, se o instrumento já está tocando o número máximo de notas possível. Se não está ele aloca uma voz disponível à nota correspondente à Nota Ativada. À medida que as teclas são soltas, as vozes vão ficando livres (disponíveis) para serem ocupadas por novas notas. Caso todas as vozes estejam ocupadas, o processador decide, através de um algoritmo predeterminado, como tocar a nota nova. Em geral a voz que está tocando a nota mais antiga passa a ser ocupada pela nova nota, mas pode-se encontrar instrumentos que adotem procedimento diferente.

Dentro do padrão definido na MIDI Specification 1.0, há quatro modos possíveis de se operar as vozes de um instrumento, conforme mostram as a seguir.

Tabela 8 - Modos de Operação (recepção)
modos de recepção para um instrumento ajustado para receber pelo Canal Básico N.
MODO OPERAÇÃO
Omni On / PolyO instrumento processa todas as Mensagens de Voz, independente dos Canais de Voz em que elas estão sendo transmitidas, e responde a elas polifonicamente.
Omni On / MonoO instrumento processa todas as Mensagens de Voz, independente dos Canais de Voz em que elas estão sendo transmitidas, e responde a elas monofonicamente.
Omni Off / PolyO instrumento só processa as Mensagens de Voz que estão sendo enviadas no Canal de Voz "N", e responde a elas polifonicamente.
Omni Off / MonoO instrumento só processa as Mensagens de Voz que estão sendo enviadas nos Canais de Voz "N" a "N+M-1", e responde a elas monofonicamente, alocando-as à s vozes 1 a "M", respectivamente. O número de vozes "M" é definido no terceiro byte da Mensagem de Modo.

Tabela 9 - Modos de Operação (transmissão)
modos de transmissão para um instrumento sintonizado no Canal Básico N.
MODO OPERAÇÃO
Omni On / PolyO instrumento transmite todas as Mensagens de Voz através do Canal de Voz "N"
Omni On / MonoO instrumento transmite todas as Mensagens de Voz, para uma voz, através do Canal de Voz "N"
Omni Off / PolyO instrumento transmite todas as Mensagens de Voz, para todas as vozes, através do Canal de Voz "N".
Omni Off / MonoO instrumento transmite as Mensagens de Voz das vozes 1 a "M" através dos Canais de Voz "N" a "N+M-1", respectivamente (uma voz por canal).


Um instrumento só pode operar em um único Modo de cada vez, e é recomendado que tanto transmissor quanto receptor(es) estejam operando no mesmo Modo. Caso um instrumento não possa operar no Modo requisitado, ele deve ignorar o comando de mudança de Modo de Operação, ou então utilizar um outro Modo alternativo (normalmente Modo 1).

As Mensagens de Modo só devem ser reconhecidas pelo receptor quando enviadas através do Canal Básico no qual ele está sintonizado, independentemente do seu Modo de Operação corrente. As Mensagens de Voz devem ser recebidas através dos Canais de Voz, conforme estabelecem as Tabelas 8 e 9, dependendo do Modo selecionado. O padrão permite, ainda, que um instrumento seja sintonizado em um ou mais Canais Básicos, por default ou por ação do usuário. Nesse caso, o instrumento se comporta como se fossem vários instrumentos independentes.


CONDIÇÕES INICIAIS

O padrão determina que o instrumento, ao ser ligado, adote as condições iniciais (default) de: Modo 1 de operação, recepção desabilitada de todas as Mensagens de Voz, exceto de Nota Ativada/Nota Desativada (Note On/Note Off) e supressão de quaisquer transmissões espúrias indefinidas.


OBSERVAÇÃO IMPORTANTE:

À época em que foi escrita MIDI Specification 1.0, o Modo 4 era esperado para transmissão/recepção de informações monofônicas através dos canais diferentes de MIDI, em um mesmo instrumento.

Posteriormente, os instrumentos multitimbrais passaram a operar de uma forma não definida em qualquer dos quatro modos, pois podem receber, simultaneamente, mensagens em vários canais diferentes com informações para execução polifônica em cada um desses canais, que são alocadas a uma ou mais vozes por canal. Esse quinto modo tem sido referenciado por muitos fabricantes como Modo Multi.



Tabela 10 - Códigos dos Fabricantes
atualizada até nov/87
CódigoFabricanteCódigoFabricante
00-00-14
01H
02H
03H
04H
05H
06H
07H
08H
0AH
0BH
0CH
0DH
0EH
0FH
10H
11H
12H
14H
15H
16H
17H
18H
19H
1AH
1BH
1CH
1DH
1FH
Perfect Fretwork
Sequential Circuits
IDP
Voyetra/OctavePlateau
Moog
Passport Designs
Lexicon
Kurzwei
Fender
AKG Acoustics
Voyce Music
Waveframe Corp.
ADA
Garfield Electronics
Ensoniq
Oberheim
Apple Computer
Grey Matter Response
Palm Tree Instr.
JL Cooper
Lowrey
Adams-Smith
E-Mu Systems
Harmony Systems
ART
Baldwin
Eventide
Inventronics
Clarity
21H
22H
23H
24H
25H
26H
27H
28H
29H
2AH
2BH
2CH
2FH
30H
40H
41H
42H
43H
44H
46H
47H
48H
49H
7DH
7EH
7FH



SIEL
Synthaxe
Stepp _
Hohner
Twister
Solton
Jellinghaus MS
Southworth Music
PPG
JEN
SSL
Audio Veritrieb
Elka
Dynacord
Kawai
Roland
Korg
Yamaha
Casio
Kamyia Studio
Akai
Japan Victor
Mesosha
Uso Não Comercial
Não Tempo-Real
Tempo-Real





Este artigo foi publicado no music-center.com.br em 1996


Copyright ©1996-2005 Miguel Ratton (www.music-center.com.br)