Amarok/Manuel/Divers/Moodbar

From KDE Wiki Sandbox
< Amarok‎ | Manual‎ | Various
Revision as of 10:57, 26 June 2018 by ChristianW (talk | contribs) (Created page with "Pour de grandes collections, cela peut prendre du temps! Notez que les moodbars n'apparaîssent dans '''Amarok''' tant que '''Amarok''' n'a pas rescanné les collections. Les...")

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
Latest release: moodbar-0.1.4.tar.gz — this is the Moodbar source package, which contains the Moodbar program (which generates .mood files from music files), and a GStreamer plugin that does the work. The Moodbar package needs GStreamer 1.0.* installed, plus the 1.0.* version of various plugins. Be sure to install the Moodbar package into the same prefix as GStreamer — follow the instructions in  the summary of requirements chapter. The 0.1.4 is a a fork of original 0.1.2 sources, updated to use GStreamer 1.0. The old 0.1.2 sources are not reliably available online any more, but packages might be still available for some 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
Note
This section contains old instructions for the GStreamer 0.10 based moodbar version 0.1.2, they might be outdated.

First of all, you need to add PLF repositories, so visit easyurpmi.zarb.org and add them to your repositories list. Then simply install the following packages:

  • 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 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.
  • If the Moodbar executable tells you that it can't find an element — i.e., it gives an error message like
    Could not create element of type fftwspectrum, please install it.
    — that usually means that you either don't have the required plugins installed (see the plugin list here), or that you didn't install the Moodbar package in the same prefix as GStreamer. If libmoodbar.so and libgstdecodebin.so are not in the same directory, then Moodbar is not installed in the same prefix as GStreamer. Please read the INSTALL file for instructions on how to configure the moodbar package correctly. Alternatively, if you know what you're doing, it may be easier for you to take a look at the GST_PLUGIN_PATH environment variable.
  • If you're wondering why the Moodbar isn't working, either not working at all or not working for a particular file, run the command below, where [file] is a music file:
    moodbar -o test.mood [file]
    To generate a test image preview, one can use the commandː
    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