Quando se realiza a análise de Fourier sobre um trecho musical contendo um acorde, estarão presentes no domínio da frequência todos os harmônicos de todas as notas do acorde, o que aumenta a complexidade do algoritmo de detecção das notas, e também a chance de notas serem confundidas devido à erros de ADC e erros numéricos.
Em uma partitura, todos os intervalos entre duas notas consecutivas parecem iguais,
e de fato nosso ouvido percebe todos os intervalos entre notas consecutivas como se tivessem
a mesma largura. Porém, à medida em que um par de notas consecutivo mais agudo é escolhido,
a diferença entre suas frequências aumenta, e a cada intervalo de uma oitava essa diferença
dobra. A tabela 2.1.3 dá uma noção dessa variação.
Portanto, devido à variação dessa diferença de frequência nos intervalos, não é indiferente para a implementação a escolha de qual intervalo musical vamos suportar na captura. Caso escolhêssemos um intervalo muito alto (agudo), seria necessário utilizar uma alta taxa de amostragem, pois a frequência fundamental da nota e de seus harmônicos seria muito alta.
Porém, caso escolhêssemos um intervalo muito baixo, o problema seria maior ainda. Como em um intervalo baixo a diferença entre notas consecutivas é muito pequena, algumas imprecisões devidas à conversão A/D e a erros numéricos nos algoritmos de DSP poderiam nos levar a detectar a nota errada. Em uma seção específica serão abordadas as características de entrada do equipamento (incluindo a tessitura) em mais detalhes.
O fato de capturarmos apenas uma voz significa que no stream de saída hávera apenas um canal MIDI. Todos os eventos NOTEON e NOTEOFF carregarão o mesmo número de canal, e não serão produzidos eventos CONTROLCHANGE.
A figura 2.1 ilustra, de forma simbólica, a sequência de eventos MIDI que ocorreriam ao se tocar um acorde de Dó Maior em semicolcheia.
Em primeiro lugar, todos os eventos NOTEON e NOTEOFF têm o mesmo canal (canal 1), o que indica a presença de somente uma voz no trecho. Além disso, existem 6 eventos MIDICLK entre os grupos NOTEON e NOTEOFF, indicando que a duração é de semicolcheia. O fato de um evento NOTEON seguir imediatamente o anterior (sem nenhum MIDICLK entre eles) é o que indica que as notas foram acionadas simultaneamente. De forma análoga, a inexistência de MIDICLK entre os eventos NOTEOFF indica que as notas foram liberadas também ao mesmo tempo.
João Paulo Pizani Flor 2010-07-12