Sintetizadores

SysEx (I): el MIDI más ‘SexSy’

Acceso a la serie completa de 5 tutoriales dedicados a MIDI SysEx.

Celebrando los 30 años de MIDI, arrancamos una mini-serie sobre los mensajes de sistema exclusivo (system exclusive o ‘SysEx’), que permiten personalizar al máximo el control y la expresividad que podemos obtener de nuestros equipos. ‘SysEx’ es la sal y el picante de MIDI. ¿Vas a renunciar a probarlo?

SysEx nos permite recuperar el lema “un parámetro, un control” que estaba presente de forma innata en los sintetizadores analógicos de antaño. Incluso nuestros equipos más cerrados (como tantos sintes y efectos en módulo que sólo pueden editarse con software desde ordenador) admiten vía SysEx el control y retoque del sonido detallado (pudiendo usar diversos controladores y sus mandos físicos), a menudo haciendo aflorar funciones inalcanzables de otra forma.

En este primer artículo tendremos que pecar un poco del lado de la teoría. Es cierto que se trata de una parte de MIDI desatendida por muchos porque exige una cierta mentalidad y conocimiento técnico, pero a cambio de un esfuerzo, no pequeño pero abordable para cualquiera, la recompensamerece la pena.

Recordatorio sobre la norma MIDI

Supondremos en estos artículos que ya conocéis los fundamentos de MIDI. Si necesitáis recordarlos, tenéis disponible un tutorial en http://www.hispasonic.com/reportajes/protocolo-midi/13 (además de otras muchas fuentes y manuales gratuitos, como este de Roland). Si manejáis el inglés podéis ir directamente a la web de la MMA (MIDI ManufacturersAssociation, que es la responsable del mantenimiento de la norma) y su sección tutorial: http://www.midi.org/aboutmidi/tutorials.php

Los que queráis refrescar la estructura de los mensajes MIDI podéis encontrarla en: http://www.midi.org/techspecs/midimessages.php

Hago un brevísimo recordatorio orientado hacia lo que nos interesa aquí (dejando de lado muchas cuestiones y detalles). Esencialmente MIDI define diversos tipos de mensajes que un equipo puede enviar a otro. Los mensajes (como en tantos otros sistemas digitales) están compuestos por bytes (grupos de 8 bits), y lo más frecuente es que los mensajes MIDI se formen con tres bytes (aunque los hay de más y de menos).

El primer byte de cada mensaje actúa como una ‘cabecera’ que describe el tipo acción y los demás completan los detalles. Por ejemplo, un primer byte puede decir que hay que activar una nota en el canal midi 3y los dos siguientes informarán respectivamente de cuál es la nota y de la velocidad (o fuerza) con la que debe sonar.
Para distinguir fácilmente los bytes de ‘cabecera’ de mensaje, cumplen en MIDI una característica: tienen su bit más alto a 1. Los demás bytes de cada mensaje tienen a 0 ese bit alto.Un mensaje será por tanto un byte tipo 1xxxxxxx que puede ir seguido de varios de tipo 0xxxxxxx.

Para los mensajes más habituales (como los de nota, pitch bend, controladores, cambios de programa, aftertouch, etc.) descripciones básicas como las que encontraréis en los enlaces proporcionados son suficientes. Son fáciles de entender. Por ejemplo

1001cccc   0nnnnnnn   0vvvvvvv  son los tres bytes de un mensaje de encendido de nota

Este mensaje corresponde a encender la nota número ‘nnnnnnn’ con velocidad ‘vvvvvvv’ en el canal ‘cccc’.

  • ‘cccc’ es el espacio (de 4 bits) en el que se especifica el número de canal, que puede estar entre 0000 y 1111, valores binarios que corresponden a valores decimales 0 a 15 (asociados a los canales MIDI 1 a 16; sí: el canal MIDI 1 se indica físicamente en los mensajes con un valor 0, y el canal 16 mediante el valor 15).
  • El byte ‘0nnnnnnn’ especifica el número de notaque se debe interpretar (y puede valer entre 00000000 y 01111111, o lo que es lo mismo, en decimal, entre 0 y 127).
  • El byte ‘0vvvvvvv’ especifica la velocidad (fuerza) con la que se debe ectivar/desactivar esa nota (de nuevo entre 0 y 127).

