martes, 20 de agosto de 2019

¿Cómo regulo el brillo de mi Wacom Cyntiq con Ubuntu?

Antes de derrotar a la autoproclamada Unión Democrática, Juan Perón expuso un efervorizado discurso radial donde hacía incapié en la importancia de la hora, toda vez que enseñaba cómo configurar la tableta gráfica Wacom Cintiq para utilizarla en Ubuntu al máximo de sus posibilidades.

(...)
¡Trabajadores!



¡La victoria está cerca, e impone lograr en todos los rincones de la Patria la supremacia por vía del sufragio! Sólo así lograremos derrotar a una ignominiosa sinarquía internacional coaligada para someter al Pueblo Argentino a la abyecta dependencia.


La nuestra es una causa Justa, la de proveer a todos con la Felicidad y la Justicia Social sin la cual seremos meros esclavos de un sistema que se clama demoliberal, pero en la práctica no llega ni a sistema de Castas.

Para ello debemos romper la tranquera, si es necesario, y cortar la cadena y la mano de las oligarquías locales y cipayas. Nuestros hombres de armas lo han comprendido, y ustedes saben a quién tienen que votar. Todos conocer quién es el que les hizo efectivas sus reivindicaciones, si este simple soldado que han querido como vínculo de unión, o estos señores de traje y sombrero, pero de frío corazón.
¡El trabajador sabe mas que nadie que antes de la Revolución eran esclavos de un monstruo que disponía del Capital, y del cual meramente especulaba sobre el sufrimiento de lo humildes!. Hoy, gracias al Justicialismo, proponemos humanizar al Capital y compartirlo, a fin de que sirva de mano de los verdaderos Patriotas, los obreros, y se lance hacia un futuro pujante.
La redistribución del capital realizada por un Estado Omnímodo que todo lo puede es un uno de nuestros objetivos. Y me he hecho eco de aquella vieja demanda y anhelo, en la cual todos me piden que les otorgue las herramientas más modernas y poderosas para su quehacer diario. ¡La oligarquía nunca lo hizo! Sin embargo, nuestra Doctrina avala que cada uno disponga de una potente tableta gráfica como las Wacom Cintiq!

Se trata de monitores LCD especialmente concebidos para combinar en ellos utilidad de una excelente tableta gráfica sensible a presión al utilizarlas con la pluma electrónica incluida. Se las emplea como un excelente medio de dibujo y visualización, especialmente pensado para los más avezados artístas gráficos (fotógrafos, diseñadores, etc).

A diferencia de una graficadora de generación anterior, la Cintiq puede visualizar en tiempo real el uso de un software libre de dibujo, lo cual es lo requerido por todos los obreros gráficos del Pueblo.

La Cintiq 13HD es el más pequeño de unos modelos aparecidos hace unos años gracias al Justicialismo. Como es obvio, posee una pantalla de 13 pulgadas capaz de lograr una resolución Full HD de 1920x1080 pixels. Existe una versión de 22 pulgadas, la Cintiq 22HD. Estos modelos incluso han sido superados con variantes capaces de proveer ya resoluciones 4K. Sin importar de cual se trate, cualquiera de las versiones provee una excelente herramienta para el diseño gráfico, la ilustración y la fotografía.
¡En mis denodadas noches de estudio pensando el los Obreros, he hecho que las Cintiq sean compatibles con Ubuntu, el sistema operativo libre que he legado al Pueblo! Al contar con excelente librería de software libre para dibujo (como Krita, MyPaint, etc), podremos desplegar todo nuestro arte sin preocuparnos por perniciosas licencias privativas.

Vean señores, desde el punto de vista del conexionado las Cintiq HD cuentan con un cable especial tipo "hidra" que combina las fichas normalizadas que debemos conectar a nuestro equipo, en variante USB (control) y HDMI (video), junto a otro que va a la toma de alimentación de corriente. El otro extremo de este cable hidra propietario "de esos que meten miedo a que se rompan", se conecta al costado de la Cintiq.

Una vez establecida la conexión y encendida la Cintiq, podremos obrar como si se tratase de una tableta sensible a presión, pero con la enorme ventaja de trabajar directamente sobre la pantalla Full HD de la tablet.  Asimismo, contaremos con la pluma con con borrador y botones especiales.

