Jump to content

Amarok/Manuel/Divers/Moodbar

From KDE Wiki Sandbox
This page is a translated version of the page Amarok/Manual/Various/Moodbar and the translation is 100% complete.

La Moodbar (barre d'ambiance )

La Moodbar donne l' "ambiance" (mood) d'une piste, que vous pouvez ensuite utiliser pour signaler que quelquechose d'intéressant arrive dans la chanson.

Pour que Amarok affiche des barres d'ambiance pour votre musique, vous aurez besoin du programme Moodbar (voir ci-dessous pour le téléchargement et les paquetages binaires).

Le paquetage Moodbar nécessite GStreamer et des modules externes variés qui dépendent des types de fichiers que vous utilisez (voir les types de fichiers supportés). Vous n'aurez pas besoin du paquetage phonon-backend-gstreamer pour créer des fichiers .mood .

Il y a deux parties dans l'implémentation de la nouvelle Moodbar : le paquetage Moodbar , qui contient un programme qui prend en entrée un fichier de musique et qui génère un fichier .mood , et un interpréteur en source Amarok , qui exécute le binaire et affiche la Moodbar. Le paquetage Moodbar est lié aux bibliothèques GStreamer . Sans le paquetage Moodbar , Amarok ne peut pas générer les fichers moodbars de votre musique.

Comme palliatif, il existe un nouveau script qui peut créer les fichiers moodbar pour les pistes d'une liste de lecture (playlist) Amarok ; c'est une exception à ce qui a été dit plus haut. Le script n'a rien besoin d'autre que de Amarok pour s'exécuter, mais ne crée que les fichiers .mood comme ils figurent dans la Playlist.

Moodbar est le résultat du travail de Gavin Wood et de Simon O'Keefe, qui ont conçus les algorithmes; leur documentation initiale est ici.

Résumé des besoins

  • Le binaire de Moodbar , dans votre variable PATH (visualisé après avoir démarré
    which moodbar
    d'une console) — Pensez à configurer le paquetage Moodbar avec le bon chemin, c'est à dire compilez et installez avec les commandes
    ./autogen.sh --prefix=`pkg-config --variable=prefix gstreamer-1.0` && make && sudo make install
  • La bibliothèque GStreamer 1.0 et les modules externes correspondants aux formats reconnaissables par Moodbar' . (Une version antérieure basée sur GStreamer 0.10 est encore disponible pour quelques distributions)
  • La bibliothèque FFTW transformée de Fourier la plus rapide de l'ouest - Fastest Fourier Transform In The West - (fftw.org) version 3.0 ou supérieure (au moins en version flottant simple précision - libfftw3f) — si votre plateforme ne vous fournit pas cela ou bien si vous avez besoin de compiler votre propre version, vérifiez de bien paramètrer le paquetage FFTW avec
    ./configure --enable-single
  • Une version de Amarok avec une option Utiliser les moods dans la section Général de l'écran de configuration. Ce qui correspond à la version 1.4.4 ou supérieure pour les séries 1.4 ou bien 2.2.2 ou supérieure pour les séries 2.x .

Information

Les systèmes munis d'un gestionnaire de paquetage doivent installer automatiquement tous les modules externes GStreamer et FFTW en même temps que le paquetage Moodbar si disponibles; cette information est fournie souvent pour les personnes qui veulent ou qui ont besoin de recompiler les sources ou qui veulent faire une installation manuelle, ou si les instructions spécifiques à la distribution sont obsolètes et qu'aucun paquetage moodbar à jour n'est encore disponible.


Utilisation

Aujourd'hui les fichiers .mood doivent être générés la main. Amarok ne peut pas le faire pour vous. Pour appliquer cela à votre collection entière, utilisez le Script de génération de fichier Moodbar décrit ci-dessous.

Pour afficher les moodbars dans Amarok, activez-les dans la configuration : Paramètres -> Configurer Amarok -> Général -> Afficher Moodbar dans la barre de progression. Les Moodbars devraient maintenant apparaître sur les curseurs des pistes dans la fenêtre du lecteur et la liste de lecteur; il existe aussi un champ mood que vous pourrez ajouter à l'affichage des vos listes de lecture.

Installation

Téléchargement des sources
Dernière version: moodbar-0.1.4.tar.gz — ceci est le paquetage des sources de Moodbar, qui contient le programme Moodbar (pour générer les fichiers .mood à partir des fichiers de musique), et un module externe GStreamer qui réalise le travail. Le paquetage Moodbar nécessite d'avoir installé GStreamer 0.10.* , plus la version 0.10.* des différents modules externes. Vérifiez de bien installer le paquetage Moodbar sous le même préfixe que GStreamer — suivez les instructions du chapitre du résumé des besoins. La version 0.1.4 est une branche dérivée de la branche source originale 0.1.2 , mise à jour pour utiliser GStreamer 1.0. Les anciens sources 0.1.2 ne sont certainement plus disponibles en ligne, mais les paquetages devraient encore rester disponibles pour certaines distributions.

Si vous trouvez un bogue quelconque, veuillez ouvrir un ticket correspondant sur bugs.kde.org.

Paquetages Debian

Remarque

Cette section contient d'anciennes instructions pour la version 0.1.2 de moodbar basée sur GStreamer 0.10 ; elles peuvent être obsolètes.

Un paquetage de Moodbar est maintenant disponible pour Debian (instable). Lancez simplement

apt-get install moodbar

. Vous voudrez peut être aussi de la même manière installer gstreamer0.10-plugins-ugly , gstreamer0.10-plugins-good, et gstreamer0.10-plugins-bad pour les formats supportés.

Paquetages Kubuntu et Ubuntu

Remarque

Cette section contient d'anciennes instructions pour la version 0.1.2 de moodbar basée sur GStreamer 0.10 ; elles peuvent être obsolètes.

Un paquetage de Moodbar est disponible dans le dépôt officiel des paquetages; assurez-vous simplement que la section univers soit activée (ce qui devrait être de toute façon le cas par défaut). Installez simplement le paquetage moodbar avec votre gestionnaire d'installation préféré (Kpackagekit, Aptitude, Adept, Synaptic). De la même manière vous voudrez installer aussi gstreamer0.10-plugins-ugly, gstreamer0.10-plugins-good, et gstreamer0.10-plugins-bad pour la prise en charge du format.

Ou bien, pour installer, collez ceci dans Firefox ou Konqueror et appuyez sur Entrée.

apt://moodbar,gstreamer0.10-plugins-ugly,gstreamer0.10-plugins-good,gstreamer0.10-plugins-bad?section=universe?refresh=yep
Gentoo ebuilds

Remarque

Cette section contient d'anciennes instructions pour la version 0.1.2 de moodbar basée sur GStreamer 0.10 ; elles peuvent être obsolètes.

Moodbar est disponible sous Portage, entrez simplement

emerge moodbar

Les ebuilds non officiels ne sont plus nécessaires.

Compilations RPM

Remarque

Cette section contient d'anciennes instructions pour la version 0.1.2 de moodbar basée sur GStreamer 0.10 ; elles peuvent être obsolètes.

Si vous êtes un utilisateur des distributions basées sur rpm , vous pouvez construire un .rpm en utilisant rpmbuild avec le dernier gstreamer-plugins-moodbar.spec. Le paquetage binaire sera disponible prochainement pour la distribution PLD-linux .

Fedora

Remarque

Cette section contient d'anciennes instructions pour la version 0.1.2 de moodbar basée sur GStreamer 0.10 ; elles peuvent être obsolètes.

Dans Fedora version 7 et ultérieures (jusque 16 au moment où nous écrivons) Moodbar est disponible dans les dépôts par défaut. Installez le simplement à l'aide de l'interface de votre PackageKit ou bien avec la commande yum suivante :

yum install moodbar
Paquetages openSUSE

La version 0.1.4 basée sur GStreamer 1.0 est disponible dans le dépôt KDE:Extra pour openSUSE Leap 42.3 et les suivants. Une version 0.1.2 antérieure basées sur GStreamer 0.10 et également encore disponible dans le dépôt principal pour certaines versions openSUSE.

Pour plus de détails sur la manière d'ajouter des dépôts, voiyez le wiki openSUSE.


1-Cliquez sur Installer pour openSUSE - choisissez simplement votre version et la procédure d'installation fera le reste :


Paquetages Mandriva

Remarque

Cette section contient les anciennes instructions pour la version version 0.1.2 de moodbar basée sur GStreamer 0.10 - elles peuvent être obsolètes.

D'abord, vous devez ajouter les répertoires PLF, voir easyurpmi.zarb.org et les ajouter à la liste de vos dépôts. Ensuite installez simplement les paquetages suivants:

  • gstreamer0.10-moodbar
  • gstreamer0.10-plugins-ugly
  • gstreamer0.10-plugins-good
  • gstreamer0.10-plugins-bad
Archive Linux

Remarque

Cette section contient d'anciennes instructions pour la version 0.1.2 de moodbar basée sur GStreamer 0.10 ; elles peuvent être obsolètes.

Il existe un PKGBUILD pour Moodbar dans Arch User Repository (AUR) disponible here.

Pour plus d'informations concernant AUR et la manière de travailler avec les PKGBUILDs, voyez les instructions pour l'utilisateur d'AUR .

FreeBSD

Remarque

Cette section contient d'anciennes instructions pour la version 0.1.2 de moodbar basée sur GStreamer 0.10 ; elles peuvent être obsolètes.

Il y a un port : audio/gstreamer-plugins-moodbar ici.

Pour installer le port:

cd /usr/ports/audio/gstreamer-plugins-moodbar/ && make install clean

Pour installer le paquetage :

pkg_add -r gstreamer-plugins-moodbar

Script de génération de fichiers Moodbar

Voici un simple script bash qui ajoutera les fichiers .mood dans votre collection globale. Il ajoute les fichiers mood pour tous les fichiers qui ont les extensions correspondantes et qui sont dans le répertoire courant ainsi que dans tous ses sous-répertoires, aussi est-il préférable de le lancer à partir de la racine de votre répertoire de musique.

#!/bin/bash
 DIR=${1:-.}
 LAST=~/.moodbar-lastreadsong
 C_RET=0
 
 control_c()        # run if user hits control-c
 {
   echo "" > "$LAST"
   echo "Exiting..."
   exit
 }
 
 if [ -e "$LAST" ]; then
   read filetodelete < "$LAST"
   rm "$filetodelete" "$LAST"
 fi
 exec 9< <(find "$DIR" -type f -regextype posix-awk -iregex '.*\.(mp3|ogg|flac|wma)') # you may need to add m4a and mp4
 while read i
 do
   TEMP="${i%.*}.mood"
   OUTF=`echo "$TEMP" | sed 's#\(.*\)/\([^,]*\)#\1/.\2#'`
   trap 'control_c "$OUTF"' INT
   if [ ! -e "$OUTF" ] || [ "$i" -nt "$OUTF" ]; then
     moodbar -o "$OUTF" "$i" || { C_RET=1; echo "An error occurred!" >&2; }
   fi
 done <&9
 exec 9<&-
 
 exit $C_RET

Copiez et collez la partie ci-dessus dans un fichier texte appelé moodbar.sh dans votre répertoire de musique et exécutez les commandes suivantes:

cd /path/to/music
 bash moodbar.sh

Ou bien, si ce qui est décrit ci-dessus ne fonctionne pas, vous pouvez essayer :

chmod +x moodbar.sh
 ./moodbar.sh

Pour de grandes collections, cela peut prendre du temps! Notez que les moodbars n'apparaîssent pas dans Amarok tant que Amarok n'a pas rescanné les collections. Les fichiers mood générés le seront avec un point (i.e. devant le nom) , ou des fichiers cachés - rappelez-vous en si vous ne trouvez aucun fichier mood généré.

Basé sur le script ci-dessus, voici une variante pour les CPUs multi-coeurs :

#!/bin/bash
 NUMCPU="$(grep ^processor /proc/cpuinfo | wc -l)"
 
 find . -type f -regextype posix-awk -iregex '.*\.(mp3|ogg|flac|wma)' | while read i ; do
 
        while [ `jobs -p | wc -l` -ge $NUMCPU ] ; do
                sleep 0.1
        done
 
        TEMP="${i%.*}.mood"
        OUTF=`echo "$TEMP" | sed 's#\(.*\)/\([^,]*\)#\1/.\2#'`
        if [ ! -e "$OUTF" ] ; then
                moodbar -o "$OUTF" "$i" &
        fi
 done


Disfonctionnements

  • Si l'exécutable Moodbar renvoie un bus error, la plupart du temps cela signifie qu'il ne peut pas décoder (ou pas trouver) votre fichier. Vérifiez types de fichiers supportés ci-dessous pour savoir quels sont les modules externes GStreamer à installer. Vous pouvez aussi essayer la commande ci-dessous pour tester si GStreamer peut décoder votre fichier :
    gst-launch-1.0 filesrc location=[file] ! decodebin ! fakesink
  • Si vous utilisez le module externe ffmpeg pour décoder les fichiers mp3, vous pouvez obtenir de mystérieuses erreurs bus. La solution est d'arrêter d'utiliser le greffon ffmpeg , car il est très bogué — et d'utiliser mad à la place.
  • Si l'exécutable Moodbar indique qu'il ne peut pas trouver un élément — , par exemple en donnant un message d'erreur du genre :
    Impossible de créer l'élément de type fftwspectrum, veuillez l'installer.
    — cela signifie habituellement soit que vous n'avez pas installé le module externe indiqué (voir la liste desmodules externes ici), ou que vous n'avez pas installé le paquetage Moodbar dans le même préfixe que GStreamer. Si libmoodbar.so et libgstdecodebin.so ne sont pas dans le même répertoire, alors Moodbar n'est pas installé dans le même préfixe que GStreamer. Veuillez lire les instructions concernant la manière de configurer correctement le paquetage moodbar , dans le fichier INSTALL. Par ailleurs, si vous savez ce que vous faites, il peut être plus facile pour vous de vérifier la variable d'environnement GST_PLUGIN_PATH .
  • Si vous vous demandez pourquoi la Moodbar ne fonctionne pas, soit qu'elle ne fonctionne pas du tout, soit qu'elle ne fonctionne pas avec un type de fichier particulier, alors exécutez la commande ci-dessous où [file] est un fichier de musique :
    moodbar -o test.mood [file]
    Pour générer un aperçu d'une image de test, on peut utiliser simplement la commande :
    gst-launch-1.0 filesrc location=[file] ! decodebin ! audioconvert ! fftwspectrum ! moodbar height=50 max-width=300 ! pngenc ! filesink location=mood.png
  • Si vous avez de multiples versions de GStreamer installées, assurez-vous que tous les modules externes nécessaires sont installés pour les versions 1.0.* -- différentes versions ne peuvent pas utiliser les modules externes des autres.

Types de fichiers pris en charge

Vous aurez besoin des différents Gstreamer modules externes pour permettre à Moodbar d'analyser vos fichiers. Voici une liste des modules externes nécessaires; assurez-voous d'avoir installé la version 1.0.* de chacun d'eux :

Extension Module externe nécessaire Commentaire
toutes gstreamer-1.0.*, gst-plugins-base, gst-plugins-good
mp3 gst-plugins-mad (in gst-plugins-ugly) le module externe ffmpeg a des problèmes; ne pas l'utiliser sur le mp3
ogg gst-plugins-vorbis, gst-plugins-ogg
flac gst-plugins-flac
mp4 gst-plugins-faad, gst-plugins-bad
musepack gst-plugins-musepack
wma gst-plugins-ffmpeg

Captures d'écran

Barre de progression Moodbar de Amarok 2
Barre de progression Moodbar de Amarok 2