Timidity y Guitar Pro 5 en Debian Lenny

viernes, agosto 01, 2008

Guitar Pro es un editor de tablaturas multipistas para guitarra, bajo, percusión y otros instrumentos musicales. Por los momentos es uno de los mejores (si no el mejor) editor de tablaturas pero es propietario y de paso solo disponible solo para Windows y Mac. A pesar del creciente auge del software libre es difícil encontrar un reemplazo con las mismas funcionalidades. Existen algunas alternativas libres, como kguitar o dguitar pero aún les falta madurar un poco para hacer frente a guitar pro como verdaderos contendientes.

He visto que algunas amigos no se pasan por completo a GNU/Linux porque no pueden usar Guitar Pro, así que decidí instalarlo y configurar todas las herramientas necesarias para obtener un rendimiento similar al que puede obtenerse en Windows y es lo que pretendo enseñarles a continuación. Sin embargo, hago la aclaración de que el RSE (Real Sound Engine) no funcionará muy bien (aún no he logrado corregirlo), pero el soporte MIDI funcionará al 100%. Para aquellos que no tengan Guitar Pro y deseen probarlo pueden descargar una versión de prueba de 15 días aquí

Los pasos siguientes son válidos para Debian y Ubuntu, pero la base debería ser la misma para otras distribuciones. También se supone que el sistema tiene instalado y configurado ALSA como manejador de sonidos.

Primero instalaremos Wine y Timidity.

$ sudo apt-get install wine timidity
Para explicarlo con pocas palabras, Wine es una reimplementación de la API de Windows para sistemas operativos basados en Unix (o sea, nos permitirá instalar el Guitar Pro para Windows) y Timidity es un software sintetizador que permite reproducir archivos MIDI.

Necesitamos descargar la librería de sonidos Fluid y la aplicación sfarkxtc para descomprimirla. Adicionalmente debemos instalar otra librería para que el sfarkxtc funcione correctamente:

$ sudo apt-get install libstdc++5
Mientras se descarga el Fluid instalaremos Guitar Pro en nuestro flamante sistema GNU/Linux (el método descrito también funciona para la versión completa de Guitar Pro). Para ello debemos abrir un terminal y ubicarnos en el directorio donde se encuentra el instalador y escribir:

$ wine GP5DEMO.exe
o simplemente haciendo clic derecho sobre el instalador y seleccionando la opción "Abrir con <<wine>>".


Si ésta opción no aparece entonces seleccionamos "Abrir con otra aplicación..." y en comando personalizado escribimos wine.

Lo siguiente es ejecutar en un terminal:

$ winecfg



En la versión del sistema operativo escogemos Windows XP y en la pestaña Audio seleccionamos la casilla ALSA Driver.



Vamos ahora con la configuración del Timidity. Lo primero es editar el archivo /etc/default/timidity y ubicamos la línea:
#TIM_ALSASEQ=true
y la descomentamos. Quedaría así:
TIM_ALSASEQ=true

También buscamos la línea:
TIM_ALSASEQPARAMS="-Os"
y la reemplazamos por:
TIM_ALSASEQPARAMS="-iAr -B2,8 -Os1l -s 44100 -EFreverb=0"

Posteriormente creamos la carpeta .timidity en nuestro directorio home (si es que no existe):
mkdir ~/.timidity

Cuando tengamos la librería Fluid descargada la descomprimimos junto con el sfarkxtc, en la misma ubicación (archivos FluidR3122501.zip y sfarkxtc_lx86.tar.gz respectivamente). Desde el terminal, nos colocamos en la carpeta donde fueron descomprimidos los archivos y ejecutamos:

$ ./sfarkxtc FluidR3\ GM.sfArk
$ ./sfarkxtc FluidR3\ GS.sfArk
$ mv FluidR3\ GM.SF2 ~/.timidity/FluidR3GM.SF2
$ mv FluidR3\ GS.SF2 ~/.timidity/FluidR3GS.SF2

Y con eso tendremos sendos archivos .SF2 listos para usarse. A continuación editamos el archivo /etc/timidity/timidity.cfg (también con privilegios de root) y buscamos la línea:

source /etc/timidity/freepats.cfg
y la reemplazamos por:

soundfont "~/.timidity/FluidR3GM.SF2"
soundfont "~/.timidity/FluidR3GS.SF2"

Por último, reiniciamos Timidity:

$ sudo /etc/init.d/timidity restart
En este punto ya disponemos de un Timidity con esteroides, correctamente configurado y listo para trabajar con Guitar Pro.

Si te aparece un error similar a este:
Starting TiMidity++ ALSA midi emulation...ALSA lib seq_hw.c:457:(snd_seq_hw_open) open /dev/snd/seq failed: No such file or directory
error in snd_seq_open


Entonces necesitas cargar el módulo snd_seq, para ello ejecutas:
# modprobe snd_seq

Y para que se cargue cada vez que iniciamos el equipo editas el archivo /etc/modules y agregas una nueva línea con la palabra snd_seq

Nos queda configurar el Guitar Pro para que use Timidity como dispositivo de salida MIDI. Ejecutamos Guitar Pro bien sea desde el menú Aplicaciones->Wine->Programas->Guitar Pro 5 o tecleando en el terminal:

$ cd ~/.wine/drive_c/Archivos\ de\ programa/Guitar\ Pro\ 5
$ wine GP5.exe

Allí vamos al menú Opciones->Ajuste de Audio (MIDI/RSE)... seleccionamos Timidity como dispositivo de salida MIDI y General MIDI como juego de instrumentos. Podemos jugar también con la Capacidad de los Buffers poniéndolos en un valor más alto (yo lo tengo en 2048) si notamos un sonido cortado o un poco laggeado. Para más información puedes visitar la página de soporte de Wine para Guitar Pro. Solo queda empezar a usarlo y disfrutar de secuencias MIDI con una excelente calidad xD

¿Y a tí, te sirvió esta receta?