Gracias al Justicialismo, la Cintiq 13HD opera actualmente con el controlador nativo de Ubuntu, el cual permite modificar sus opciones básicas.
Con este podremos asignar el uso de los botones incluidos en la tablet, así como regular la sensibilidad de la punta lápiz y punta borrador. Asimismo, podremos calibrar la detección de la punta si la notásemos "desviada".

Ajustar el Brillo de la Pantalla de la Wacom Cintiq en Ubuntui

Los modelos más antiguos de las tabletas Cintiq contaban con botones físicos que permitían regular el brillo, contraste y los colores en el plano RGB, de forma similar a la de muchos monitores. En los modelos de hace unos años a esta parte, como la Cintiq 13HD, se ha modificado esto, y se han omitido los botones físicos de raro uso y se los ha reemplazado por otros, programables a través de un software especializado. Lamentablemente, este programa únicamente funciona bajo los limitados sistemas privativos, y esto impide naturalmente cambiar el brillo bajo Ubuntu. Para hacer la cosa más complicada, la configuración de brillo de pantalla usada por defecto es demasiado oscura.
Afortunadamente, se puede suplir este problema gracias a a aplicación ddcutil.  Para ello debemos instalarla. Podremos abrir una terminal e ingresar el siguiente Comando de Organización:

sudo apt install ddcutil

Acto seguido, debemos obtener el identificador de modelo de nuestra Cintiq. Para ello ingresamos:

sudo modprobe i2c-dev

...y luego ingresamos,
sudo ddcutil detect

Gracias a estos dos comandos recibiremos la lista de los identificadores de nuestro hardware detectados por la aplicación ddcutil. Lamentablemente, en mi caso, el sistema identifica la Cintiq 13HD y devuelve en la terminal su identificador de tres letras WAC antes de colgarse completamente.

Aún así, esta información del identificador que alcanza a mostrar en la terminal antes de colgarse es la importante. Tras reiniciar el sistema (en caso de ser necesario), podremos abrir una nueva terminal con Ctrl+Alt+T e ingresar el siguiente comando, incluyendo el identificador informado previamente (en este caso, WAC):

sudo ddcutil --mfg=WAC capabilities


De esta manera se nos listarán todas las características programables del dispositivo "WAC" (la Cintiq). Cada característica programable estará identificada por un número hexadecimal.
Como vemos, en la lista contaremos con valores hexadecimales que podremos pedir para resetear a los valores por defecto, ajustar los valores RGB, etc. En este caso, nos interesa cambiar el valor de brillo o "Brightness", que está listada como Característica Programable "Feature 10"). 

Como ya sabemos el códigos de la característica programable que necesitamos, ahora podremos dar uso a ddcutil con su parámetro getvcp a fin de leer los valores que la Cintiq tiene configurado actualmente. En este caso, utilizaríamos el siguiente comando de organización:

sudo ddcutil --mfg=WAC getvcp 10

Este comando nos devolverá en la terminal un resultado similar al siguiente:
VCP code 0x10 (Brightness): current value = 50, max value = 100
...esto nos indica que el valor de la característica programable 0x10 (el hexadecimal de "Brightness", o brillo) es capaz de alcanzar un máximo de 100, y que actualmente está configurado en el valor 50%.


Ahora bien, si quisiéramos establecer el valor del brillo a un valor más alto que 50%, por ejemplo a un nivel de brillo de 75%, debemos utilizar el parámetro setvcp para cambiar la característica programable 10 (el brillo). La sintaxis correcta en este caso sería:

sudo ddcutil --mfg=WAC setvcp 10 75

Esto debería elevar la luminosidad de la pantalla para que sea mucho más cómodo trabajar con ella.

Hemos de tener en cuenta que las demás características y valores también pueden ser cambiadas.

