Amarok / Manual / Różne / Moodbar

Jump to: navigation, search
This page is a translated version of the page Amarok/Manual/Various/Moodbar and the translation is 44% complete.

Other languages:
čeština • ‎dansk • ‎English • ‎français • ‎polski • ‎português do Brasil

Pasek nastroju

The Moodbar shows you the "mood" of a track, which you can then use to figure out when something interesting happens in the song.

In order for Amarok to display moodbars for your music, you will need the Moodbar program (see below for downloads and binary packages).

The Moodbar package requires GStreamer and various plugins depending on the filetypes you use (see Supported filetypes). You will not need the phonon-backend-gstreamer package to create .mood files.

There are two parts to the new Moodbar implementation: the Moodbar package, which contains a program that takes a music file and generates a .mood file, and support code in the Amarok source, which runs the binary and displays the Moodbar. The Moodbar package depends on the GStreamer libraries. Without the Moodbar package, Amarok cannot generate the moodbars for your music.

As an alternative, there is a new script which will create moodbar files for tracks in an Amarok playlist; this is an exception to the above. The script needs nothing but Amarok to work, but it only creates the .mood files as they are played in the Playlist.

The Moodbar is due to the work of Gavin Wood and Simon O'Keefe, who designed the algorithms; their original paper is here.

Wymagania

  • The Moodbar binary, in your PATH (it should be listed upon running
    which moodbar
    from a console) — Remember to configure the Moodbar package with
    ./configure --prefix=`pkg-config --variable=prefix gstreamer-0.10`
  • The GStreamer 0.10 library and plugins for the formats you want Moodbar to be able to analyse. A GStreamer 1.0 based fork is also available, see below.
  • The Fastest Fourier Transform In The West (fftw.org) FFTW library version 3.0 or above (at least single-precision floating point version - libfftw3f) — If your platform does not provide this for you or you need to compile your own version, remember to configure the FFTW package with
    ./configure --enable-single
  • A version of Amarok with a Use moods option in the General section of the configuration screen. This means 1.4.4 or higher in the 1.4 series or 2.2.2 or higher in the 2.x series.
Dialog-information.png
 
Information
Systems with package managers should automatically install the GStreamer plugins and FFTW along with the Moodbar package; this information is provided mostly for people who want or need to compile from source or manually install packages.


Sposób użycia

Currently .mood files must be generated manually. Amarok cannot do it for you. To do this for your entire collection, use the Moodbar File Generation Script described below.

To enable the display of moodbars in Amarok, activate it in the configuration: Settings -> Configure Amarok -> General -> Show Moodbar in Progress Slider. Moodbars should now appear in the track sliders in the player window and Playlist; there will also be a mood field that you may add to your playlist layouts.

Instalacja

Pliki źródłowe
Latest release: moodbar-0.1.2.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 0.10.* installed, plus the 0.10.* version of various plugins. Be sure to install the Moodbar package into the same prefix as GStreamer — follow the instructions in the INSTALL file.

As the Moodbar version above uses nowadays obsolete GStreamer 0.10 and the original source code link is dead, sources have been uploaded to GitHub and a forked version supporting GStreamer 1.0 has been developed.

Jeśli znajdziesz jakiekolwiek błędy, prosimy o raport na bugs.kde.org.

Pakiety Debiana
A package for Moodbar is now available in Debian unstable. Simply run
apt-get install moodbar
. You will likely also want to install gstreamer0.10-plugins-ugly, gstreamer0.10-plugins-good, and gstreamer0.10-plugins-bad for format support.
Pakiety dla Ubuntu oraz Kubuntu

A package for Moodbar is available in the official package repository; just ensure the universe section is activated (which should be default anyway). Just install the package moodbar with your preferred package manager (Kpackagekit, Aptitude, Adept, Synaptic). You will likely also want to install gstreamer0.10-plugins-ugly, gstreamer0.10-plugins-good, and gstreamer0.10-plugins-bad for format support.

Lub wklej poniższą linię w Firefoksie lub Konquerorze i wciśnij Enter.

apt://moodbar,gstreamer0.10-plugins-ugly,gstreamer0.10-plugins-good,gstreamer0.10-plugins-bad?section=universe?refresh=yep
Ebuildy Gentoo
Moodbar is available in Portage, simply
emerge moodbar
Unofficial ebuilds are no longer required.
Paczki RPM

If you are a rpm-based distro user, you can build a .rpm using rpmbuild with latest gstreamer-plugins-moodbar.spec. The binary package will be soon available for PLD-linux distro.

Fedora

In Fedora 7 and higher (up to 16 as of this writing) Moodbar is available in the default repositories. Simply install it with your PackageKit GUI or with the following yum command:

yum install moodbar
Pakiety openSUSE

openSUSE 11.0 and later, automatically install the following packages:

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

Also, if your songs contain ID3 tags, you must install

  • gstreamer-0_10-plugins-good
