Índice
Os tópicos que não se encaixarem noutro local, como a Barra do Espírito, o Amarok noutras plataformas, a resolução de problemas, problemas comuns e a FAQ:
The Moodbar officially returns as of Amarok 2.2.2. It shows you the “mood” of a track, which you can then use to figure out when something interesting happens in the song.
Para o Amarok analisar s seus ficheiros de m´música para criar barras de espírito, irá necessitar do programa Moodbar (ver em baixo as transferências e os pacotes binários).
O pacote Moodbar necessita do GStreamer e de vários 'plugins' com base nos tipos de ficheiros que usar (veja os Tipos de ficheiros suportados). Não irá necessitar do pacote 'phonon-backend-gstreamer' para criar ficheiros '.mood'.
Existem duas partes da nova implementação do Moodbar: o pacote Moodbar, que contém um programa que recebe um ficheiro de música e gera um ficheiro '.mood', e código de suporte no código-fonte do Amarok, que executa o binário e mostra a barra de espírito. Este pacote depende das bibliotecas do GStreamer. Sem o pacote Moodbar, o Amarok não consegue gerar as barras de espírito da sua música.
Como alternativa, existe um novo programa que irá criar ficheiros do Moodbar para as faixas numa lista de reprodução do Amarok; esta é uma excepção ao descrito acima. O programa não precisa de nada, somente que o Amarok funcione, mas só cria os ficheiros '.mood' quando forem tocados na Lista de Reprodução.
O Moodbar é derivado do trabalho do Gavin Wood e do Simon O'Keefe, que desenharam os algoritmos; a sua publicação original está aqui.
O binário do Moodbar, na sua PATH (deverá aparecer se executar o comando ,
which moodbar
numa consola) — Lembre-se de configurar o Moodbar com o./configure --prefix=`pkg-config --variable=prefix gstreamer-0.10`
A biblioteca do GStreamer 0.10 e os 'plugins' dos formatos onde deseja que o Moodbar possa analisar.
A biblioteca Fastest Fourier Transform In The West (http://www.fftw.org) FFTW na versão 3.0 ou superior (pelo menos a versão de vírgula flutuante de precisão simples - libfftw3f) — Se a sua plataforma não tiver este suporte, ou caso precise de compilar a sua própria versão, lembre-se de configurar o pacote FFTW com o comando
./configure --enable-single
Uma versão do Amarok com a opção Usar os estados de espírito na secção Geral do ecrã de configuração. Isso corresponde às versões 1.4.4 ou posteriores na série 1.4 ou à 2.2.2 ou posteriores na série 2.x.
Nota
Os sistemas com gestores de pacotes deverão instalar automaticamente os 'plugins' do GStreamer e o FFTW em conjunto com o Moodbar; esta informação só é fornecida para as pessoas que precisem de compilar do código ou instalar manualmente os pacotes.
De momento, os ficheiros '.mood' deverão ser gerados manualmente. Para o fazer para a sua colecção inteira, use o Programa de Geração de Ficheiros do Moodbar, descrito em baixo.
Para activar a visualização das barras de espírito no Amarok, active-as na configuração: → → → . Estas barras deverão agora aparecer nas barras da faixa na janela do leitor e na janela da Lista de reprodução; existirá também um campo de espírito que poderá adicionar às suas disposições da lista de reprodução.
Última versão: moodbar-0.1.2.tar.gz -- este é o pacote de código do Moodbar, que contém o programa Moodbar (que gera ficheiros '.mood' a partir dos ficheiros de música) e um 'plugin' do GStreamer que faz o resto do trabalho. O pacote Moodbar necessita do GStreamer 0.10.* instalado, para além da versão 0.10.* de vários 'plugins'. Certifique-se que instala o pacote Moodbar no mesmo prefixo que o GStreamer — siga as instruções no ficheiro INSTALL.
Se descobrir algum erro, por favor envie um relatório de erros para o bugs.kde.org.
Está disponível agora um pacote do Moodbar para o Debian instável. Basta executar apt-get install moodbar
. Provavelmente terá de instalar os pacotes 'gstreamer0.10-plugins-ugly', 'gstreamer0.10-plugins-good' e 'gstreamer0.10-plugins-bad' para suportar o formato.
Está disponível um pacote do Moodbar no repositório de pacotes oficial: basta garantir que a secção do Universe está activa (como deverá estar por omissão). Basta instalar o pacote 'moodbar' com o seu gestor de pacotes preferido (KPackageKit, Aptitude, Adept, Synaptic). Provavelmente também irá querer instalar o 'gstreamer0.10-plugins-ugly', o 'gstreamer0.10-plugins-good' e o 'gstreamer0.10-plugins-bad' para um suporte de vários formatos.
Ou, para o instalar, cole isto no Firefox ou Konqueror e carregue em Enter.
apt://moodbar,gstreamer0.10-plugins-ugly,gstreamer0.10-plugins-good,gstreamer0.10-plugins-bad?section=universe?refresh=yep
O Moodbar está disponível no Portage; basta executar o emerge moodbar
. Os pacotes não oficiais já não são necessários.
Se for um utilizador de uma distribuição baseada no RPM, poderá compilar um .rpm com o comando 'rpmbuild'
gstreamer-plugins-moodbar.spec. O pacote binário ficará disponível em breve para a distribuição PLD-linux.
No Fedora 7 e superiores (até ao 16, na altura em que este documento foi escrito), o Moodbar está disponível nos repositórios predefinidos. Basta instalá-lo com a interface do PackageKit ou com o seguinte comando do 'yum':
yum install moodbar
No openSUSE 11.0 e posteriores, instale automaticamente os seguintes pacotes:
gstreamer-0_10-fluendo-mp3
gstreamer-0_10-plugins-base
Da mesma forma, se as suas músicas tiverem marcas ID3, deverá instalar
gstreamer-0_10-plugins-good
1-Carregue em 'Instalar' no openSUSE 11.* - basta escolher a sua versão e o procedimento de instalação fará o resto:
Para instalar, adicione o repositório correcto para a sua versão do openSUSE no YaST, certificando-se que os seguintes pacotes são instalados:
gstreamer-0_10-plugins-good
gstreamer-0_10-plugins-ugly
gstreamer-0_10-plugins-moodbar
mad
Para mais detalhes sobre a adição de repositórios, veja a Wiki do openSUSE.
Se estiver a usar a ferramenta de gestão de aplicações Smart, adicione o canal seguinte na linha de comandos, alterando o URL para corresponder à sua versão do openSUSE: smart channel --add http://software.opensuse.org/download/home:/d7/openSUSE_10.2/home:d7.repo
. Depois indique smart update home:d7
Agora poderá instalar os pacotes necessários com o comando smart install gstreamer10-plugins-moodbar
As dependências são resolvidas automaticamente.
Primeiro que tudo, terá de adicionar os repositórios PLF; para isso, vá a easyurpmi.zarb.org e adicione-os à sua lista de repositórios.
Depois, instale simplesmente os seguintes pacotes:
gstreamer0.10-moodbar
gstreamer0.10-plugins-ugly
gstreamer0.10-plugins-good
gstreamer0.10-plugins-bad
Existe um PKGBUILD para o Moodbar no Arch User Repository (AUR), que está disponível aqui.
Para mais informações sobre o AUR e como lidar com os PKGBUILD's, veja as Recomendações dos Utilizadores do AUR.
Existe aqui uma versão: audio/gstreamer-plugins-moodbar.
Para instalar essa versão: cd /usr/ports/audio/gstreamer-plugins-moodbar/ && make install clean
Para adicionar o pacote: pkg_add -r gstreamer-plugins-moodbar
Aqui está um programa simples em Bash que irá adicionar os ficheiros .mood a toda a sua colecção. Irá adicionar ficheiros '.mood' para todos os ficheiros que corresponderem às extensões na pasta actual e a todas as sub-pastas, pelo que será melhor executá-lo a partir da base da sua pata de músicas.
#!/bin/bash DIR=${1:-.} LAST=~/.moodbar-lastreadsong C_RET=0 control_c() # executar se o utilizador carregar em Control-C { echo "" > "$LAST" echo "A sair..." 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)') # poderá ter de adicionar o m4a e mp4 while read i do TEMP="${i%.*}.mood" OUTF=`echo "$TEMP" | sed 's#\(.*\)/\([^,]*\)#\1/.\2#'` trap 'control_c "$OUTF"' INT if [ ! -e "$OUTF" ] moodbar -o "$OUTF" "$i" fi done <&9 exec 9<&- exit $C_RET
Copie e cole o texto acima num ficheiro de texto chamado 'moodbar.sh' na sua pasta de música e execute os seguintes comandos:
cd /local/da/música bash moodbar.sh
Em alternativa, se a versão anterior não funcionar, poderá tentar:
chmod +x moodbar.sh ./moodbar.sh
Isto poderá levar bastante tempo para colecções grandes! Repare que as barras do estado de espírito não irão aparecer no Amarok até que este volte a sondar a colecção. Os ficheiros '.mood' gerados serão ficheiros com ponto (isto é, antecedidos de um ponto final) ou ficheiros escondidos - por isso, tenha isso em mente se não os conseguir encontrar.
Baseado no seguinte programa, uma alternativa para CPU's com vários núcleos:
#!/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
Existe outro programa no Github, que mostra antevisões dos ficheiros '.mood' gerados na linha de comandos, enquanto são gerados. Leia mais sobre o assunto no 'blog' do autor.
Se o executável Moodbar lhe devolver um bus error (erro de barramento), isso significa quase de certeza que não consegue descodificar (ou encontrar) o seu ficheiro. Dê uma vista de olhos nos tipos de ficheiros suportados para obter algumas ideias de quais os 'plugins' do GStreamer a instalar. Poderá também tentar o comando abaixo para testar se o GStreamer consegue descodificar o seu ficheiro:
gst-launch filesrc location=[ficheiro] ! decodebin ! fakesink
Se estiver a usar o 'ffmpeg' para descodificar os MP3's, poderá adicionar erros de barramento misteriosos. A solução é parar de usar o 'ffmpeg', dado que é extremamente instável — use o 'mad' em alternativa.
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.Se não souber porque é que o Moodbar não está a funcionar parcialmente ou de todo para um dado ficheiro, execute o comando abaixo, onde o [ficheiro] é um ficheiro de música qualquer:
moodbar -o teste.mood [ficheiro]
Se tiver várias versões do GStreamer instaladas, certifique-se que todos os 'plugins' necessários estão instalados para a versão 0.10.* -- outras versões diferentes não podem usar os 'plugins' desta.
Irá necessitar de vários 'plugins' do GStreamer para activar o Moodbar para análise dos seus ficheiros. Aqui está uma lista com os 'plugins' que irá necessitar; certifique-se que instala a versão 0.10.* de cada 'plugin':
Tipo de Ficheiro | 'Plugin' Necessário | Nota |
---|---|---|
Todos |
gstreamer-0.10.*, gst-plugins-base, gst-plugins-good | |
MP3 |
gst-plugins-mad (no 'gst-plugins-ugly') |
O 'plugin' 'ffmpeg' tem problemas; não use para o '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 |