• Welcome to LusoRobótica - Robótica em Português.
 

Baixista virtual, midi tempo real (arduino)

Started by cellen, 01 de February de 2013, 19:17

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

cellen

Meu filho toca bateria eletrônica (yamaha Dtx500) e eu toco teclado(psr910).

Quero construir um sistema com arduino que quando ele toque o bumbo enviando a mensagem via midi, e eu toque o teclado ao mesmo tempo, o ARDUINO pegue a nota que EU estou tocando, e pegue o ritmo que MEU FILHO está tocando, JUNTE OS DOIS (o ritmo do meu filho e a nota que eu estou tocando) e envie apenas UM SINAL MIDI.

Assim o baixo vai acompanhar o ritmo do bumbo criando um baixista virtual :P

Alguém tem uma idéia????

Obrigado


iyahdub

Podes me explicar qual e a finalidade de essa ideia? Gravar midi  ?!
Que tal gravar ambos instrumentos em faixas diferentes usandoo protocolo GM , a bateria usa o canal 10, por defeito, e um teclado num canal 1 ( por exemplo)... Exiistem varias solucoes simples, tal como midi hubs, com midi thru. etc... Nao precisas de um uC para nada disso, a nao ser que queiras processar em tempo real...
ps-Desculpen a falta de pontuacao, mas vivo no estrangeiro e os teclados sao xenofobos !!

tcustodio

sinceramente não percebi bem qual o objectivo desse sistema... podes ser mais claro?
Tiago Custódio,
- Não me dêem álcool se estiver um piano por perto.

senso

O que ele quer é basicamente fazer um AND dos sons dele e do filho para fazer outro som, uma espécie de auto-tune.
Avr fanboy

andElectrons

O que ele quer é somar os dois canais de um só, juntando o Velociy vindo da bateria que corresponde à pressão efectuada pela baquete no instrumento e a nota tocado pelo teclado

- os teclados PSR emitem o velocity smp a 127 ( o maximo MIDI ) independentemente da pressão efectuada na tecla.

é preciso que as notas dos dois instrumentos sejam sincronas, possível se os 2 instrumentos estiverem sincronizados por tempo através do MIDI e com mta quantitização, o que torna impossível tocar fora do tempo


não é totalmente impossível de fazer, mas não parece boa ideia, na minha opinião

iyahdub

#5
Nesse caso basta usar um DAW que tenha quantizacao enquanto esteja a gravar... qse todos fazem isso ! Por isso que nao vejo a necessidade de inventar a roda, ou trazer um macarico para cortar uma folha de papel ?!?

PS-Nem todos os modelos PSR tem falta de velocity sensitivity... ja tive uns qts e eles tinham o feature da velocity ?!?
ps-Desculpen a falta de pontuacao, mas vivo no estrangeiro e os teclados sao xenofobos !!

andElectrons

#6
Quote from: iyahdub on 09 de February de 2013, 10:44
PS-Nem todos os modelos PSR tem falta de velocity sensitivity... ja tive uns qts e eles tinham o feature da velocity ?!?

sim é verdade.


microbyte

Eu percebo completamente o problema em questão e a finalidade.

O jovem quer um baixista mas não tem orçamento para pagar a um... :) hehehe

Se eu percebi, a ideia é pegar na nota do teclado quando o bombo é "accionado" e sair um sinal de MIDI com os 2. Depois isso pode ser metido num sintetizador e gerar o som de um baixo.

Isso pode ser implementado através do uso de janelas temporais de curta duração, que representam basicamente o tempo de atraso entre os 2 sinais que tu queres permitir:
- 1 janela por cada nota do teclado: "escuta" o bombo durante o tempo da janela temporal
- 1 janela por cada batimento do bombo - escuta notas do teclado dentro da janela temporal

As primeiras funcionam quando o sinal do bombo vem depois do teclado e a última funcionam quando as notas do teclado chegam depois do bombo.

tcustodio

Quote from: microbyte on 09 de February de 2013, 17:08
Eu percebo completamente o problema em questão e a finalidade.

O jovem quer um baixista mas não tem orçamento para pagar a um... :) hehehe

Se eu percebi, a ideia é pegar na nota do teclado quando o bombo é "accionado" e sair um sinal de MIDI com os 2. Depois isso pode ser metido num sintetizador e gerar o som de um baixo.

Isso pode ser implementado através do uso de janelas temporais de curta duração, que representam basicamente o tempo de atraso entre os 2 sinais que tu queres permitir:
- 1 janela por cada nota do teclado: "escuta" o bombo durante o tempo da janela temporal
- 1 janela por cada batimento do bombo - escuta notas do teclado dentro da janela temporal

As primeiras funcionam quando o sinal do bombo vem depois do teclado e a última funcionam quando as notas do teclado chegam depois do bombo.

Ah! assim sendo parece ser exequível. Usando a ideia das janelas temporais já estou a perceber como tudo aconteceria... em termos de "hardware" apenas é preciso conseguir analisar duas entradas midi, acho que é a única coisa que em termos de construção pode demorar mais tempo.
Tiago Custódio,
- Não me dêem álcool se estiver um piano por perto.