Sonata – Um sistema de rearmonização de partituras

Sonata foi o projeto desenvolvido durante meu trabalho de conclusão de curso para obtenção do grau de Bacharel em Ciência da Computação. Trata-se de um software capaz de rearmonizar partituras de piano e gerar diferentes versões utilizando algumas técnicas de rearmonização. Ele foi desenvolvido como uma extensão de uma biblioteca java para músicos chamada Jmusic, de forma que nosso trabalho foi criar uma estrutura de dados própria para a Melodia e Harmonia, assim como construir a lógica para a reescrita de acordo com regras de rearmonização.

É importante salientar que rearmonização musical é um assunto muito complexo dentro da Música envolvendo conhecimentos avançados de teoria musical, sendo assim o desenvolvimento de um software que pudesse automatizar este processo em sua totalidade seria praticamente impossível  devido ao número de variáveis envolvidas e o tempo que tínhamos para tal.
Por este motivo, durante o desenvolvimento do software foi necessário adotar algumas premissas e impor algumas limitações de forma que o processo de rearmonização funcionasse corretamente. Uma dessas premissas é que o software apenas efetua alterações sobre a harmonia, deixando a melodia e o ritmo original da música intactos,  além disso ele aceita apenas partituras escritas em um arquivo midi com apenas 2 canais e cuja harmonia possua apenas acordes (e não dedilhado) fechados. Em um primeiro momento foram implementadas 4 técnicas de rearmonização (Interpolação em Cadências,  Substituição de acordes – por tom comum ou trítono,  inserção de notas de tensão sobre acordes e inserção de acordes fora do campo harmônico) porém nada impede que em futuras versões o software suporte demais técnicas de rearmonização ou manipule notas da melodia.
Hoje o software aceita um arquivo midi de entrada,  lê suas notas musicais  e gera uma partitura no formato de piano, então através da aplicação das técnicas de rearmonização podem ser geradas uma ou mais versões diferentes da partitura original. Cada uma das partituras geradas pode ser exportada nos formatos Midi ou PDF.
Atualmente o software esta disponivel em duas versões (um website e um aplicativo mobile android),  sendo que a o website pode ser acessado em https://sonatamusic.io e a versão mobile encontra-se disponivel no google play e pode ser adquirida em duas versões –  completa e de demonstração.

Versão CompletaGet it on Google Play

Versão de DemonstraçãoGet it on Google Play

Abaixo algumas imagens do aplicativo:

export_pdf                         select_rules

score