Stazed / rakarrack-plus

Rakarrack plus LV2s
GNU General Public License v2.0
36 stars 8 forks source link

Rakarrack Plus no reacciona con un valor MIDI de Program Change igual a 0 #30

Open fernando-inf opened 3 years ago

fernando-inf commented 3 years ago

Hola, he detectado que Rakarrack Plus no reacciona con un valor MIDI de Program Change igual a 0, es necesario darle un valor de 1 para que nos ubique en el preset 1. Esto no debería ser así, ya que, la mayoría de los programas de computadora aceptan el Valor 0 para ubicarse en el primer preset.

fernando-inf commented 3 years ago

Acabo de modificar el archivo /src/rkrMIDI.C para corregir el error de esta forma:

802: if ((midievent->data.control.value >= 0)
804: Change_Preset = midievent->data.control.value + 1; 

1174: if ((cmdvalue >= 0)
1176: Change_Preset = cmdvalue +1;

Como se puede ver agregue un signo "=" en las líneas 802 y 1174 para que reconozca el valor 0 de ProgramChange. Luego agregue un +1 en las líneas 1174 y 1176 para que reconozca el preset numero 1, ya que el preset número 0 no existe en Rakarrack, por ende le sumo 1 al Valor inicial de ProgramChange que es 0.

Stazed commented 3 years ago

Lo siento, no hablo español.

I will try to respond to your question in English, based on my best guess of your post. The Rakarrack-plus program changes go from 1 to 60, because this range was imported from the original Rakarrack project. I agree that normally the range would be from 0 to 59 offset by 1. But, I did not want to break backwards compatibility and it should be easy for users to adjust.

If I have misinterpreted your post, perhaps we can get someone to translate.

The reason that some of the code is written in Spanish is also due to import from original Rakarrack.

fernando-inf commented 3 years ago

Lo siento, no hablo español.

Intentaré responder a su pregunta en inglés, basándome en mi mejor suposición de su publicación. Los cambios del programa Rakarrack-plus van de 1 a 60, porque este rango fue importado de el proyecto original de Rakarrack. Estoy de acuerdo en que normalmente el rango sería de 0 a 59 compensación por 1. Pero, no quería romper la compatibilidad con versiones anteriores y debería ser fácil de ajustar para los usuarios.

Si he malinterpretado su publicación, tal vez podamos conseguir que alguien traduzca.

La razón por la que parte del código está escrito en español también se debe a la importación de Rakarrack original.

Hola, su interpretación es buena. Fíjese en mi segundo comentario, he modificado el código fuente para que funcione con ProgramChange = 0, gracias por responder.

Stazed commented 3 years ago

¡Acabo de encontrar el traductor de Google! Eso seguro que me lo pone más fácil.

Cambiar el código es fácil, pero quiero mantener la compatibilidad con versiones anteriores.

fernando-inf commented 3 years ago

Entiendo. Igualmente dejaré mi modificación aquí para quien lo quiera usar. Gracias por estar atento y muy buena actualización de Rakarrack, saludos.