From Amarok Wiki
ATENCIÓN: Esta página no está actualizada, puesto que hace referencia a Amarok 2.2.x
Esta página necesita ser actualizada a Amarok 2.5.0
|
| Más imágenes de la barra de humor |
Contents |
La barra de humor
¡La barra de humor vuelve oficialmente en Amarok 2.2.2! Muestra el "humor" de una canción, lo que puedes usar para adivinar cuando va a suceder algo interesante en la misma.
Para que Amarok analice tu música y así crear barras de humor, necesitarás el programa moodbar (ver más abajo para descargas y archivos binarios). El paquete moodbar requiere gstreamer y varios plugins dependiendo de los tipos de archivo que utilices (visita la lista de #Tipos de archivo utilizables). No necesitas el motor Gstreamer de Phonon.
La barra de humor de Amarok 2.2.2 ha sido totalmente reescrita, y en esta nueva implementación se pueden distinguir dos partes: el paquete moodbar, que contiene un programa que analiza tu música y genera un archivo .mood; y código en las fuentes de Amarok, que al ejecutarse muestra la barra de humor. El paquete moodbar necesita las librerías GStreamer, y sin el paquete moodbar, Amarok no puede generar las barras de humor para tu música.
La barra de humor se debe originalmente a Gavin Wood y Simon O'Keefe, que diseñadon los algoritmos, y cuya publicación original se encuentra aquí. Esta reimplementación es gracias a QBob. Gracias también a gruen0 por sus ideas, código y mantenimiento del ebuild. Por último gracias a dangle por su ayuda buscando errores.
Requisitos del sistema
- Una versión de Amarok con la opción "Mostrar la barra de humor" en la sección General de la pantalla de configuración, es decir, versión 1.4.4 o superior en la serie 1.4, o 2.2.2 o superior en la serie 2.x. Debes marcar esta opción cuando hayas reunido el resto de requisitos.
- El binario Moodbar, en tu PATH ( se debe mostrar al ejecutar la orden "which moodbar" desde una consola) -- Recuerda configurar el paquete de moodbar con './configure --prefix=`pkg-config --variable=prefix gstreamer-0.10`'
- La librería GStreamer 0.10 y los plugins para los formatos que quieres que moodbar analice
- La librería "Fastest Fourier Transform In The West" FFTW (http://www.fftw.org) versión 3.0 o superior (al menos la versión single-precision floating point - libfftw3f) -- Recuerda configurar el paquete FFTW con './configure --enable-single'
Uso
Actualmente los archivos moodbar tienen que ser generados manualmente. Para hacer esto para tu colección al completo, utiliza el #Guión para generar archivos moodbar descrito más abajo.
Puedes activar las barras de humor en la configuración (Preferencias -> Configurar Amarok -> General -> Mostrar la barra de humor en la barra de progreso). Las barras de humor deberían aparecer ahora en la barra de progreso de la ventana del reproductor y en la lista de reproducción (puesto que existe el campo "Barra de humor" para configurar tus perfiles de la lista de reproducción).
Instalación
Descarga de fuentes
- Última versión: moodbar-0.1.2.tar.gz -- este es el código fuente del paquete moodbar, que contiene las fuentes del programa moodbar, (que es el que genera archivos .mood files para los archivos de música), y un plugin para GStreamer que hace el trabajo. El paquete moodbar requiere GStreamer 0.10.* instalado, además de las versiones 0.10.* de varios plugins. Asegurate de instalar el paquete moodbar en el mismo prefix que GStreamer -- sigue las instrucciones en el archivo INSTALL.
¡Por favor busca a QBob o gruen0 en el IRC y envíanos una captura de pantalla! Si encuentras cualquier fallo, por favor abre un informe de fallo en http://bugs.kde.org.
Paquetes para Debian
Un paquete de moodbar está disponible en Debian unstable. Simplemente ejecuta apt-get install moodbar. Puede que también quieras instalar gstreamer0.10-plugins-ugly, gstreamer0.10-plugins-good, y gstreamer0.10-plugins-bad para utilizar distintos formatos.
Paquetes para (K)ubuntu
Un paquete de moodbar está disponible en el repositorio oficial, tan solo tienes que asegurarte de que la sección Universe está activada (debería ser así por defecto). Simplemente instala el paquete 'moodbar' con tu gestor de programas favorito (Adept, Synaptic). Puede que también quieras instalar gstreamer0.10-plugins-ugly, gstreamer0.10-plugins-good, y gstreamer0.10-plugins-bad para utilizar distintos formatos.
O, para instalar, pega esto en firefox o konqueror y presiona enter.
apt://moodbar,gstreamer0.10-plugins-ugly,gstreamer0.10-plugins-good,gstreamer0.10-plugins-bad?section=universe?refresh=yep
Gentoo ebuilds
Moodbar está disponible en Portage (ahora mismo para ~amd64 y ~x86).
RPM builds
Si tu distribución está basada en RPM puedes construir un .rpm usando `rpmbuild` con el último gstreamer-plugins-moodbar.spec. El paquete binario debería estar disponible próximamente para la distribución en PLD-linux.
Contacta con vip para obtener ayuda sobre como construir el rpm.
Fedora
En Fedora 7 o superior (hasta la 12 a la hora de escribir este artículo) moodbar esta disponible en los repositorios por defecto. Simplemente instálalo con tu interfaz de PackageKit o con el siguiente comando para yum:
yum install moodbar
Paquetes para openSUSE
En openSUSE 11.0 y posterior, instalar automáticamente los siguientes paquetes
- gstreamer-0_10-fluendo-mp3
- gstreamer-0_10-plugins-base
Si tus canciones también tienen etiquetas ID3, debes instalar
- gstreamer-0_10-plugins-good
Instalación de moodbar
1-Click Install para openSUSE 11.* - simplemente escoge tu versión y la instalación hará el resto:
Si estás usando openSUSE 10.3 puedes usar los paquetes disonibles en el repositorio siguiente: http://software.opensuse.org/download/home:/d7/
Para instalar, añade el repositorio adecuado para tu versión de openSUSE en YaST (por ejemplo: si estás usando openSUSE 10.2, añade http://software.opensuse.org/download/home:/d7/openSUSE_10.2/(nota: enlace roto)a las fuentes de instalación de YaST) y luego asegúrate de que los siguientes paquetes estén instalados:
- gstreamer-0_10-plugins-good
- gstreamer-0_10-plugins-ugly
- gstreamer-0_10-plugins-moodbar
- mad
Para obtener más detalles sobre como añadir repositorios visita el wiki de openSUSE.
Si estás usando el gestor de software Smart, añade el siguiente canal introduciendo la siguiente orden en una consola, recordando cambiar la URL para ajustarse a tu versión de openSUSE: "smart channel --add http://software.opensuse.org/download/home:/d7/openSUSE_10.2/home:d7.repo". Luego teclea "smart update home:d7". Ahora puedes instalar los paquetes requeridos con la orden "smart install gstreamer10-plugins-moodbar". Las dependencias se resuelven automáticamente.
Paquetes para Mandriva
En primer lugar necesitas tener los repositorios PLF. Para añadirlos visita easyurpmi.zarb.org. Después, simplemente instala los siguientes paquetes:
- gstreamer0.10-moodbar
- gstreamer0.10-plugins-ugly
- gstreamer0.10-plugins-good
- gstreamer0.10-plugins-bad
FreeBSD
Hay un port en: audio/gstreamer-plugins-moodbar.
Para instalarlo: cd /usr/ports/audio/gstreamer-plugins-moodbar/ && make install clean
Para añadir el paquete: pkg_add -r gstreamer-plugins-moodbar
Guión para generar archivos moodbar
Había una utilidad para crear y manipular archivos moodbar, pero desafortunadamente el viejo enlace está roto y no soy capaz de encontrar una copia en ningún sitio. Así que, hasta que halla una solución mejor, aquí tienes un sencillo guión que genera los archivos .mood para toda tu colección. Añade archivos mood para todos los archivos con las extensiones adecuadas en el directorio actual y todos sus subdirectorios, así que es mejor ejecutarlo desde el directorio base de tu colección de música. Ahora, sin más preámbulos:
#!/bin/bash
DIR=${1:-.}
LAST=~/.moodbar-lastreadsong
C_RET=0
control_c() # run if user hits control-c
{
echo "$1" > "$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
Copia y pega lo de arriba en un archivo de texto llamado moodbar.sh en el directorio de la música y ejecuta la siguiente orden:
cd /ruta/a_la/música bash moodbar.sh
Como alternativa, si lo anterior no funciona, puedes probar:
chmod +x moodbar.sh ./moodbar.sh
¡Escanear grandes colecciones puede durar mucho tiempo! Ten en cuenta que las barras de humor no aparecerán en Amarok hasta que reescanee la colección. El archivo generado irá precedido de un punto, será un archivo oculto: tenlo en cuenta si no encuentras los archivos mood generados.
Basado en el guión anterior existe una alternativa para CPUs de varios 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
TODO: would it be possible to use hidden files (with leading dot) for this, because it would not clubber dir listings that much? Blueyed 18:31, 19 March 2010 (UTC)
TODO: I think this would be a great thing for an Amarok script: the script would look into the playlist and generate the moodbar information/file for the upcoming file(s). However, it seems that Amarok must get told to forget about any loaded meta info, before playing the file / after creating the file. Blueyed 18:31, 19 March 2010 (UTC)
Problemas
- Si el ejecutable moodbar devuelve "bus error", casi siempre significa que no puede decodificar (o no puede encontrar) tu archivo. Echa un vistazo a la sección Tipos de archivo utilizables más abajo para intentar averiguar que plugin para GStreamer es necesario instalar. También puedes probar el comando siguiente para verificar si GStreamer puede decodificar tu archivo:
gst-launch filesrc location=[file] ! decodebin ! fakesink
- Si estás usando el plugin ffmpeg para decodificar mp3s, puedes recibir misteriosos errores de bus. La solución es dejar de usar el plugin ffmpeg, puesto que es problemático -- usa mad en su lugar.
- Si el ejecutable moodbar dice que no puede encontrar un elemento -- por ejemplo, devulve un error como "Could not create element of type fftwspectrum, please install it." -- generalmente significa que o no tienes instalados los plugins requeridos (mira la lista de plugins aquí), o que no instalaste el paquete moodbar en el mismo prefix que GStreamer. Si libmoodbar.so and libgstdecodebin.so no están en el mismo directorio, entonces moodbar no esta instalado en el mismo prefix que GStreamer. Por favor, lee el archivo INSTALL para obtener instrucciones sobre como configurar el paquete moodbar correctamente. Alternativamente, si no sabes que estás haciendo, puede ser más sencillo que eches un vistazo a la variable GST_PLUGIN_PATH.
- Si te estás preguntando porque moodbar no está funcionando, tanto para todos como para algún archivo en particular, ejecuta el comando de abajo, donde [file] es un archivo de música:
moodbar -o test.mood [file]
- Si tienes distintas versiones de GStreamr instaladas, asegurate de que los plugins requeridos están instalados para la versión 0.10.* -- No se pueden intercambiar los plugins de diferentes versiones.
- En Gentoo, el plugin gst-plugins-mad-0.10.3 parece no funcionar, lo que implica que moodbar no podrá analizar tus archivos MP3. Instala gst-plugins-mad-0.10.4 en su lugar para que funcione.
Tipos de archivo utilizables
Necesitarás varios plugins de gstreamer para permitir que moodbar analice tus archivos. Aquí hay una lista de los plugins que necesitarás; asegurate de instalar las versiones 0.10.* de cada plugin:
- (Para todo)
- gstreamer-0.10.*, gst-plugins-base, y gst-plugins-good
- mp3
- gst-plugins-mad (en gst-plugins-ugly) -- el plugin ffmpeg tiene problemas, así que no lo uses para mp3s
- ogg
- gst-plugins-vorbis y gst-plugins-ogg
- flac
- gst-plugins-flac
- mp4
- gst-plugins-faad y gst-plugins-bad
- musepack
- gst-plugins-musepack
- wma
- gst-plugins-ffmpeg
Por favor corrige esta lista o avisa a gruen0 si crees que hay algo incorrecto.
