Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| timidity [Le 27/05/2007, 22:16] – adam0509 | timidity [Le 13/11/2025, 19:52] (Version actuelle) – +tag vétuste et warning krodelabestiole | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | {{tag> | ||
| + | |||
| + | ====== TiMiDiTy ====== | ||
| + | |||
| **Timidity** est un synthétiseur logiciel pour la prise en charge du MIDI. | **Timidity** est un synthétiseur logiciel pour la prise en charge du MIDI. | ||
| La commande '' | La commande '' | ||
| - | //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 | + | 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 |
| + | <note warning> | ||
| - | ===== Installation | + | ===== Pré-requis |
| + | |||
| + | * Disposer des [[: | ||
| + | * Disposer d'une connexion à Internet configurée et activée. | ||
| - | Cela fait un peu « jeu de piste », mais le mieux est de suivre la [[http:// | + | ===== Installation===== |
| + | Pour installer ce logiciel, il suffit d' | ||
| + | Vous aurez ensuite besoin d'un ensemble d' | ||
| - | ==== Sous Edgy ==== | + | Si vous souhaitez une interface graphique (par exemple GTK), il vous faut auparavant [[: |
| + | ===== Utilisation===== | ||
| + | ====En ligne de commande==== | ||
| + | Vous pouvez lire des fichiers midi grâce à cette commande : | ||
| + | Si tout se passe bien, vous devriez entendre une douce musique synthétique. Si vous rencontrez des problèmes, lisez la section [[# | ||
| - | Si vous avez une carte son avec synthétiseur intégré la manipulation est très simple, allez dans le **gestionnaire | + | ====Graphiquement==== |
| + | Lancez l' | ||
| - | Si vous utilisez XMMS installez aussi **xmms-midi**. | + | =====Configuration===== |
| + | ==== Mettre en place Timidity en tant que serveur MIDI ==== | ||
| - | Une fois cela fait vous pourrez lire des midi soit directement avec timidity en ligne de commande | + | Saisissez les commandes suivantes : < |
| - | < | + | sudo modprobe snd-seq-midi</ |
| - | ou | + | |
| - | < | + | |
| - | soit en lisant directement des fichier midi dans XMMS. | + | |
| + | Cela charge les modules manquants. | ||
| - | ===== Utilisation ===== | + | Puis entrez : < |
| - | Comme de nombreux logiciels sous linux, | + | Ça lance Timidity en tant que serveur MIDI et ouvre deux ports 128:0 et 128:1. |
| - | Il marche aussi comme plugin d' | + | |
| - | ==== Créer un lanceur ==== | ||
| - | Le paquet timidity que vous avez installé ne crée malheureusement pas (encore) de raccourci dans le menu Applications. Pour ce faire, lancer votre éditeur de texte préféré en mode administrateur, | + | Après avoir tapé ceci, les lecteurs midi devraient fonctionner. Vous pouvez ouvrir |
| - | < | + | pmidi -p 128:0 musique.mid |
| - | [Desktop Entry] | + | kmid musique.mid |
| - | Encoding=UTF-8 | + | |
| - | Name=Lecteur MIDI Timidity | + | |
| - | Comment=Joue les fichiers audio MIDI | + | |
| - | Exec=timidity -ig | + | |
| - | Terminal=false | + | |
| - | Type=Application | + | |
| - | StartupNotify=false | + | |
| - | MimeType=audio/ | + | |
| - | Categories=Application; | + | |
| - | Icon= | + | |
| - | # | + | |
| - | </ | + | |
| - | (Vous aurez noté les paramètres | + | Pour fermer Timidity, pressez Ctrl--c dans le terminal où il a été lancé. |
| - | Une fois ce fichier sauvegardé, | + | Lancer le serveur en tant que root peut améliorer les performances grâce aux priorités supérieures données au processus. |
| - | < | + | Notedit ou un autre éditeur de partitions peut alors être chargé et reconnaitre les ports MIDI. |
| - | dans le fichier ''/usr/share/applications/defaults.list'' | + | Si l'ordinateur est occupé, il est possible que vous entendiez des sauts ou que vous ayez des problèmes de latence. Cela peut être réglé grace à un patch de noyau temps-réel |
| - | ===== Timidity en serveur/ | ||
| - | Il faut lancer timidity de cette manière | ||
| - | < | + | ==== Démarrer automatiquement Timidity ==== |
| + | |||
| + | Il y a deux méthodes pour démarrer automatiquement Timidity. | ||
| + | * au démarrage de l' | ||
| + | * au démarrage de la session utilisateur : dans ce cas, seul l' | ||
| + | |||
| + | < | ||
| + | |||
| + | === Au démarrage de l' | ||
| + | |||
| + | Pour qu'il soit lancé au démarrage de l' | ||
| + | |||
| + | Optionnel : | ||
| + | Modifiez la ligne: < | ||
| + | en la remplaçant par : < | ||
| + | |||
| + | |||
| + | === Au démarrage de la session === | ||
| + | |||
| + | Le lancement au démarrage d'une session peut dépendre de votre [[environnements|environnement de bureau]]. Cette méthode fonctionne au moins sous [[unity|Unity]]. | ||
| + | |||
| + | Pour lancer Timidity au démarrage de la session, [[: | ||
| + | < | ||
| + | description " | ||
| + | start on desktop-start | ||
| + | task | ||
| + | script | ||
| + | # Démarrer le serveur timidity | ||
| + | / | ||
| + | end script | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | |||
| + | Pour fermer le serveur Timidity à la fin d'une session, | ||
| + | < | ||
| + | description " | ||
| + | start on session-end | ||
| + | task | ||
| + | script | ||
| + | # Arrêter les serveurs timidity | ||
| + | / | ||
| + | end script | ||
| + | </ | ||
| + | |||
| + | Il ne vous reste plus qu'à fermer votre session et à vous reconnecter. | ||
| + | ==== Réduire l' | ||
| + | |||
| + | Si Timidity utilise trop de ressources sur votre machine, [[: | ||
| + | < | ||
| + | opt EFresamp=l | ||
| + | opt EFvlpf=d | ||
| + | opt EFreverb=d | ||
| + | opt EFchorus=d | ||
| + | opt EFdelay=d | ||
| + | </ | ||
| + | **Note:** Gardez à l' | ||
| + | |||
| + | |||
| + | |||
| + | ==== Trouver et mettre en place une soundfont ==== | ||
| + | |||
| + | Que ce soit dans le cadre d'une synthèse matérielle ou logicielle, vous aurez besoin d'un // | ||
| + | |||
| + | > Un // | ||
| + | |||
| + | Si vous utilisez Timidity pour jouer des fichiers MIDI, vous pouvez installer le paquet **freepats** qui propose des sons de base. Toutefois, il existe d' | ||
| + | |||
| + | Exemples de soundfonts à télécharger : | ||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | * cherchez // | ||
| + | |||
| + | **Vous pouvez par exemple utiliser [[ftp:// | ||
| + | |||
| + | //Si// vous vous retrouvez avec un fichier se terminant par « .sfArk », sachez qu'il s'agit d'une // | ||
| + | |||
| + | ' | ||
| + | |||
| + | et vous obtiendrez votre .sf2! | ||
| + | Il est conseillé d' | ||
| + | |||
| + | Une fois votre // | ||
| + | |||
| + | soundfont / | ||
| + | |||
| + | <note importante> | ||
| + | |||
| + | Si vous utilisez la synthèse de votre carte son, lisez la section consacrée à cette façon de faire. | ||
| + | |||
| + | |||
| + | ==== Convertir un fichier midi en fichier audio ==== | ||
| + | |||
| + | Timidity permet également de convertir un fichier midi en fichier audio, grâce à l' | ||
| + | timidity -Ov fichier.mid | ||
| + | convertit fichier.mid en fichier.ogg. | ||
| + | |||
| + | D' | ||
| + | * -Ov ⇒ OGG Vorbis (.ogg) | ||
| + | * -Ow ⇒ RIFF Wav (.wav) | ||
| + | * -Ou ⇒ Sun Audio (.au) | ||
| + | * -Oa ⇒ AIIF (.aiff) | ||
| + | * -OF ⇒ FLAC (.flac) | ||
| + | * … | ||
| + | |||
| + | Tapez « man timidity » pour plus d' | ||
| + | |||
| + | |||
| + | ==== 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 [[: | ||
| + | |||
| + | Vous pouvez également définir Timidity comme lecteur par défaut des fichiers midi. Pour ce faire, insérez dans le le fichier **/ | ||
| + | |||
| + | |||
| + | ==== Timidity en serveur/ | ||
| + | |||
| + | Il faut lancer timidity de cette manière : | ||
| timidity -iA -B2,8 -Os -EFreverb=0& | timidity -iA -B2,8 -Os -EFreverb=0& | ||
| </ | </ | ||
| Ligne 70: | Ligne 188: | ||
| * timidity - le programme | * timidity - le programme | ||
| * -iA " | * -iA " | ||
| - | * -B2,8 = buffer | + | * -B2,8 = buffer |
| * -Os = " | * -Os = " | ||
| * -EFreverb=0& | * -EFreverb=0& | ||
| Ligne 76: | Ligne 194: | ||
| \\ | \\ | ||
| - | Pour un synthé jackd : | + | Pour un synthé |
| < | < | ||
| - | timidity -ir -B2,8 -Oj -EFreverb=0& | + | timidity -iA -B2,8 -Oj -EFreverb=0 |
| </ | </ | ||
| + | |||
| + | N' | ||
| + | |||
| + | < | ||
| + | killall timidity | ||
| + | </ | ||
| + | |||
| + | |||
| + | === Script === | ||
| + | |||
| + | Un petit script en bash pour se simplifier la vie : | ||
| + | |||
| + | <code bash> | ||
| + | #!/bin/bash | ||
| + | #script timserver par adam0509 | ||
| + | |||
| + | echo "Ce script permet de lancer/ | ||
| + | |||
| + | while [ 1 ]; do | ||
| + | |||
| + | while [ " | ||
| + | |||
| + | echo -e " | ||
| + | |||
| + | ps -A | grep midi | ||
| + | |||
| + | echo -ne " | ||
| + | |||
| + | 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/ | ||
| + | |||
| + | read nombre | ||
| + | |||
| + | done | ||
| + | |||
| + | if [ " | ||
| + | { | ||
| + | exit 0 | ||
| + | } | ||
| + | fi | ||
| + | |||
| + | if [ " | ||
| + | { | ||
| + | timidity -iA -B2,8 -Os -EFreverb=0& | ||
| + | sleep 4 | ||
| + | } | ||
| + | fi | ||
| + | if [ " | ||
| + | { | ||
| + | timidity -iA -B2,8 -Oj -EFreverb=0 | ||
| + | sleep 4 | ||
| + | } | ||
| + | fi | ||
| + | if [ " | ||
| + | { | ||
| + | killall timidity | ||
| + | } | ||
| + | fi | ||
| + | |||
| + | nombre=4 | ||
| + | |||
| + | done | ||
| + | </ | ||
| + | |||
| + | Recopier le contenu dans un fichier " | ||
| + | |||
| + | <code bash> | ||
| + | chmod u+x timserver ## donner la permission d' | ||
| + | sudo cp timserver / | ||
| + | timserver ## lancer le script | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Améliorer le rendu sonore de Timidity ==== | ||
| + | Pour améliorer le rendu sonore de Timidity, il est possible de charger d' | ||
| + | puis de [[: | ||
| + | < | ||
| + | # Disabling some of the Midi Controls can help with the CPU usage a lot. | ||
| + | # The same goes to the VLPF, sample anti-aliasing and effects such as | ||
| + | # reverb and chorus | ||
| + | |||
| + | # By default, try to use the instrument patches from freepats: | ||
| + | source / | ||
| + | |||
| + | # alternatively, | ||
| + | source / | ||
| + | #source / | ||
| + | </ | ||
| + | Vous pouvez également dé-commenter l' | ||
| + | |||
| + | Vous pouvez également tester d' | ||
| + | |||
| + | |||
| + | ==== Transformation Midi vers Audio ==== | ||
| + | |||
| + | Il est également possible de convertir un fichier midi en fichier audio. Pour cela, ouvrez un terminal et tapez par exemple : | ||
| + | < | ||
| + | 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' | ||
| + | |||
| + | **Petite astuce :** Vous en avez marre de devoir convertir vos fichiers un par un? Faites cd /chemin du fichier (ou ouvrir un terminal dans votre dossier) puis : < | ||
| + | |||
| + | ==== Script pour convertir un fichier MIDI vers un fichier audio ==== | ||
| + | Voici un petit script bash pour [[nautilus|Nautilus]] qui permet de convertir un ou plusieurs fichiers MIDI à l'aide du clic-droit, avec la possibilité de choisir le format de conversion. Il utilise les commandes données à la section précédente. Ce script dispose d'une interface graphique, créée à l'aide de [[zenity]] (il faut donc que ce programme soit installé dans le système, c'est le cas par défaut). | ||
| + | |||
| + | Copiez-coller le code suivant dans un nouveau document texte (à l'aide de [[gedit]], par exemple), puis enregistrez-le sous le nom **Convertir un fichier MIDI.sh** dans le dossier **~/ | ||
| + | |||
| + | <code bash># | ||
| + | # Convertit des fichiers midi en wav, dans le même répertoire | ||
| + | # Script by Eliastik | ||
| + | format=$(zenity --entry \ | ||
| + | --title=" | ||
| + | --entry-text=" | ||
| + | --text=" | ||
| + | if [ " | ||
| + | exit | ||
| + | fi | ||
| + | if [ -z " | ||
| + | format=" | ||
| + | fi | ||
| + | (numarg=0 | ||
| + | IFS=' | ||
| + | ' | ||
| + | for arg in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS | ||
| + | do | ||
| + | if [ $format = " | ||
| + | timidity -Ow " | ||
| + | elif [ " | ||
| + | timidity -OF " | ||
| + | elif [ " | ||
| + | timidity -Ov " | ||
| + | elif [ " | ||
| + | timidity -Oa " | ||
| + | elif [ " | ||
| + | timidity -Ou " | ||
| + | else | ||
| + | timidity -Ow " | ||
| + | fi | ||
| + | numarg=$numarg+1 | ||
| + | perc=$(( ($numarg/ | ||
| + | echo " | ||
| + | done) | zenity --progress --no-cancel --pulsate --title=" | ||
| + | zenity --info --text " | ||
| + | |||
| + | ===== Liens ===== | ||
| + | |||
| + | * **[[http:// | ||
| + | * **[[wp> | ||
| + | |||