Así, 10010000   01000000   01111111  es un ‘note on’ en el canal MIDI 1 para la nota 64 (el do central) y a tope de velocidad (127).

Otro ejemplo: 1011cccc   0nnnnnnn   0vvvvvvv  son los tres bytes de un mensaje de controlador (como la rueda de modulación, el breath control, los pedales de expresión o sostenido, etc.), en los que ‘cccc’ especifica el canal, ‘0nnnnnnn’ es el número de controlador, y ‘0vvvvvvv’ es el valor o posición del controlador. Volveremos a hablar de ellos cuando veamos que son insuficientes para el grado de control que podemos desear desarrollar en muchos equipos.

Los mensajes SysEx: para qué

Los mensajes ‘SysEx’ dentro de MIDI son la parte más excéntrica (aunque también la más versátil). Son, por su propia definición, mensajes que no están predefinidos ni siguen siempre una misma estructura. Cada fabricante, y para cada modelo de equipo, define mensajes SysEx específicos, y por tanto el detalle de los mismos debe estudiarse para cada instrumento. Esencialmente sólo está definido cómo empiezan y cómo acaban (para poder distinguirlos de los demás), el resto lo define cada fabricante. Estos mensajes se detallan para cada equipo ya sea en la guía de usuario o en un documento aparte de especificaciones MIDI (‘MIDI specification’, ‘SysEx Implementation’, ‘Detailed MIDI Specification’ o semejantes). Pero lo cierto es que entendidos los mensajes SysEx de uno o dos equipos, los demás son pan comido. La curva de aprendizaje para manejarlos es larga al principio, pero una vez superada estás en condiciones de trabajar con cualquier nuevo aparato y exprimir al máximo su potencial.

Sobre los usos previstos para los mensajes SysEx, la norma MIDI cita que

Permiten a los fabricantes crear sus propios mensajes y por tanto

  • hacer accesible cualquier funcionalidad de sus equipos a través de MIDI
  • modificar los parámetros de un sonido (dando opción a ‘tocar’ cualquiera de los elementos del motor de síntesis o efecto, aunque no exista un control físico externo en el equipo)
  • realizar volcados de datos (como cuando cargamos o transferimos bancos de programas  hacia un ordenador)

Establecen un mecanismo para la futura especificación de nuevos mensajes MIDI no previstos en su definición inicial (asegurando que MIDI pueda crecer hacia nuevas áreas). Por ejemplo se han podido contemplar cosas tan dispares como

  • volcado de muestras vía MIDI (SDS: sample dump standard)
  • código de tiempo MIDI (MTC: MIDI Time Code)
  • diversos otros mensajes que amplían la norma MIDI con funciones no previstas inicialmente

Ejemplos

Como motivación he preparado varios vídeos breves (disculpas por su -mala- calidad) mostrando algunos usos que doy habitualmente a los mensajes SysEx. Os resumo también en texto algunas de las virtudes de SysEx.

  • Posibilidad de usar superficies de control (con pots, faders y botones) para poder ‘moldear’ con las manos y desde controles físicos cualquier parámetro interno del equipo.

  • Acceso a parámetros completamente inalcanzables desde los controles y menús del propio equipo (por ejemplo, se da mucho con la programación de efectos en sintes y pianos, no todos sus parámetros están alcanzables en los menús pero sí vía SysEx)

  • Combinar múltiples sonidos superpuestos en un único canal MIDI, pero aún así pudiendo retocar niveles, filtros, y lo que haga falta independientemente para cada uno (útil para manejar combinaciones multitímbricas en directo)

  • Una transposición más transparente (sin desplazamiento de las divisiones de teclado)

  • Posibilita en grabaciones MIDI una automatización que no se refiera sólo a los parámetros tradicionales de la mezcla, sino a los de la síntesis o los efectos. Algo habitual en soluciones plug-in pero que podemos también hacer con equipos hardware a través de mensajes SysEx.
  • Otro uso típico es el de volcar las programaciones de sonidos ya sea hacia  ordenador (para tener copia de seguridad o cargar nuevos bancos, etc.) o incluso dentro de las propias pistas MIDI en el secuenciador (para retener la definición de los sonidos grabada en el propio tema en el secuenciador –y no depender de tener cargados la programación de los sonidos en el equipo-)

Y un largo etcétera.

¿Esto qué Hex? El formato hexadecimal

