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 25/12/2007, 21:21] – pierre_lenain | timidity [Le 26/12/2017, 18:53] (Version actuelle) – Eliastik | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | {{tag> | ||
| + | |||
| + | ---- | ||
| + | |||
| + | ====== TiMiDiTy ====== | ||
| + | |||
| + | **Timidity** est un synthétiseur logiciel pour la prise en charge du MIDI. | ||
| + | |||
| + | 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 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. | ||
| + | |||
| + | ===== Pré-requis ===== | ||
| + | |||
| + | * Disposer des [[: | ||
| + | * Disposer d'une connexion à Internet configurée et activée. | ||
| + | |||
| + | ===== Installation===== | ||
| + | |||
| + | |||
| + | Pour installer ce logiciel, il suffit d' | ||
| + | |||
| + | Vous aurez ensuite besoin d'un ensemble d' | ||
| + | |||
| + | 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 [[# | ||
| + | |||
| + | ====Graphiquement==== | ||
| + | Lancez l' | ||
| + | |||
| + | =====Configuration===== | ||
| + | ==== Mettre en place Timidity en tant que serveur MIDI ==== | ||
| + | |||
| + | Saisissez les commandes suivantes : | ||
| + | sudo modprobe snd-seq-midi</ | ||
| + | |||
| + | Cela charge les modules manquants. | ||
| + | |||
| + | Puis entrez : < | ||
| + | |||
| + | Ça lance Timidity en tant que serveur MIDI et ouvre deux ports 128:0 et 128:1. | ||
| + | |||
| + | |||
| + | Après avoir tapé ceci, les lecteurs midi devraient fonctionner. Vous pouvez ouvrir un autre terminal et essayer des commandes comme : | ||
| + | |||
| + | pmidi -p 128:0 musique.mid | ||
| + | kmid musique.mid | ||
| + | |||
| + | Pour fermer Timidity, pressez Ctrl--c dans le terminal où il a été lancé. | ||
| + | |||
| + | 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. | ||
| + | |||
| + | Si l' | ||
| + | |||
| + | |||
| + | |||
| + | ==== 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& | ||
| + | </ | ||
| + | |||
| + | avec : | ||
| + | |||
| + | * timidity - le programme | ||
| + | * -iA " | ||
| + | * -B2,8 = buffer (personnellement je préfère utiliser " | ||
| + | * -Os = " | ||
| + | * -EFreverb=0& | ||
| + | |||
| + | \\ | ||
| + | |||
| + | Pour un synthé [[:jackd]] (pour [[: | ||
| + | |||
| + | < | ||
| + | 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> | ||
| + | |||