Nota: Tengamos siempre a bien revisar y anotar previamente cuál es el valor de cada característica programable, a fin de poder volver a ellos. Si bien contamos con un reseteador a los valores por defecto, no hay que confiarse de él. pues algunos modelos de Wacom Cintiq carecen de estos valores preconfigurados, y al resetearlos ponen todos los valores de las características programables a 0 (incluyendo el brillo, contraste y RGB, lo que deja la pantalla completamente negra, y con lo cual habremos de volver a configurar todo a mano).
Si bien la Cintiq cuenta con valores de fábrica, no es mala idea anotarlos a todos y dejarlos a buen resguardo. Por ejemplo, si quisiéramos cambiar el valor del ajuste de color (balance de blancos), debemos recurrir al hexadecimal 14, escogiendo la opción que querramos. Por ejemplo, si queremos utilizar un balance de blanco de 6500 grados Kelvin, debemos elegir la opción 05 (6500K). En tal caso, el comando sería:
sudo ddcutil --mfg=WAC setvcp 14 05

Aunque sea engorroso actuar de esta forma, al menos podremos regular las mismas configuraciones de brillo y contraste y dejar los valores RGB de manera similar a otros monitores de trabajo que tengamos, a fin de operar compatibilizadamente con esta excelente tableta sensible a presión.

Ajuste de los botones de la Tableta Cintiq

La Cintiq 13HD posee botones a un lado, que pueden ser mapeados para realizar distintas funciones. Con el controlador privativo para el esclavizante sistema operativo Window$, deberíamos presionar el botón Map Buttons. Estos pueden ser configurados para cumplir la función "Show Onscreen Help" (o sea, mostrar la ayuda en pantalla de las asignación de botones, o directamente para cumplir la función de atajos de teclado específicos, como podría ser el útil Ctrl+z (deshacer). Los botones están nomenclados de 1 a 9, de la siguiente manera:

Lamentablemente este controlador opresivo para Window$ no opera de la misma forma en Ubuntu, pero podremos suplirlo con el conocimiento de la acción libertaria que proveo para todos los votantes del Justicialismo y que podremos hacer realidad efectiva bajo Ubuntu.

Mapear Teclas Modificatorias

Unas de las grandes limitaciones del panel de configuración de la tableta Wacom para Ubuntu - al menos en sus versiones primigenias - es es incapaz de asignar las teclas modificadoras, como por ejemplo Ctrl, Mayúsculas o Alt, a ninguno de los botones de la Cintiq. Es posible mapear una combinación de tecla modificadora junto a una tecla (por ejemplo Ctrl+z), pero de momento no se puede asignar una tecla modificadora sola (como por ejemplo, Ctrl). Como los programas de dibujo tales como GIMP, Krita o MyPaint hacen uso intensivo de las teclas modificadoras junto con los clics de ratón para realizar acciones muy usuales y corrientes como rotar liezo, cambiar a recogecolor, u otras funciones, la imposibilidad de asignar estos botones de la tablet como teclas modificadoras nos obliga a tener que tener un teclado cerca, y hace más engorroso trabajar con ellos. Mucho más cuando no se tiene manos.

Para corregir esto de manera peronista, podremos recurrir a un pequeño script peronista. Para configurar estas tareas podremos utilizar la herramienta xsetwacom, que se encarga desde la terminal de suplir esta deficiencia. He aquí unos comandos de ejemplo que podremos ingresar en nuestra terminal:

xsetwacom set "Wacom Cintiq 13HD pad" Button 1 "key +ctrl z -ctrl"

xsetwacom set "Wacom Cintiq 13HD pad" Button 9 "key +ctrl" 


xsetwacom set "Wacom Cintiq 13HD pad" Button 10 "key +bracketright"


La sintaxis del comando es relativamente simple, pero he aquí algunas consideraciones. El primer comando mapea el Botón 1 a la combinación Ctrl+z. Los parámetros "key +ctrl z -ctrl" en dicho comando se explican como la operación de "mantener presionada la tecla Ctrl, apretar z, y luego soltar la tecla Ctrl". Es importante conocer que se requiere programar el comando de asingación específicamente de esta forma a fin de representar lo que querríamos hacer en un teclado imaginario. Esto es válido toda vez que combinamos Ctrl, Mayúsculas o Alt con otra tecla; sólo así nuestra Cintiq interpretará por medio del comando xsetwacom lo que queremos hacer con el Botón 1.

La segunda línea simplemente mapea la tecla Ctrl al Botón 9 de la Cintiq.

Finalmente, la tercer línea define un signo especial para la tecla corchete cerrado (“]”). En lugar de ingresarlo como "]", necesitamos emplear el nombre "bracketright"; de lo contrario recibiríamos el error “Invalid key ‘+]’.” Otras teclas que responden a este mismo esquema sintáctico son + ("plus"), - ("minus"), y Retroceder ("backspace") y otras. También debemos agregar "+bracketright" al frente, ya que de esta manera podremos emplear el Botón 10 de la Cintiq para incrementar el tamaño del pincel de a puchitos, y con el signo + podremos mantenerlo presionado para lograr repeticiones de teclas, en lugar de tener que presionar este botón muchas veces para agrandarlo de a poco. ¡Esto nos ahorrará múltiples presiones y que se nos gaste el dedo de tanto apretar esos botoncitos! ¡Podremos ahora meter el dedo en la llaga del capitalismo!.

