Amarok/Manuel/Divers/Moodbar

From KDE UserBase Wiki
Revision as of 20:58, 22 May 2018 by ChristianW (talk | contribs)

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

GStreamer 1.0 based version 0.1.4 is available in KDE:Extra repository for openSUSE Leap 42.3 and later. An earlier GStreamer 0.10 based version 0.1.2 is also still available in the main repository for some openSUSE versions.

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

Here is a simple bash script that will add .mood files to your entire collection. It adds mood files for all files matching the extensions in the current directory and all subdirectories, so it's best run from the base of your music directory.

#!/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

Copy and paste the above into a text file named moodbar.sh in your music directory and run the following commands:

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

This may take a very long time for large collections! Note that the moodbars will not appear in Amarok until Amarok rescans the collection. The generated mood files will be dotfiles (i.e., prefixed with a full stop), or hidden files - so keep this in mind if you can't find any generated mood files.

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

  • If the Moodbar executable gives you a bus error, that almost always means it can't decode (or can't find) your file. Take a look at the supported file types below for ideas on which GStreamer plugins to install. You can also try the command below to test whether GStreamer can decode your file:
    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

You will need various Gstreamer plugins to enable Moodbar to analyze your files. Here is a list of the plugins you will need; make sure to install the 1.0.* version of each plugin:

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