Si vamos a trabajar en SysEx es necesario entender el formato hexadecimal, porque acaba siendo el más cómodo y se usa con frecuencia en los manuales. Aunque al principio cuesta es un formato sencillo de entender y aprender.
Si pensamos en un byte, como por ejemplo 00100101 (escrito en binario), podemos estudiarlo dividido en dos grupos de 4 bits, que serían en el ejemplo 0010 y 0101. La notación hexadecimal lo que hace es sustituir cada grupo de cuatro bits por un solo carácter (usamos las primeras letras para ir más allá del 9) de la siguiente manera:

Bits  (valor decimal) dígito hexadecimal
0000 (0) 0
0001 (1) 1
0010 (2) 2
0011 (3) 3
0100 (4) 4
0101 (5) 5
0110 (6) 6
0111 (7) 7
1000 (8) 8
1001 (9) 9
1010 (10) A
1011 (11) B
1100 (12) C
1101 (13) D
1110 (14) E
1111 (15) F

Así, para representar un byte (8 bits), en lugar de escribir una larga ristra de bits, podemos escribir sólo dos caracteres hexadecimales. Veamos algunos ejemplos:
00000000 = 00h (la ‘h’ la usamos para indicar que es un valor hexadecimal); 
00000010 = 02h
00100110 = 26h
10010011 = 93h
10100011 = A3h
01111111 = 7Fh
11110000 = F0h
11110111 = F7h
11111111 = FFh

Pensando en términos de MIDI, los diferentes tipos de mensaje se distinguen por su primer byte, que puede ser

  • 80h (.. hasta 8Fh): apagado de nota (note off) en los canales 1 (hasta 16)
  • 90h (.. hasta 9Fh): encendido de nota (note on) en los canales 1 (hasta 16)
  • A0h (.. hasta AFh): ‘aftertouch’ polifónico en los canales 1 (hasta 16) –muy pocos teclados generan este tipo de información: exige que cada tecla produzca individualmente su propio ‘aftertouch’ en lugar de existir uno común para todas-
  • B0h (.. hasta BFh): cambio de un controlador en los canales 1 (hasta 16)
  • C0h (.. hasta CFh): cambio de programa en los canales 1 (hasta 16)
  • D0h (.. hasta DFh): ‘aftertouch’ de canal (que actúa sobre cualquier nota) en los canales 1 (hasta 16)
  • E0h (.. hasta EFh) es ‘pitch bend’ en los canales 1 (hasta 16)
  • F0h (.. hasta FFh): los bytes que empiezan por F son para otros usos en los que no hay distinción del canal MIDI como por ejemplo las señales MIDI Clock y Start/Stop/Continue; y otras varias (remitimos a las fuentes ya citadas para más detalle). Nos interesan aquí F0 (arranque de un SysEx) y F7 (marca de final de SysEx).

Como ejemplo, el mensaje que antes vimos para un encendido de nota (10010000   01000000   01111111) se escribiría en hexadecimal como 90 40 7F  -he suprimido la indicación de la ‘h’ para simplificar-).

Lo que nos importa del formato hexadecimal es convivir con él. Que no nos extrañe leerlo. A la hora de usar control SysEx bastará con que sepamos ‘copiar’ los bytes que el manual de cada equipo establezca. Casi un ‘corta y pega’ desde los manuales hacia nuestros controladores, pero que tenemos que saber leer y manejar sin miedo.

Estructura de un mensaje SysEx

Un mensaje SysEx MIDI es una ristra de bytes que comienza con F0h (11110000). Detrás de él vendrá un número cualquiera de bytes, pero que tendrán su bit alto a 0 (serán de tipo 0xxxxxxx). Para indicar el final de un mensaje de SysEx, se utiliza otro byte de los que comienzan por 1, concretamente F7h (11110111). En definitiva un mensaje de SysEx arranca con F0h, acaba con F7h y entre medias lleva un contenido de bytes 0xxxxxxx en número variable según el mensaje de que se trate.

Si el mensaje es para retocar un parámetro (por ejemplo para activar/desactivar un ‘Leslie’ en una unidad de efecto o para ajustar el ‘decay’ en una envolvente) bastarán unos pocos bytes. Si el mensaje es un volcado de todo un programa (o incluso de todo un banco de programas, o el contenido íntegro de un equipo) será, lógicamente, mucho más extenso.

