Amarok/Manuel/Divers/Moodbar

From KDE Wiki Sandbox
< Amarok‎ | Manual‎ | Various
Revision as of 20:57, 8 April 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 (après avoir démarré
    which moodbar
    d'une console) — Pensez à configurer le paquetage Moodbar avec
    ./configure --prefix=`pkg-config --variable=prefix gstreamer-0.10`
  • La bibliothèque GStreamer 0.10 et les modules externes correspondants aux formats reconnaissables par Moodbar' . Une version dérivée basée sur GStreamer 1.0 est aussi disponible, voir ci-dessous.
  • 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 devraient installer automatiquement tous les modules externes GStreamer et FFTW en même temps que le paquetage Moodbar; 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.


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.2.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 instruction du fichier INSTALL .

Comme la version de Moodbar ci-dessus utilise aujourd'hui GStreamer 0.10 (obsolète) et que le lien original vers les sources ne répond plus, les sources ont été rechargés sur GitHub et une version dérivée supportant GStreamer 1.0 a été créée.

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

Paquetages Debian

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

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

Moodbar est disponible sous Portage, entrez simplement

emerge moodbar

Les ebuilds non officiels ne sont plus nécessaires.

Compilations RPM

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

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 simplemtent à l'aide de l'interface de votre PackageKit ou bien avec la commande yum suivante :

yum install moodbar
Paquetages openSUSE

openSUSE 11.0 et ultérieurs, installent automatiquement les paquetages suivants :

  • gstreamer-0_10-fluendo-mp3
  • gstreamer-0_10-plugins-base

En plus, si vos chansons contiennent des tags ID3, vous devez installer

  • gstreamer-0_10-plugins-good
Installation de Moodbar

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

Pour installer, ajouter le dépôt correspondant à votre version de openSUSE à YaST puis vérifiez que les paquetages suivants sont installés :

  • gstreamer-0_10-plugins-good
  • gstreamer-0_10-plugins-ugly
  • gstreamer-0_10-plugins-moodbar
  • mad

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

If you are using the Smart software management tool, add the channel by entering the following at the command line, remember to change the URL to match your version of openSUSE:

smart channel --add http://software.opensuse.org/download/home:/d7/openSUSE_10.2/home:d7.repo

Then enter

smart update home:d7

You can now install the required packages by

smart install gstreamer10-plugins-moodbar

Dependencies are resolved automatically.

Paquetages Mandriva

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

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

For more information about the AUR and working with PKGBUILDs, see the AUR User Guidelines.

FreeBSD

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

To install the port:

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

To add the package:

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

Alternatively if the above does not work, you may try:

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
Dead Links
The links are not available anymore. I don't know if it should be updated or deleted

There is another script at Github, which shows previews of the generated mood files on the command line while they are being generated. Read more about it at the author's blog.

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 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]
  • If you have multiple versions of GStreamer installed, make sure all of the required plugins are installed for version 0.10.* -- different versions cannot use each other's plugins.

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 0.10.* version of each plugin:

Extension Module externe nécessaire Commentaire
toutes gstreamer-0.10.*, 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