Ceci est une ancienne révision du document !
TiMiDiTy
Timidity est un synthétiseur logiciel pour la prise en charge du MIDI.
La commande man timidity
offre une bonne documentation ; le programme y est ainsi décrit :
TiMidity++ convertit des fichiers MIDI en Wave et joue ces derniers. Les formats MIDI supportés sont : fichiers au Standard MIDI (*.mid), fichier Recomposer (*.rcp, *.r36) et les fichiers Module (*.mod). Les fichiers obtenus après conversion sont formatés, par exemple en RIFF WAVE. TiMidity++ utilise des patches compatibles Gravis Ultrasound ou des Soundfonts (*.sfx, *.sf2) pour générer les données audio digitales à partir des fichiers MIDI. Les données générées par TiMidity++ peuvent être stockées dans un fichier en vue d'un traitement ultérieur, ou jouées en temps réel dans un lecteur audio. Lors d'une lecture en temps réel, TiMitidy++ peut afficher les paroles éventuellement stockées dans les fichiers KAR ou WRD.
Installation
Cela fait un peu « jeu de piste », mais le mieux est de suivre la page consacrée à la prise en charge du MIDI afin d'installer Timidity sur Ubuntu (toutes versions). Des optimisations en terme de sons et de performances y sont par ailleurs proposées.
Sous Edgy
Si vous avez une carte son avec synthétiseur intégré la manipulation est très simple, il suffit d' installer le paquet timidity.
Si vous utilisez XMMS installez aussi xmms-midi.
Si vous utilisez Audacious, il faut installer le paquet packet audacious-plugins-extra, puis indiquer le fichier de configuration de timidity : "/etc/timidity/timidity".
Une fois cela fait vous pourrez lire des midi soit directement avec timidity en ligne de commande :
timidity <nom_fichier>
ou
timidity <dossier>
soit en lisant directement des fichier midi dans XMMS.
Sous Gutsy
Si vous avez une carte son avec synthétiseur intégré la manipulation est très simple, il faut installer les paquets timidity et timidity-interfaces-extra
Utilisation
Comme de nombreux logiciels sous linux, Timidity peut être utilisé soit en ligne de commande, soit via une interface graphique.
Applications→Son et vidéo→TiMidity++ MIDI sequencer
Il marche aussi comme plugin d'entrée pour XMMS.
Créer un lanceur
Le paquet timidity que vous avez installé ne crée malheureusement pas (encore) de raccourci dans le menu Applications sauf si vous avez installé le paquet timidity-interfaces-extra
Dans ce cas il faut créer un raccourci dans Applications→Son et vidéo→TiMidity++ MIDI sequencer
Pour ce faire, lancer votre éditeur de texte préféré en mode administrateur, (alt+F2, commande « gksudo gedit
», par exemple), ou passez par un terminal en utilisant sudo
. Il s'agit de créer le fichier /usr/share/applications/timidity.desktop
et d'y insérer :
[Desktop Entry] Encoding=UTF-8 Name=Lecteur MIDI Timidity Comment=Joue les fichiers audio MIDI Exec=timidity -ig Terminal=false Type=Application StartupNotify=false MimeType=audio/midi; Categories=Application;AudioVideo; Icon= #NoDisplay=true
(Vous aurez noté les paramètres -ig qui lancent l'interface graphique.)
Une fois ce fichier sauvegardé, vous pouvez également définir Timidity comme lecteur par défaut des fichiers midi. Pour ce faire, insérez :
audio/midi=timidity.desktop
dans le fichier /usr/share/applications/defaults.list
(ou modifier la ligne audio/midi=
si elle existe déjà).
Timidity en serveur/synthétiseur
Il faut lancer timidity de cette manière
timidity -iA -B2,8 -Os -EFreverb=0&
avec :
- timidity - le programme
- -iA "Launch TiMidity++ as ALSA sequencer client."
- -B2,8 = buffer (personnellement je préfère utiliser "-B4,8", cela donne de meilleurs résultats !!)
- -Os = "Output to alsa"
- -EFreverb=0& "mode" + "Effect" + "Disable MIDI reverb effect control"
Pour un synthé jackd (pour rosegarden par exemple) :
timidity -iA -B2,8 -Oj -EFreverb=0
N'oubliez pas de tuer timidity quand vous l'avez fermé :
killall timidity
Script
Un petit script en bash pour se simplifier la vie :
#!/bin/bash #script timserver par adam0509 echo "Ce script permet de lancer/arreter facilement timidity en mode serveur" while [ 1 ]; do while [ "$nombre" != "0" ] && [ "$nombre" != "1" ] && [ "$nombre" != "2" ] && [ "$nombre" != "3" ]; do echo -e "\n\n\n==== Liste des processus lancé en rapport avec le midi :" ps -A | grep midi echo -ne "\n\n==== Que voulez-vous faire ?" echo -e "\n0) Ne rien faire (Quitter le programme)" echo "1) Lancer timidity (serveur) en mode ALSA" echo "2) Lancer timidity (serveur) en mode ALSA avec sortie JACK" echo "3) Arréter/Tuer timidity" read nombre done if [ "$nombre" = "0" ]; then { exit 0 } fi if [ "$nombre" = "1" ]; then { timidity -iA -B2,8 -Os -EFreverb=0& sleep 4 } fi if [ "$nombre" = "2" ]; then { timidity -iA -B2,8 -Oj -EFreverb=0 sleep 4 } fi if [ "$nombre" = "3" ]; then { killall timidity } fi nombre=4 done
Recopier le contenu dans un fichier "timserver", rendez-le exécutable, double-cliquez dessus et faites "Lancer dans un terminal". Vous pouvez aussi le copier dans /usr/local/bin :
chmod u+x timserver ## donner la permission d'exécution sudo cp timserver /usr/local/bin ## le copier dans le dossier des exécutables timserver ## lancer le script
Transformation Midi vers Audio
Il est egalement possible de transformer vos fichiers midi en fichiers audios. Pour cela, ouvrez un terminal et tapez par exemple :
timidity -Ov fichier.mid
Timidity convertira alors fichier.mid en fichier.ogg.
Vous pouvez également le faire en utilisant les options suivantes :
- -Ov ⇒ OGG Vorbis (.ogg)
- -Ow ⇒ RIFF Wav (.wav)
- -Ou ⇒ Sun Audio (.au)
- -Oa ⇒ AIIF (.aiff)
- -OF ⇒ FLAC (.flac)
Tapez « man timidity » pour plus d'informations.