Ya hemos dicho que los mensajes ‘SysEx’ suelen ser específicos para cada modelo y fabricante. Lo primero que se indica detrás de F0h en un mensaje SysEx es precisamente cuál es el fabricante, lo que se llama el ‘identificador’ (ID) del fabricante. El código de fabricante lo asigna la organización que gestiona MIDI (el MMA).
Los códigos 01h hasta 1Fh se reservaron para fabricantes americanos, del 20h a 3Fh para Europa y de 40h hasta 5Fh para Japón. El rango 60h-7Fh se reservó inicialmente para usos futuros. Así todos los mensajes SysEx de Sequential empiezan con F0h 01h; el F0h 21h corresponde a SIEL; Roland usa F0h 41h ; Korg F0h 42h; Yamaha F0h 43h; etc.

El código 00h quedó inicialmente reservado y es el que se ha usado para permitir un mayor número de IDs de fabricante (con sólo un byte sólo ‘caben’ poco más de un centenar). Si el ID empieza con 00h hay que considerar los dos bytes siguientes para completar un ID largo. De esa forma se dispone de un nuevo espacio que va desde 00h 00h00h hasta 00h 7Fh 7Fh, y que tiene hueco para más de 15000 fabricantes adicionales.

El formato de los mensajes SysEx será de este tipo

11110000 0iiiiiii [0iiiiiii 0iiiiiii] 0ddddddd   …  0ddddddd  11110111

Donde además del primer y último bytes (F0h y 7Fh respectivamente) aparecen 1 [opcionalmente 3] bytes para identificación del fabricante y un número indeterminado de bytes de datos (que hemos señalado como 0ddddddd … 0ddddddd).

Los mensajes ‘universal SysEx’

Aunque el verdadero poder de SysEx es el que corresponde a los mensajes 100% ‘exclusivos’ (aquellos que cada fabricante define para cada modelo de equipo), para poder empezar con algo más sencillo, hablaremos aquí de los ‘universal SysEx‘, que serán ya de utilidad práctica.
Son mensajes que usan el formato de los mensajes de sistema exclusivo pero que se han definido por la MMA con una estructura y significado concreto. Cualquier fabricante y equipo puede reconocer/generar estos menajes (respetando su significado): no son ‘exclusivos’ para un fabricante, aunque siguen el formato de los mensajes ‘SysEx’.

