Copio de un post que yo mismo escribí en Hispasonic
Buenas a todos, hace tiempo que me decidí a aprovechar al máximo las capacidades de control de mi BCR y creo haber llegado al punto en que no veo por donde seguir (ahora toca sacar provecho del trabajo...). Lo comento por aquí por si alguien se atreve a enzarzarse con la pelea y le apetece mejorar mi esquema, o simplemente por el hecho de que otros se puedan aprovechar de mi trabajo, dado que no ha sido poco hasta ahora. También comentaré un poco la tarea de asignar TouchOSC a las funciones del mezclador, puesto que tras mi nueva tablet de 10" (30€ usada, muy lenta para internet, totalmente operativa para control) Para empezar, mi manera de trabajar en Studio One es casi siempre usando VSTi's (sea para controlar plugins o hardware MIDI mediante Ctrlr http://www.Ctrlr.org) y pistas de audio con inserciones de plug-ins. Creo que lo estándard. También suele ser recurrente que use instrumentos VA, y me hace especial ilusión poder controlar esos instrumentos desde la BCR. Así que por un lado tengo ya todo un esquema de control de síntesis en la BCR (lo cambié últimamente) de manera que todos los plugins y todo el hardware lo controlo con el mismo interfaz. A partir de ahí, que es la parte fácil, me encuentro con el problema de que no puedo asignar fácilmente macros o tener una asignación fija de los faders del mezclador con la misma comodidad con que asigno parámetros de un plug-in una vez y me olvido... Studio One no "preasigna" los faders a nuestro controlador MIDI, hay que hacerlo manualmente y hay que hacerlo en cada tema. Se pueden crear plantillas, pero existe la posibilidad de que éstos ya esten preasignados... como? Creando una "device". Y aquí empieza la parte oscura. Primero hay que localizar el directorio de "devices" de Studio One. En mi caso: C:\Audio\Studio One\devices Ahí sale la lista de "fabricantes". Para un fabricante XXX tendremos una carpeta XXX C:\Audio\Studio One\devices\XXX En mi caso, ya existe la Behringer BCR2000, pero el controlador deja bastante que desear, sólo permite usar 32 encoders y 28 botones, cuando podemos usar 56 encoders y 60 botones... comorrr??? Bueno, la cosa es sacar provecho a los 4 bancos de control, así que hay que modificar la "device". En el caso de TouchOSC, hay que crear una carpeta y una subcarpeta en ella. Carpeta: Fabricante Subcarpeta: Modelo Por ejemplo, démosle al controlador que nos inventaremos el nombre TouchME (éste y la marca, TouchOSC, son de libre elección...) C:\Audio\Studio One\devices\TouchOSC\TouchME Hasta aquí, fácil... veamos, qué hay en cada carpeta? Pues entre 3 y 5 archivos, normalmente... Todos los podremos editar en nuestro Notepad o Write... evitad Office u otras suites. También pueden ser útiles los editores de código, sobretodo para el XML. TouchME.device TouchME.png TouchME.txt TouchME.surface.xml XXXXX.js TouchME.device TouchME.png TouchME.txt TouchME.surface.XML XXXX.js |
Paso 2... si nos centramos en la parte <controls> del XML veremos que en cualquier archivo que abramos hay diferentes maneras de escribir los valores y no todos son imprescindibles...
Veamos uno básico: <Control name="Level[0]" title="Level[0]" type="knob" options="receive transmit nofeedback public"> <MidiMessage status="#B0" channel="1" address="#0"/> </Control> Bloque 1 <Control name="Level[0]" title="Level[0]" type="knob" options="receive transmit nofeedback public"> <Control - inicio de definición de un control. name="Level[0]" - Para uso interno. Es importante el valor entre corchetes para posterior asignación de canales title="Level[0]" - El valor que veremos en pantalla. Puede ser title="EG1>Cutoff" si ya sabemos que va a ir asignado a ese parámetro. Por defecto (con mi BCR así está ajustado...) type="knob" - El aspecto con que será representado en la visualización del controlador options="receive transmit nofeedback public" - No hay demasiada información al respecto, pero está claro que receive y transmit son la opciones para enviar y recibir los valores, tal cual está servirá para la mayoría de tareas. Bloque 2 <MidiMessage status="#B0" channel="1" address="#0"/> <MidiMessage - inicio... status="#B0" - En éste caso nos encontramos con la representación del parámetro de control en forma hexadecimal. Ojo. Puede darse de diferentes maneras, mediante texto, hexagesimal. Veamos: <MidiMessage status="Controller" address="3"/> La opción más fácil si sabemos algo de MIDI, será poner el mensaje en Hex y los controles en decimal para no tener que estar pensando en hexadecimal. channel="1" - En algunos casos encontraremos discriminación por canal, supongo que si no se especifica, perdemos la opción de usar los canales a modo diferenciante. Es decir, nos quedamos con 6% de posibilidades. Vale la pena especificarlo, sobretodo para TouchOSC. address="#0" . El número de parámetro, si usamos CC's (#90) no es más que el número de controlador, por ejemplo, el típico 74 para el cutoff... o era el 71? Da igual, podréis asignar el que os vaya mejor en función de vuestra distribución de control. Bloque 3 </Control> - Final de descriptor de control. Por lo visto, no hay nada que editar aquí... Cuando nos pongamos manos a la obra con los controles es importante ser ordenado y esquemático, incluso ayudarse de una hoja de excel para generar los valores. Usar las tabulaciones para ver claramente cada valor asignado a cada parámetro también es de gran ayuda. Si tenemos una pantalla ancha, usar un editor que no nos ajuste el texto a la hoja también puede ser de gran ayuda. <Control name="Level[0]" title="Cutoff" type="knob" options="receive transmit nofeedback public"><MidiMessage status="#B0" channel="1" address="#0"/></Control> <Control name="Level[1]" title="Resonance" type="knob" options="receive transmit nofeedback public"><MidiMessage status="#B0" channel="1" address="#1"/></Control> <Control name="Level[2]" title="EGMod" type="knob" options="receive transmit nofeedback public"><MidiMessage status="#B0" channel="1" address="#2"/></Control> También hay que recordar que el primer canal MIDI es el 0, no el 1... y que los valores empiezan por el 000. Hasta aquí, los controles... |
Paso 3: Mixer Mapping!
Aunque Studio One permite sacar provecho de botones para asignar a funciones de transporte, comandos de teclado y demás, (uno muy útil sería el LEARN / Alt+M) ahora lo importante es controlar los parámetros del mezclador, que como todos sabemos serán variables en funcion de las pistas que tenga cada arreglo. Así que lo práctico sería que el propio DAW asignase esos controles a los canales y no tener que hacerlo nosotros uno a uno. Ventajas? Obvias. Desventajas? Que si cambiamos la posición de un instrumento, pista de audio o canal de efecto/bus se nos desmontará el chiringuito momentáneamente, así que nuevamente hay que ser ordenados. Veamos la verborrea empleada: <!-- MIXER MAPPING --> <DeviceMapping device="MixerConsole"> <PlacementBank target="RemoteBank" pagesize="16"> <!-- The Channel Strips --> <foreach variable="$channel" count="16"> <Strip> <Value control="Level[$channel]" param="volume"/> <Value control="Pan[$channel]" param="pan"/> <Value control="Solo[$channel]" param="solo"/> <Value control="Mute[$channel]" param="mute"/> <Value control="Rec[$channel]" param="recordArmed"/> </Strip> </foreach> </PlacementBank> </DeviceMapping> Vamos a ver los importantes... <!-- MIXER MAPPING --> Rótulo... entre <-- --> podréis poner lo que os venga en gusto y os sea útil para posteriores ediciones. <PlacementBank target="RemoteBank" pagesize="16"> - Éste parámetro nos permitirá "amontonar" dispositivos, de manera que si añadimos dispositivos, éstos controlaran los canales siguientes: 1-16, 17-32, 33-48... Aunque ésto sólo será útil en estudios donde tienen el espacio necesario para amontonar éstos dispositivos, ya que a día de hoy hacerse con un par de tablets no es nada caro. <foreach variable="$channel" count="16"> junto con <Strip> es la función que autoasigna nuestro interfaz a los valores en pantalla. Requiere de la asignación previa del CC a un name="Control[X]" como ya se ha comentado en la asignación de controles. Nuevamente, el primer fader del mezclador es el 0, no el 1... <Value control="Level[$channel]" param="volume"/> - El control asignado al parámetro del mezclador, que son, según he recopilado: volume pan solo mute recordArmed Hasta el momento no he conseguido encontrar el parámetro para monitorizar, aunque hay más como "trackselect" que no tengo a mano. Es cuestión de tiempo que Presonus publique algo en condiciones pero, si habeis llegado hasta aquí, sereis capaces de editar o crear el archivo necesario para controlar desde vuestro disposivo. De hecho, desde la BCR tengo la botonera lateral asignada a: 1- mostrar plugin 2- mostrar instrumento 3- anterior plugin/instrumento 4- siguiente plugin/instrumento Y actualmente uso la BCR para editar plugins/instrumentos y TouchOSC para controlar solos, mutes, volúmenes. Me faltaría averiguar el tema de los auxiliares, monitorización de canal y un sinfín de funciones, pero no hay tiempo para todo. También os diré que TODAS las asignaciones quedan grabadas al cerrar Studio One. Así que siempre que hagais una asignación de controles cerrad Studio One, porque aunque se cuelga muy poco, si no se cierra, se pierde todo lo asignado en la sesión. Importante saber que esos datos de asignaciones se mantienen si eliminamos el dispositivo del menú de Studio One. Importante también que ess datos estan en la carpeta de usuario... generalmente en C:\Users\USUARIO\AppData\Roaming\PreSonus\Studio One 2\Surface Data Y nos puede ser muy útil si por ejemplo os encontráis con un plugin rebelde como EXS24, que es casi imposible automatizar porque los parámetros mostrados no coinciden con los parámetros editados. También sería muy útil si todos usásemos los mismos archivos de control... pero eso sería un proyecto ya muy complicado. |
Tendría que mirar de extraer la configuración de mi BCR porque por ejemplo, al tener asignados los knobs de la primera fila a valores que en un sintetizador me interesa resetear a valores diferentes a 0/127 como son el volumen (100) y el tono, desafinación o PW (64) es espcialmente útil a quien quiera sacar provecho de todo ésto.
Lo explico por encima, porque no es demasiado difícil de entender: La primera fila de enconders tiene cuatro bancos. Les he asignado CC 1-8, 9-16, 17-24, 25-32 Cada botón de cada encoder de la primera fila (son "puchcoders" se puedeen girar y presionar) lleva CC diferentes a los encoders. Les he asignado CC 33-40, 41-48, 49-56, 57-64 Botones normales, 2 filas de 8 Les he asignado CC65-72 y 73-80 respectivamente Tres filas de encoders CC: 81-88, 89-96, 97-104 Cuatro botones CC: 105 y 106 a la fila superior (para mostrar/ocultar editor sintetizador y plugins) CC: 107 y 108 la inferior (para mostrar anterior/siguiente plugin/sinte) Luego, para aprovechar que Studio One permite ser controlado con variaos dispositivos a la vez, he reproducido el entorno de la BCR en TouchOSC (así puedo copiar las asignaciones que hago en el BCR al archivo de asignaciones de TouchOSC, sin tener que reasignar con cada plugin) y he añadido un entorno de mezcla adicional en que todos los controles son emitidos por el canal 2, de manera que no interfiera con la edición de plugins y sintetizador. Creo que va siendo hora de colgar un par de fotos...
|
Aquí estan los archivos:
El Sysex de la BCR, incorporable a vuestra propia BCR con el editor que behringer proporciona (mediante Cargar Sysex) download/file.php?id=3269 El archivo de TouchOSC, que habría que cargarlo en TouchOSC o MyOSC (en éste último requerirá modificaciones y no funcionará igual). Los archivos de asignaciones de StudioONE y las Devices correspondientes a la BCR (BCR2K) y Touch by Wikter... o algo así. Suerte! |
Estamos dándole vueltas a una APC40 de Akai. tenemos algun que otro problemilla, pero es totlamente testeable y mejora cualquier dispositivo creado por un usuario.
Akai APC40 MkI |
Users browsing this forum: No registered users and 1 guest