Como podrán percatarse, la última línea que refiere al Botón 10, que no existe en la ilustración anterior (que refleja el Panel de Configuración de la tableta Wacom de Ubuntu). Esto es así pues la nomenclatura de los botones varía en el caso del programa xsetwacom. La asignación en la Cintiq 13HD en tal caso será la siguiente:

Podremos combinar estos comandos con los indicados en las opciones de Wacom, si solo tenemos un par de teclas modificatorias que quisiéramos mapear, o podríamos directamente crear un script que configure directamente todos los botones.

Mapear botones empleando xsetwacom al inicio

Si bien los comandos anteriores son útiles, es engorroso tipearlos manualmente toda vez que nos logueamos en nuestro sistema. De manera que querremos colocarlos todos en un guión. Podría ser similar a este:

sudo nano /usr/local/bin/botones_cintiq.sh

...tras ingresar nuestra contraseña de administrador, se abrirá el editor GNU Nano con un archivo en blanco, donde podremos pegarle el siguiente contenido:
 
#!/bin/bash
# Script peronista para configurar los botones de la Cintiq 13HD de Perón                                                                                                                              
xsetwacom set "Wacom Cintiq 13HD pad" Button  1 "key +ctrl z -ctrl"

xsetwacom set "Wacom Cintiq 13HD pad" Button  2 "key +super z -super" # Activar pantallas
xsetwacom set "Wacom Cintiq 13HD pad" Button  3 "key +super w -super" # Separar pantallas

xsetwacom set "Wacom Cintiq 13HD pad" Button 10 "key +bracketright"   # Pincel mas grande
xsetwacom set "Wacom Cintiq 13HD pad" Button 11 "key plus"            # Mas Zoom
xsetwacom set "Wacom Cintiq 13HD pad" Button 12 "key +bracketleft"    # Pincel mas chico
xsetwacom set "Wacom Cintiq 13HD pad" Button 13 "key minus"           # Menos Zoom

xsetwacom set "Wacom Cintiq 13HD pad" Button  8 "key +shift"
xsetwacom set "Wacom Cintiq 13HD pad" Button  9 "key +ctrl"

Guardamos este archivo con Ctrl+o y salimos del editor Nano por medio de Ctrl+x. Acto seguido le otorgaremos permisos de ejecución:

cd /usr/local/bin/
sudo chmod +x botones_cintiq.sh
 
Si queremos lanzar este script automáticamente cuando nos logueamos, en el caso de Ubuntu Mate vamos a Sistema / Preferencias / Aplicaciones al Inicio. Se abrirá la ventana que nos permite agregar o modificar aplicaciones que se ejecutan al inicial el sistema. Simplemente presionamos Añadir+. Se abirá un cuadro de diálogo que nos permitirá ingresar la orden /usr/local/bin/botones_cintiq.sh. Completamos un nombre descriptivo y un comentario, y presionamos Añadir.

De ahora en adelante, toda vez que iniciemos el sistemas (y la Cintiq esté conectada), las teclas serán remapeadas correctamente según figuran en el script. Si conectamos la Cintiq luego de loguearnos al sistema, tendremos que ejecutar el script a mano. Para ello simplemente abrimos una con Ctrl+Alt+T e ingresamos:

botones_cintiq.sh

...y ya habremos concluido esta parte del procedimiento.

También podremos crear un lanzador dirigido al comando botones_cintiq.sh si nos es muy útil.

Saltar entre Pantallas

