Embora grande parte das vezes estes eventos sejam acionados por um instrumento musical (o hardware), é possível também criar tais eventos via software. Além disso, este conjunto de eventos podem ser armazenados em arquivo, permitindo a posterior edição e execução do mesmo.
Um programa que possui a capacidade de criar, editar e executar estes arquivos é chamado de sequencer.
Um arquivo MIDI padrão contém trilhas (tracks), cada uma delas com uma lista de eventos MIDI. O sequencer pode enviar as mensagens MIDI para algum outro dispositivo como um sintetizador, por exemplo. O sintetizador lê um arquivo de banco de sons (soundbank) contendo instruções para emular os sons de certos instrumentos musicais e executa tais instrumentos de acordo com o evento MIDI recebido do sequencer.
A imagem abaixo exemplifica como é esse esquema:
Como visto, as mensagens MIDI podem ser enviadas para um sintetizador externo por meio das portas de saída. Da mesma forma, um dispositivo externo (um teclado musical) pode enviar mensagens MIDI (via portas de entrada) diretamente para um sintetizador ou para que um sequencer armazene para futura execução.
Por hoje é só. Em breve mais detalhes. Estamos apenas na introdução do basicão.
Um comentário:
Como se consegue capturar notas, altura, velocidade e características da de um arquivo MIDI para posteriormente grava-los em outro canto, como em um XML?
Postar um comentário