Para señalar que un mensaje SysEx en vez de ser para un fabricante concreto es ‘universal’, se han reservado losID de fabricante 7E y 7F. Haremos un rápido resumen centrado en presentar algo que pueda ser útil a todos (nuevamente el detalle más completo en: http://www.midi.org/techspecs/midimessages.php y sobre todo, en el manual de cada aparato, donde podréis conocer todos los mensajes que acepta y genera un equipo concreto).

Universal SysEx non-realtime

Los mensajes de tipo F0h 7Eh… son mensajes SysEx universales de tipo ‘no tiempo real’, se trata de mensajes que no tienen que ver con la ejecución ‘en directo’ de un tema. Por ejemplo son los que se usan en el MIDI Sample Dump Standard (una forma -lentísima- de enviar ‘samples’ a través de MIDI y que usaban algunos samplers antiguos para transferir muestras hacia/desde ordenador). También para algunos comandos de MTC (MIDI Time Code) como los referidos a ajustar los puntos de pinchazo (punch-in / punch-out). Existen también mensajes de este tipo para realizar microafinación de la escala (y que siendo universales harán que todos los instrumentos pasen a aplicar la escala tal como la hayamos definido, sin tener que ajustarla uno por uno). Hay también mensajes de activación y desactivación del modo General MIDI (y también del modo DLS, para ‘downloadable sounds’). Y podríamos seguir con otros muchos usos. En el manual de vuestros equipos estará especificado cuáles de estos mensajes genera/reconoce cada máquina.

Universal SysEx realtime

Los mensajes de tipo F0h 7Fh… son mensajes de sistema exclusivo universal para uso en tiempo real durante la interpretación. Un ejemplo son los comandos de MTC (MIDI Time Code) que informan del avance del tiempo (el equivalente MIDI del código SMPTE). Los comandos MSC (MIDI Show Control) también usan ‘real-time universal SysEx’ para control de montajes audiovisuales y multimedia. Acudid al enlace que dimos más arriba para conocer otros.

Nos vamos a centrar en un grupo de estos mensajes al que podréis encontrar utilidad: Master Volume, Master Balance, Master Fine Tuning, Master CourseTuning. Son cuatro mensajes que permiten regular el volumen, balance, afinación en cents, y afinación en semitonos de cualquier dispositivo MIDI que los reciba y los sepa interpretar. Veamos el primero de ellos.

 

Nuestro primer mensaje SysEx: ‘Master volume’

Los mensajes de controlador (CCs) habituales solo actúan sobre un canal MIDI (y nos permiten regular la mezcla entre canales). No existe un mensaje de controlador previsto para gobernar el volume global (de todos los sonidos a la vez). Esa carencia queda resuelta con este mensaje:

F0 7F 7F 04 01 ll mm F7

que pasamos a desgranar:

F0   Comienzo de SysEx

7F   Señala que es un SysEx universal de tipo realtime

7F   Aquí podría venir un valor cualquiera entre 00h y 7Fh (hablaremos de ello el próximo día). De momento nos basta saber que si vale 7Fh cualquier sintetizador que reciba este mensaje lo atenderá (una especie de ‘oídlo todos, que nadie se haga el sordo’).

04  
01
   Estos dos bytes con valores 04 y 01 definen este mensaje como destinado a modificar el volumen global

LLh (un byte de tipo 0lllllll)
MMh (un byte de tipo 0mmmmmmm)
El valor del volumen deseado se especifica fraccionado en dos trozos: ‘MM’(entre 00h y 7Fh) es el trozo más significativo y ‘LL’ (entre 00h y 7Fh) el resto. Entre ambos forman un número de 14 bits mmmmmmmlllllll. De esa forma el control del volumen no está limitado a 128 posibles valores (como sucedería con un único byte de tipo 0xxxxxxx), sino que tiene una mayor resolución (tiene 16384 escalones, suficientemente fino para permitir ajustes detallados).

F7   Final del SysEx

En realidad el control del volumen no necesita ser tan exquisito, de forma que habitualmente se pone a ceros LL y sólo tiene contenido útil MM. De tal forma que se suele usar para controlar el volumen global un mensaje de este tipo: 

F0 7F 7F 04 01 00 xx F7

donde xx representa el volumen deseado entre 127 (7Fh) para el máximo y 0 (00h) para el mínimo.

Si tenemos cualquier controlador  que pueda generar SysEx (comentaremos alternativas en otra entrega de la serie) podremos escribir ese mensaje y conseguir que el movimiento de un ‘fader’ o de un potenciómetro genere precisamente ese tipo de control: un volumen ‘maestro’ que controlará simultáneamente el volumen de todos los canales MIDI en todos los dispositivos que tengamos conectados y recibiendo este mensaje. De golpe, y a toque de un único control, gobierno el volumen de todos mis aparatos MIDI.
Programad un ‘fader’ o un ‘pot’ con el mensaje F0 7F 7F 04 0100xx F7 en un Behringer BCR, un NovationRemote SL, un Roland A800Pro, la app TB MIDI Stuff (para iPad), o tantos otros dispositivos con capacidad para generar SysEx. Asunto resuelto.

‘Master Fine Tuning’

Podríamos haber hecho también un ajuste de ‘panorámica’ global con: F0 7F 7F 04 02 ll mm F7, lo cual (no os lo negaré) parece poco interesante . Pero pensad ahora en este:

F0 7F 7F 04 03 ll mm F7 (Master Fine Tuning)

Os han contratado para acompañar a un instrumentista, el cual dice que toca afinado a La=445 Hz y no acepta de ningún modo La=440.¿Vais a empezar a retocar uno a uno vuestro sintes para la nueva afinación?Aún peor: ¿y si en la segunda parte de la gala viene otra persona y sí toca en La=440Hz? ¿Os da tiempo en el descanso a rehacer todo sin errores?
Lo dicho antes: programad un control que genere el mensaje ‘Master Fine Tuning’ y se acabó el problema.

‘Master Course Tuning’ y la transposición ideal

De acuerdo: he ido a un ejemplo enrevesado (casi todos usamos 440Hz.). Voy con otro (y este sí que me pasa a menudo): lo que comentaba al principio respecto a la transposición. Si (como yo acostumbro) habéis realizado un gran esfuerzo de programación para conseguir ‘splits’ y ‘layers’ que os permitan tocar todos los sonidos necesarios desde un único teclado controlador, no podéis fiaros del habitual ‘transpose’ del controlador. Volved sobre el vídeo: los puntos de división cambian de lugar cuando aplicáis la transposición que ofrecen los teclados.

Con el mensaje F0 7F 7F 04 04 ll mm F7 (Master Course Tuning) podéis modificar en semitonos (hacia arriba y hacia abajo) la afinación de todos los instrumentos MIDI que tengáis conectados. Al toque de un control transponéis todo vuestro arsenal de sintes a otra tonalidad y estáis listos para empezar, con la tranquilidad de saber que las divisiones siguen en su sitio.

Aún no hemos visto los dientes al lobo

Realmente no hemos ni arañado la potencia magnífica que se puede alcanzar con el uso de los mensajes SysEx. Sólo hemos mencionado unos (muy pocos) mensajes ‘SysEx universal’, que precisamente por ser universales no son la parte interesante de algo que quiere ser ‘exclusivo’. Pero con este primer artículo nos hemos preparado para poder entender lo que nos viene encima en el próximo.

Si algo no habéis entendido, preguntad. Intentaré aclarar lo que haga falta para que no os desenganchéis y podáis aprovechar lo próximo que escriba. Si ya no os aterroriza ver escrito F07F 7F 04 0400 xx F7, vamos por buen camino.
 

Etiquetas: Tutorial SysEx
Pablo Fernández-Cid
EL AUTOR

Pablo no puede callar cuando se habla de tecnologías audio/música. Doctor en teleco. Ha creado diversos dispositivos hard y soft y realizado programaciones para músicos y audiovisuales. Toca ocasionalmente en grupo por Madrid (teclados, claro).

¿Te gustó este artículo?
63
Comentarios
  • 1
  • 2
  • 3
  • 4
  • 5
  • #1 por Tarro el 01/03/2013
    Este teclado es perfecto para dicho propósito. Lo sé bien porque tengo uno.
  • #2 por pablo el 01/03/2013
    hey!!!!! muchas gracias por este post... o más bien artículo, aprovecharé hoy que estoy con tiempo para leerlo con detenimiento.
    Me acuerdo cuando estudié en SAE que en midi tuve que hacer dos mensajes de sistema y me tiré horas para coseguirlo, luego nunca me he podido dedicar a fondo al tema midi pero me parecieron apasionantes las posibilidades. =D> =D> =D>
    1
  • MOD
    #3 por Soyuz el 01/03/2013
    ¡Esto hay que leerlo con calma durante el fin de semana! :mrgreen:
    5
  • #4 por Sulfurico el 01/03/2013
    Aunque esto sea mas largo que el sumario de Urdangarin es muy interesante. =D>
    2
  • #5 por pablofcid el 01/03/2013
    #1
    Pues yo he probado un montón y los Remote de Novation junto con esta serie de Roland (A300Pro/A500Pro/800Pro) me han dejado excelente sabor de boca. Para según qué cosas prefiero uno u otro, pero los dos son magníficos a efectos de generar sistema exclusivo y en general como controladores. Ultimamente también uso mucho para estar tareas el iPad, porque hay aplicaciones (yo uso TB MIDI Stuff, ya os lo contaré en una secuela de esta primera parte) que permiten recibir cualquier tipo de controlador (sea lo que sea lo que tu teclado/controlador genere) y reconvertirlo a SysEx o a lo que te apetezca (de esa forma combino la enorme programabilidad de una app en iPad combinada con controles 'tocables' y no la pantalla plana, y puedo usar cualquier teclado o controlador aunque sólo genere nativamente CCs para 'disparar' los controles virtuales en el iPad y desde ellos generar MIDI).

    Y la verdad es que, aunque en los vídeos no he mostrado nada interesante (sólo el concepto), las posibilidades son enormes y aprovechas mucho más los equipos y de formas sólo posibles con el 'toqueteo' físico sobre controles y no con el uso de ratón en pantalla o de dedo sobre el frío cristal (aunque sea multitáctil).
  • #6 por Mister Carrington el 01/03/2013
    Buen artículo y claro.
    Para los principiantes "comed despacio y haced digestión larga". Con el tiempo podréis asimilar más líneas de información ;-)

    La práctica de cosas facilitas hará que os aficionéis con el tiempo a tener estos trucos en vuestro saco...

    Salu2.
    1
  • #7 por Tarro el 01/03/2013
    #5 por pablofcid

    Haces que me replantee una cosa.
  • #8 por Rod el 01/03/2013
    Muchísimas gracias por tu trabajo , esto nos vendrá de perlas para refrescarnos la mente a muchos , y le dará una gran ayuda a otros que ven los datos syxex como algo tabú y como si de chino se tratase , como bien dice Soyuz esto es de lectura con calma para el fin de semana.
    ;-) :mrgreen:
  • #9 por pablo el 01/03/2013
    Dios!!!! No sabía que el Sonic Cell estuviera tan bien.... ufff... ya otro objeto del deseo :bua:
  • #10 por tranqui67 el 01/03/2013
    Por algo los que saben, por caso Depeche Mode, usa los Roland a800pro (aunque lo hacen con el modelo identico de Edirol)
  • #11 por pablofcid el 01/03/2013
    #7
    Supongo que sé a qué te refieres. En mi opinión: quédatelo (ya tendrás tiempo después de completar la serie para decidir si te lo quedas o lo sueltas). Salvo que seas amigo de usar Automap (lo que te decantaría por Novation) el A800Pro que tienes es magnífico. Tal como has visto yo mismo lo tengo y ahora es mi teclado de directo, salvo cuando además (por el tipo de música) me llevo también un piano completo (por aquello del lastrado y las 88). Y aunque tengo lo del iPad, la comodidad de llevar todo (incluso la programación de sysex) metida en el teclado controlador y sin tanto tinglado es una maravilla. El iPad lo llevo como backup y para ampliar con más controles, pero lo que más toqueteo lo quiero 'cerca' y el A800 me lo deja a mano.
    Los Remote, por lo mismo, extraordinarios también (tuve en teclado y ahora en 'Zero').
    Usé (demasiado poco para opinar) los BCR, pero el formato me era algo más incómodo para tenerlo encima de un teclado.
    1
  • #12 por pablofcid el 01/03/2013
    #9
    El soniccell suena fenomenal y si le dedicas un poco de tiempo y de programación mejor aún.
    Esencialmente yo ahora para directo llevo (salvo que el proyecto pida cosas más especiales) un A800Pro y un SonicCell. En total menos carga para las espaldas que cuando vengo con las bolsas del súper, pero un potencial sonoro impresionante. Puedes leer el comentario que he hecho sobre él en
    http://www.hispasonic.com/productos/roland-sonic-cell/298#review506

    Pero en realidad pasa lo mismo con muchísimos de los equipos que tenemos. Tienen mucha más chicha de la que les sacas desde el panel frontal.

    En mis pianos eléctricos apenas puedo retocar de forma nativa nada (sólo hay controles básicos para elegir sonidos, un único layer/split, etc.) pero cuando los ataco con sysex programo todos sus efectos internos al detalle, combino más capas y layers,...

    Lo mismo con todos esos módulos GM/GX/XG que pululan por ahí (y algunos a precios de risa en Mercasonic). Si tienen buena implementación sysex haces con ellos lo que quieras.
    1
  • #13 por nnr el 01/03/2013
    Una vez entiendes y pones en practica todo esto puedes empezar plantearte dominar el mundo
  • #14 por jBetances el 01/03/2013
    Lo mas hermoso del SysEx, aparte de su enorme configurabilidad, es esto:

    Alguien escribió:
    De esa forma el control del volumen no está limitado a 128 posibles valores (como sucedería con un único byte de tipo 0xxxxxxx), sino que tiene una mayor resolución (tiene 16384 escalones, suficientemente fino para permitir ajustes detallados).


    Lastima que el tutorial peca por no haber hecho suficiente incapié en ello.

    Del resto, excelente. :ook:
  • #15 por pablofcid el 01/03/2013
    #14
    Tienes toda la razón, no hay color, por ejemplo, cuando haces el clásico barrido lento en un filtro resonante si la resolución es 7 o 14 bits, o en general con todo aquello que tiene que ver con timbre (y no con volumen, para el cual, al menos mi oreja, es bastante poco crítico).
    Tanto el A800 como los Remote como el MIDI TB Stuff en iPad soportan la generación de control sysex con 14 bits (y alguno de ellos en diferentes esquemas, para otras tantas formas frecuentes ll-mm, o mm-ll, o por nibbles,...).
    Ya le daré más caña a eso en otra entrega (y mira que esta ya era larga de por sí). Pero es que o vamos paso a paso o la intención de que la mayor parte de la gente pueda seguirlo se nos queda en el tintero.
  • #16 por jBetances el 01/03/2013
    Alguien escribió:
    (y no con volumen, para el cual, al menos mi oreja, es bastante poco crítico).


    Toda oreja es super tosca en lo que refiere a intensidad.

    Esa resolución es excelente para cuestiones microtonales, incluso de control. Un controlador de ribbon de 50 centimetros seria muy tosco con 7 bits...

    El PitchBend viene en SysEx de hecho.
  • #17 por pablofcid el 01/03/2013
    Ojo: Pitch bend usa un formato de 14 bits, pero no es syex. Es un mensaje estandarizado de canal que todos los fabricantes usan igual.
  • #18 por JLC el 01/03/2013
    Esto puede dar más opciones a sintes maravillosos como pueden ser el matrix 1000, y así una larga lista que incluso podría terminar en el dorg m1.

    El sysex puede hacer que algunos sintes que los fabricantes, quizás en una equivocada opción de simplificarlos, quitando todos sus potenciometros, limitaron respecto a los anteriores sintetizadores, puedan cobrar nueva vida.

    Este artículo va a dar vida, a algunos aparatos que en los últimos tiempos han sido postergados, demostrando que se les pueda volver a dar un universo de posibilidades, recobrando unas sonoridades que perdieron.

    Y por encima de todo, es un lujo que una persona de tus conocimientos, y sobretodo de tu amor por la música y los sintes, nos puedas ayudar, a que nuestros instrumentos mejoren en posibilidades que hasta los fabricantes, nunca se molestaron en explicarnos, y que en cierta manera, recortaron.

    Mil gracias, personas con tus valores de ayuda a los demás, sois únicos.
  • #19 por jBetances el 01/03/2013
    #17

    joder! juraba que era SysEx por lo de 14 bits... Mala mia! :oops:
  • #20 por sloppy soul el 01/03/2013
    Pasote de artículo. El sysex es una de mis grandes asignaturas pendientes en cuanto al midi. Todo muy arcano para un tipo de letras como yo. Espero próximas entregas.

    Muchas gracias
  • #21 por pablofcid el 01/03/2013
    #20
    Si algo no queda claro, pregunta. Los de letras también podéis, no faltaba más.
  • #22 por teclas123 el 01/03/2013
    Enhorabuena por el artículo, para mí esto del SysEx es también una asignatura pendiente, espero aprobarla pronto!! :-D

    Tengo una duda, el SysEx ¿serviría también para cambiar la polaridad de un pedal de sustain? Quiero decir si sería posible que el módulo de sonido en cuestión interprete el hold de manera inversa.

    Muchas gracias!
  • #23 por reto el 01/03/2013
    Hola.

    Lo primero dar las gracias por este pedazo de post.
    En segundo lugar, tengo una Korg EMX-1 y estoy intentando controlar mediante Sysex la parte de los drum parts, ya que tiene 9 voces de drums y están englobadas en el mismo canal midi 10, entonces quiero poder controlar el volumen, pitch, eg time, modulación, etc de cada voz de drum desde un Novation Remote 25 y a poder ser automatizar esos ca,bios en un DAW.
    Tengo la tabla de implementación midi de la Korg EMX-1 pero estoy haciendo pruebas y no lo consigo, haber si alguien me puede echar una mano.

    Este es enlace de la tabla de implementación midi de la EMX-1:
    http://www.korg.co.uk/downloads/EMX1/support/EMX1_MIDI_imp.zip

    Gracias de antemano y un saludo.
  • #24 por VedFerrer el 01/03/2013
    Me lo he papeao entero y me lo guardo en favoritos para papearmelo unas cuantas mas.

    Ahora una cuestión que me trae de cabeza, podre con paciencia y la modificación de los sysex en reaper, ajustar el maldito recorrido de los filtros midi???
  • #25 por alaspurpuras el 01/03/2013
    Yo soy de esos a los que les ha dado pereza entrar al SySex sobre todo porque siempre me hice de equipos con montones de controles propios. Sin embargo llevo tiempo pensando en traer un viejo DX7 MKII a casa, así que voy a tener que leerme todo esto con mucho cuidado en próximos días para ver si puedo conseguir lo que me propongo con el. Gracias y saludos.
  • 1
  • 2
  • 3
  • 4
  • 5