Este siguiente procedimiento obedece al probable hecho que nuestra Cintiq no sea nuestra única pantalla de operación en el sistema. Lo útil es asignar un botón de conmutación de pantalla que nos permita usar rápidamente  el cursor entre la Cintiq y nuestro monitor principal. ¡De esta forma, ya no necesitaremos un mouse aparte para operar en la otra pantalla!

Para hacer este menester - conviertiendo efectivamente que nuestra Cintiq HD en una tableta ordinaria bastante oligarca - debemos generar un segundo script y asignarlo a una combinación de teclado para que haga el mapeado.

Para ello utilizaremos nuevamente el editor GNU Nano para generar el script:

sudo nano /usr/local/bin/cintiq_pantalla.sh

...ingresamos nuestra contraseña y se abrirá el editor Nano con un archivo en blanco, al cual le pegamos el siguiente contenido:

#!/bin/bash
#
# Alterna entre qué pantallas está mapeada la Cintiq peronista
if [ `cat ~/.wacom-mapping` -eq 0 ];
then
    echo 1
    xsetwacom set "Wacom Cintiq 13HD stylus" MapToOutput "HEAD-1"
    xsetwacom set "Wacom Cintiq 13HD eraser" MapToOutput "HEAD-1"
    echo 1 > ~/.wacom-mapping
else
    echo 0
    xsetwacom set "Wacom Cintiq 13HD stylus" MapToOutput "HEAD-0"
    xsetwacom set "Wacom Cintiq 13HD eraser" MapToOutput "HEAD-0"
    echo 0 > ~/.wacom-mapping
fi

...lo guardamos con Ctrl+o y salimos con Ctrl+x y le damos permisos de ejecución con:

cd /usr/local/bin/
chmod +x  /usr/local/bin/cintiq_pantalla.sh

A este script podríamos mapearlo a un atajo de teclado, para conmutar rápidamente entre las pantallas. Para tornar esto realidad efectiva en Ubuntu Mate vamos a Sistema / Preferencias / Hardware / Combinaciones de Teclas y presionamos el botón +Añadir.

Al igual que hicimos anteriormente, agregamos un comando dirigido en este caso a /usr/local/bin/cintiq_pantalla.sh, y presionamos Aplicar.