Moodbar Installation

1-Click Install for openSUSE 11. - just choose your version and installation procedure will do the rest:

To install, add the correct repository for your version of openSUSE to YaST then make sure the following packages are installed:

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

Jeśli potrzebujesz informacji na temat dodawania repozytoriów odwiedź openSUSE wiki.

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.
Pakiety Mandrivy

Po pierwsze musisz dodać repozytoria PLF. Wejdź na easyurpmi.zarb.org i dodaj je do swojej listy repozytoriów. Potem po prostu zainstaluj następujące pakiety:

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

There is a PKGBUILD for Moodbar in the Arch User Repository (AUR) available here.

Więcej informacji na temat AUR oraz używania PKGBUILDów w AUR User Guidelines.

FreeBSD

Port znajduje się audio/gstreamer-plugins-moodbar tutaj.

Aby zainstalować port:
cd /usr/ports/audio/gstreamer-plugins-moodbar/ && make install clean
Aby dodać pakiet:
pkg_add -r gstreamer-plugins-moodbar

Skrypt do generowania plików Moodbara

Poniżej znajduje się prosty skrypt basha, który doda pliki .mood do całej Twojej kolekcji. Dodaje on pliki do każdego pliku o odpowiednim rozszerzeniu w obecnym katalogu oraz wszystkich podkatalogach, zatem najlepiej jest uruchomić go w głównym katalogu z muzyką.

 1 #!/bin/bash
 2  DIR=${1:-.}
 3  LAST=~/.moodbar-lastreadsong
 4  C_RET=0
 5  
 6  control_c()        # run if user hits control-c
 7  {
 8    echo "" > "$LAST"
 9    echo "Exiting..."
10    exit
11  }
12  
13  if [ -e "$LAST" ]; then
14    read filetodelete < "$LAST"
15    rm "$filetodelete" "$LAST"
16  fi
17  exec 9< <(find "$DIR" -type f -regextype posix-awk -iregex '.*\.(mp3|ogg|flac|wma)') # you may need to add m4a and mp4
18  while read i
19  do
20    TEMP="${i%.*}.mood"
21    OUTF=`echo "$TEMP" | sed 's#\(.*\)/\([^,]*\)#\1/.\2#'`
22    trap 'control_c "$OUTF"' INT
23    if [ ! -e "$OUTF" ] || [ "$i" -nt "$OUTF" ]; then
24      moodbar -o "$OUTF" "$i" || { C_RET=1; echo "An error occurred!" >&2; }
25    fi
26  done <&9
27  exec 9<&-
28  
29  exit $C_RET

Skopiuj i wklej cały skrypt do pliku tekstowego o nazwie moodbar.sh w Twoim katalogu z muzyką i uruchom następujące komendy:

cd /path/to/music
 bash moodbar.sh

Gdyby powyższy sposób nie zadziałał, możesz spróbować:

chmod +x moodbar.sh
 ./moodbar.sh

Dla dużych kolekcji może to wymagać niezwykle długiego czasu! Pamiętaj, że paski nastroju nie pojawią się w Amaroku dopóki Amarok nie przeskanuje ponownie kolekcji. Utworzone pliki mood będą poprzedzone kropkami, lub będą plikami ukrytymi - pamiętaj o tym jeśli nie będziesz mógł znaleźć żadnego z nich.

Poniżej znajduje się oparta na powyższym skrypcie alternatywa dla procesorów wielordzeniowych:

 1 #!/bin/bash
 2  NUMCPU="$(grep ^processor /proc/cpuinfo | wc -l)"
 3  
 4  find . -type f -regextype posix-awk -iregex '.*\.(mp3|ogg|flac|wma)' | while read i ; do
 5  
 6         while [ `jobs -p | wc -l` -ge $NUMCPU ] ; do
 7                 sleep 0.1
 8         done
 9  
10         TEMP="${i%.*}.mood"
11         OUTF=`echo "$TEMP" | sed 's#\(.*\)/\([^,]*\)#\1/.\2#'`
12         if [ ! -e "$OUTF" ] ; then
13                 moodbar -o "$OUTF" "$i" &
14         fi
15  done
Flag-red.png
 
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.

Rozwiązywanie problemów

  • 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
  • If you are using the ffmpeg plugin to decode mp3s, you may also receive mysterious bus errors. The solution is to stop using the ffmpeg plugin, as it is extremely buggy — use mad instead.
  • 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.

Obsługiwane typy plików

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:

Filetype Required Plugin Note
All gstreamer-0.10.*, gst-plugins-base, gst-plugins-good
mp3 gst-plugins-mad (in gst-plugins-ugly) ffmpeg plugin has problems; do not use for 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

Zrzuty ekranu

Pasek nastroju w suwaku postępu w Amaroku 2



This page was last modified on 6 March 2018, at 06:00. Content is available under Creative Commons License SA 4.0 unless otherwise noted.