MOC - Music on console

Índice

1. Descripción
2. Instalación
3. Uso
4. Configuración
     4.1 Temas
     4.2 Enviar información a Last.fm
5. Aplicaciones similares
6. Referencias y aclaraciones


1. Descripción

No se discute que Amarok, es probablemente el mejor reproductor de audio y que en su versión 2.X se ve cada vez mejor. Pero MOC tiene algunas ventajas y características que hacen que más de uno se enamore de esta aplicación.

Características:

  • MOC es un reproductor de audio fácil de manejar y ligero, ideal para equipos con pocos recursos.
  • La interfaz es similar a MC (Midnight Commander, el administrador de archivos)
  • MOC reproduce todos los archivos en el directorio a partir del archivo seleccionado para lo que no es necesario crear listas de reproducción.
  • Es posible reproducir varios archivos o directorios de archivos y después guardar la lista de reproducción como un archivo con extensión m3u.
  • Funciona como demonio, es decir que se ejecuta en segundo plano por lo que no necesita entorno gráfico. Esto quiere decir también que si necesitas usar la terminal, el emulador de terminal ó cerrar el entorno gráfico no es necesario detener la reproducción ya que ésta sigue activa en segundo plano. Esto lo hace una gran opción para cuando estas configurando kdm, los drivers de la tarjeta de video o cosas por el estilo y por supuesto para manejadores de ventanas y entornos minimalistas
  • Soporta los siguientes formatos: mp3, Ogg Vorbis, FLAC, Musepack, Speex, WAVE, AIFF y AU entre otros.
  • Soporta Internet stream.
  • Soporta temas de configuración.

Veamos la descripción del paquete:

$ aptitude show moc
Paquete: moc
[...]
Sugiere: moc-ffmpeg-plugin
Descripción: Reproductor de sonido para consola en ncurses moc (música en la consola) es un reproductor de música a pantalla completa diseñado para ser potente y fácil de usar.

Los formatos que permite usar son: MP3, OGG Vorbis, FLAC, WAVE, SPEEX, Musepack (MPC), AIFF, AU, WMA (y otros formatos menos populares que libsndfile permite usar). Está en desarrollo el poder usar otros formatos.

Otras características: un mezclador sencillo, temas de colores, búsquedas en el menú (en la lista de reproducción actual o en un directorio) como M-s en Midnight Commander, la forma en la  que MOC crea los títulos de las canciones desde las etiquetas es configurable, conversión opcional del juego de caracteres de las etiquetas de los archivos usando iconv(), salida con OSS o  ALSA.

Página principal: http://moc.daper.net

2. Instalación

Tan sencillo como instalar cualquier otro paquete:

# aptitude install moc

3. Uso

El binario tiene el nombre mocp para evitar problemas con otras aplicaciones u otros sistemas.

La sintaxis es la siguiente:

$ mocp [OPCIONES] [ARCHIVO ...]

Las opciones principales son:

-c --clear
   Limpia la lista de reproducción.

-p --play
   Comienza a reproducir desde el primer elemento en la lista de reproducción.

-f --next
   Cambia al siguiente elemento en la lista de reproducción.

-r --previous
   Cambia al elemento anterior en la lista de reproducción.

-s --stop
   Detiene la reproducción.

-P --pause
   Pausa la reproducción.

-U --unpause
   Quita la pausa en la reproducción..

-G --toggle-pause
   Hace el cambio entre reproducir y pausa.

-T --theme
   Usa un tema específico. De no ser una ruta completa el archivo será buscado en /usr/share/moc/themes, ~/.moc/themes y en el actual directorio.

se puede lanzar sin parámetros para entrar a la interfaz de ncurses que puede parecer más amigable al usuario.

$ mocp

Del lado izquierdo tenemos el navegador de archivos y del derecho la lista de reproducción, se cambia entre una y otra usando la tecla de tabulación. A continuación en la parte inferior se encuentran el mensaje de información que muestra el estatus del reproductor, el volumen, el tiempo total de reproducción, la información sobre la pista, tiempo transcurrido, restante y total de la pista, los parámetros de sonido, opciones y la barra de reproducción.

Los accesos rápidos del teclado pueden verse presionando "h" y de estos enlistamos los que probablemente son los más utilizados:

q              Oculta la interfaz de ncurses
ENTER          Comienza la reproducción o entra al directorio
Q              Cierra la aplicación por completo
s              Detiene la reproducción
n              Reproduce el siguiente elemento
b              Reproduce el elemento anterior
p SPACE        Pausa
f              Cambia la opción de leer las etiquetas ó sólo nombrar el archivo
S              Activa/desactiva la reproducción aleatoria
R              Activa/desactiva el repetir la lista después de finalizada
X              Activa/desactiva el reproducir el siguiente elemento automáticamente
TAB            Cambia entre la lista de reproducción y el explorador de archivos
l              Muestra sólo el explorador de archivos ó la lista de reproducción
a              Agrega un archivo/directorio a la lista de reproducción
C              Limpia la lista de reproducción
A              Agrega un directorio recursivamente a la lista de reproducción
<              Decrementa el volumen en 1%
>              Incrementa el volumen en 1%
,              Decrementa el volumen en 5%
.              Incrementa el volumen en 5%
V              Guarda la lista de reproducción
x              Alterna los canales del mezclador