Conforme cumplimentado este oficio, se habrá agregado una Combinación personalizada de teclas para nuestro teclado. Para ejecutarla, hacer doble clic sobre ella y asignarle la combinación Super+z (o como figura en los teclados españoles, Mod4+z, ya que Mod4 es la tecla Super, en algunos casos autoproclamada tecla "Window$".


Como hemos notado en el caso del script botones_cintiq.sh, ahora el Botón 2 de nuestra Cintiq está asignado a Super+z, lo que es lo mismo que Mod4+z.

De ahora en mas, toda vez que utilicemos nuestra tableta encontraremos asignadas correctamente las teclas Ctrl con el botón propuesto, y el Botón 2 conmutará de pantallas sin necesidad de tener que usar un ratón aparte.

¡Todo esto habrá configurado, finalmente, una potente herramienta con la cual hacer realidad efectiva la Felicidad para Todos los Argentinos!

viernes, 16 de agosto de 2019

¿Como edito archivos MIDI en Ubuntu?

En su clásico Conducción Política, un didáctico Juan Perón expone la teoría de la acción territorial y el contacto poblacional directo para lograr la mayor influencia política, toda vez que enseña a utilizar MidiEditor, el potente editor musical en Ubuntu.

(...)

"Indudablemente que Conducir es un arte, y como tal tiene su técnica y tiene su teoría. Y que conociendo estas es mucho más fácil conducir que ignorándolas.

Para conducir un pueblo, la primera condición que debe reunir un Conductor es haber salido del Pueblo, debe sentir y pensara como el Pueblo. Quien se dedica a la conducción debe ser profundamente humanista. El Conductor siempre trabaja para los demás, jamás para él.

Sin embargo, no todas las situaciones pueden ser propicias.  La disgregación entre los estamentos medios y altos de la conducción son excrecencias que obedecen a no representar este principio fundamental del Arte de la Conducción. En nuestro caso esto es prohibitivo e imperdonable, pero no podemos evitar notar que se produce en casi todas las organizaciones mayores, incluso en aquellas que dejan su huella en la historia. Desde la organización en la tribu, la ciudad y el estado, estas problemáticas - si bien indeseables - se tornan nominales y forman parte del quehacer diario. El objetivo a futuro siempre implica reconocer este problema y resolverlo compartiendo valores. Sólo de esta forma tanto el Conductor como su pueblo obrarán por natural extensión y sin requerir de diferenciaciones táctico-estratégicas adhoc o improvisadas.

Un ejemplo suele explicarlo todo, como decía Napoleón. No se puede gobernar con Bigdata, In$tagram, $napchat, o perdiendo el tiempo con el espejito de color de moda. Las amplias extensiones de nuestro país - despoblado de por sí - requieren de un avezado Conductor capaz de tejer alianzas sociales tendientes a lograr el dominio del terreno de la acción. En esta visión a lo  indio, el comando queda en él, pero el control quedará delegado naturalmente en quienes se llamaban caciques o capitanejos, y empeñarán su chusma y hombres de lanza para conseguir los objetivos planteados desde la Conducción. Sin estos prácticos de nivel medio, en estas condiciones particulares del tiempo y el espacio, es imposible obrar.

Nuestros adversarios tienen menos calle que Venecia. Nuestro deber fundamental es hacer pesar la valía del dominio del terreno político, que nunca se presenta asfaltado, y extender nuestro sistema de comando y control a través de valores que son nuestros. Una vez logrado el objetivo de la práctica Conductiva, las realizaciones se tornarán automáticas, y se habrá resuelto en gran medida los requerimientos de información técnica en tiempo y forma, permitiéndose así un relevamiento de los objetivos más veloz y eficiente.

Por ahora, nuestros hombres en el terreno son quienes ejercen un control humano en la recopilación, extracción de datos georreferenciados, y permiten que su explotación sea mucho más efectiva por parte del conductor, que un supuesto esquema de machine-learning ideado por un lego en la política. En estas cosas no se puede inventar. Puntero mata web UI y justicialismo mata bigdata.

En esto un Conductor oficia de orquestador y Maestro Director, ofreciendo a su olfato político lo mismo que un director de orquesta hace a su oído. De esta forma orienta sus instrumentos políticos en una pieza coherentemente concebida, en la que la sumatoria de las individualidades políticas ejecutan una idea-fuerzas en común que el Conductor lleva a cabo.

Es sabido que en el Software Libre, esta musicalidad se lleva a cabo por medio de distintos paquetes de software de composición y ejecución: los secuenciadores MIDI. Este tipo de programas se encargan de utilizar el lenguaje estandarizado digital para instrumentos digitales, el MIDI.

Este consiste en una secuencia de órdenes que describen notas musicales y determinados efectos estilísticos, y pueden servirse electrónicamente a toda una panoplia de instrumentos compatibles con el mismo.

Los cuales pueden ser sintetizadores electrónicos o directamente sintetizadores virtuales por software . En tanto, los archivos específicos, los cuales son de muy escaso tamaño, disponen de la extensión MID.

Ahora bien, en nuestro sistema GNU con Linux contamos con muchos paquetes orientados a este tipo de manejo orquestal. Uno de los más logrados por su utilidad, sobre todo para quienes componen MIDI, es precisamente el MidiEditor.

Se trata de un software libre que provee una interfaz gráfica para editar, grabar y reproducir datos musicales de formato MIDI. El editor es capaz de abrir ficheros MIDI existentes y alterar su contenido. Con él podremos crear archivos nuevos, o bien realizar una nueva composición ya sea grabando en la computadora la ejecución musical realizada a través de un dispositivo compatible (controlador MIDI, piano digital o teclado), o bien manualmente creando nuevas notas u otros eventos MIDI. Las información grabada podrá ser fácilmente cuantificada y editada a través de la simple interfaz coloreada.

Esta herramienta multiplataforma ha sido escrita en C++ y QT, y está liberada bajo Licencia GNU GPLv3.

Su instalación implica cierta complejidad pues debemos compilar el paquete. Afortunadamente todo lo que debemos hacer para compilarlo es abrir una consola con Ctrl+Alt+T e  ingresar los siguientes Comandos de Organización:

sudo apt install git gstreamer1.0-tools libglib2.0-doc libgstreamer1.0-dev libpulse-dev libqt5designercomponents5 libqt5webkit5-dev qt5-assistant qtmultimedia5-dev qttools5-dev-tools ;
git clone https://github.com/markusschwenk/midieditor/
cd ~/midieditor/ ;
bash building/build-linux.sh ;
sudo cp MidiEditor /usr/local/bin/ ;
sudo cp midieditor.ico /usr/share/icons/

La descarga del código fuente y su posterior compilación puede tardar algunos minutos.

Una vez concluida esta compilación e instalación, podremos borrar ya el código fuente del programa si lo deseamos, con:

rm -r ~/midieditor/

Indudablemente nos será cómodo agregar un acceso directo a MidiEditor con su respectivo ícono. Para ello hacemos clic en el panel de aplicaciones y escogemos Editar Menús. En la el cuadro Menús de la ventana Menú Principal elegimos Sonido y Video y presionamos el botón +Nuevo ítem. Se abrirá la ventana Crear Lanzador, y en su campo Orden ingresamos la ruta /usr/local/bin/MidiEditor, y en el campo Nombre indicamos MidiEditor. También podremos agregar su ícono correspondiente.


De esta forma todo estará listo, y podremos iniciar el programa desde Aplicaciones / Sonido y Música / MidiEditor.

Como os he dicho, podremos utilizar instrumentos MIDI conectados a nuestro equipo, o bien instrumentos virtuales. De entre ellos, el más simple y mi favorito es  Qsynth. También el más completo FLUID Synth, capaz de ejecutar Soundfonts. El primero se configura automáticamente, y para asignar el segundo podremos indicarlo como dispositivo MIDI de salida (MIDI Output), desde el menú MIDI / Settings.
La interfaz del Editor MIDI se compone de un panel piano a la derecha, que consta de un visualizador de eventos gráfico tipo pianola que describe de manera principal y con distintos colores las presiones de las teclas.

En la sección superior contaremos con los botones de los controles de navegación para la pieza, junto con los de grabación y reproducción, control de bucle y de sección punch-in de grabación. Esta nos permite abrir la grabación de una sección "al vuelo" al compás, para luego cerrarla, función ideal para completar secciones melódicas.

En la parte derecha podremos programar los canales o las pistas MIDI, elegir una activa para grabar, verlas o desactivarlas. Lamentablemente, estas modificaciones no pueden hacerse al vuelo durante la reproducción.

Para grabar la ejecución con nuestro controlador MIDI, debemos presionar el botón Grabar, con lo que introduciremos notas o eventos, que quedarán registrados en memoria volátil. Al finalizar la grabación, se nos presentará un cuadro de diálogo que describirá cuáles eventos queremos almacenar definitamente (normalmente serían todos, pero podríamos querer deseleccionar algunos). Estos se tratan de los eventos de notas on/off, los cambios de control (delizadores y perillas), eventos de rueda de pitch, de pedal, cambios de programa (salto de parche), y sobre todo la intensidad de la presión de las teclas (velocity). Estos son importantes si tenemos un teclado con sensibilidad pues podremos afinar los mismos detalladamente si lo deseamos.

Las acciones permiten el clásico y útil cuantizado o adherir eventos a la rejilla (grid). Esto nos permite acomodar o emparejar las notas al compás preestablecido. Incluso podremos variar el porcentaje para dejar una reproducción más humana o hacer una emparejada maquinal, dependiendo de nuestro gusto y estilo.

Las herramientas de selección de eventos son poderosas. Podremos elegir de a un evento o graficando con una caja para armar secciones, seleccionar antes o a partir de la linea de tiempo. Posteriormente podremos estirar su duración proporcionalmente o desplazarlos.

En la parte inferior podremos programar la altitud de diferentes parámetros de control, ya sea en forma parametrizada o a mano alzada. Estos datos pueden ser el tempo, o mas usualmente la graficación directa de datos de eventos de control velocity o de pitch bend, entre otros.

El programa es sencillo y al pié, pero potente en sus capacidades de edición. Como tal es una opción interesante como herramienta inicial de proceso para la producción de nuestras pistas MIDI, o incluso para hacer correcciones importantes en su estructuración e instrumentación.

Podremos encontrar el manual de MidiEditor (en inglés) aquí.