Para más detalles se recomienda leer el manual:

$ man moc

También funciona:

$ man mocp

4. Configuración

Directorio de configuración: ~/.moc

Archivo de configuración: ~/.moc/config
Éste archivo no es necesario para el uso de la aplicación pero sí lo es si queremos modificar las preferencias. No se crea por si mismo sino que hay que copiar el archivo desde /usr/share/doc/moc/examples/config.example.gz y descomprimir:

cp /usr/share/doc/moc/examples/config.example.gz ~/.moc/
cd ~/.moc/
gzip -d config.example.gz
mv config.example config

Está muy bien documentado y realmente los cambios son a gusto. En lo personal sólo he cambiado cuatro líneas y ha sido suficiente:

Repeat                  = yes
Shuffle                 = yes
Theme                   = yellow_red_theme
OnSongChange            = "/usr/lib/lastfmsubmitd/lastfmsubmit --artist %a --title %t --length %d --album %b"

4.1 Temas

Directorios por default para los archivos de temas: /usr/share/moc/themes y ~/.moc/themes

Es posible descargar temas de configuración aquí, ó editar uno nosotros mismos y guardarlo en uno de estos directorios.

Básicamente cada elemento tiene la siguiente estructura:

elemento                = color-de-texto    color-de-fondo    atributos

Los colores permitidos son: black, red, green, yellow, blue, magenta, cyan, white, default (sirve como transparencia) y grey.
Los atributos dan formato al texto y son:

  • normal - default (sin destacado)
  • standout - mejor salida
  • underline - subrayado
  • reverse - video inverso
  • blink - parpadeo
  • dim - medio brillo
  • bold - negrita
  • protect - modo protegido

Aquí un ejemplo documentado:

# Interfaz de ncurses
background = red default
frame = red default
window_title = yellow default underline,dim

# Archivos, directorios y listas de reproducción
directory = yellow default
selected_directory = yellow default underline
playlist = yellow default
selected_playlist = yellow default
file = yellow default
selected_file = yellow default underline

# Elemento que actualmente se está reproduciendo
marked_file = yellow default bold
marked_selected_file = red default bold,underline

# Estatus
info = yellow default
status = yellow default
title = yellow default
state = yellow default

# Tiempo
current_time = yellow default
time_left = yellow default
total_time = yellow default
time_total_frames = yellow default

# Parámetros de sonido
sound_parameters = yellow default
legend = yellow default
disabled = red default dim
enabled = yellow default bold

# Barra de Volumen
empty_mixer_bar = yellow red
filled_mixer_bar = red yellow

# Barra de reproducción
empty_time_bar = yellow default
filled_time_bar = default yellow

# Guardar lista de reproducción
entry = yellow default
entry_title = yellow default bold

# Mensajes
error = cyan default
message = yellow default

# Tiempo total de la lista de reproducción o directorio
plist_time = yellow default

Para asociar un tema por default hay que editar el archivo de configuración ~/.moc/config y editar la opción "Theme" de esta forma:

Theme                   = black_theme

donde en este caso black_theme es el nombre del archivo de tema que es buscado primeramente en /usr/share/moc/themes y de no encontrarse ahí en ~/.moc/themes.

Es posible usar temas sin necesidad de editar el archivo de configuración usando el parámetro "-T"

$ mocp -T tema_a_usar

lo cual es útil para probar e incluso comparar ya que de ésta forma se pueden usar diferentes temas al mismo tiempo.

4.2 Enviar información a Last.fm

Last.fm es una red social, una radio vía Internet y además un sistema de recomendación de música que construye perfiles y estadísticas sobre gustos musicales, basándose en los datos enviados por los usuarios registrados.

Para enviar la información de la música que estamos reproduciendo con MOC a nuestra cuenta de Last.fm es necesario usar el paquete lastfmsubmitd, para instalarlo:

# aptitude install lastfmsubmitd

donde al instalar hay que configurarlo con el nombre de usuario y contraseña de last.fm, el problema aquí es que la aplicación no ofrece una opción que verifique que ésta información es correcta pero si estamos seguros de estos datos no habrá problema.

Ahora sólo basta con configurar el archivo ~/.moc/config modificando ó agregando la siguiente línea:

OnSongChange = "/usr/lib/lastfmsubmitd/lastfmsubmit --artist %a --title %t --length %d --album %b"

Y eso es todo, ahora ya podremos ver en last.fm que estamos usando lastfm submit daemon, algo así:

Cabe aclarar que al cambiar de pista de reproducción la información de ésta es enviada automáticamente (por la opción "OnSongChange" que hemos editado) sin esperar a que se reproduzca un fragmento de la pista como sucede con otros reproductores de audio.

5. Aplicaciones similares

Music Player Daemon
Mp3Blaster

6. Referencias y aclaraciones

Referencias:
Página oficial: http://moc.daper.net/
Lastsubmitd: http://www.red-bean.com/decklin/lastfmsubmitd/

Este wiki está hecho con:

$ mocp -V
moc 2.5.0-alpha4 Build: Oct 10 2009 16:57:39
Compiled with: OSS ALSA JACK DEBUG internet streams resample

Distribución: Debian GNU/Linux Squeeze/sid
Manejador de ventanas: Fluxbox
Emulador de terminal: rxvt-unicode