Archive for June 13th, 2010

Moc – The terminal music player for all your needs.

For terminal junkies, music players often come as a small trouble, you never
find a good ncurses based player that’ll offer all the functionality of a GUI
based music player ( of course the GUI player is amarok! ).

To name a few, global shortcuts is almost always  absent, and more importantly,
the concept of a play queue is absent in many. I recently found that MOC
supports queuing, and well, an easy way to control it using krunner. So yAy!

Here’s a small description of MOC and a quick-use cheat-sheet:

From terminal, the command “mocp” fires up the ncurses interface(and starts the
server), its themeable, can generate, save and load playlists and provides a
directory/file listing to enable the same. It also starts playing files from a
directory if you simply navigate to the directory and play the first file.
Read more here.

Now, that’s pretty much the functionality of many terminal based players. What
makes MOC awesome is that it supports queuing.
Plus, I find the interface very _usable_. What more, its key mapping can be
completely customized.

Commands within MOC are really intuitive, you can simply open it and start
using it, press h to display the current key mapping if you are unable to figure
something.

Now, for the seamless “global” control: I realised, instead of having to
navigate to the mocp window or fire up a new shell to control the player, you
can control it with krunner. So, just Alt+F2, and use the following commands for
controls:
mocp followed by

-q –enqueue Add the files given on command line to the queue.
-p –play Start playing from the first item on the playlist.
-l –playit Play files given on command line without modifying the
playlist.
-s –stop Stop playing.
-f –next Play next song.
-r –previous Play previous song.
-x –exit Shutdown the server.
-G –toggle-pause Toggle between play/pause.
-v –volume (+/-)LEVEL Adjust PCM volume.
-k –seek N Seek by N seconds (can be negative).
-j –jump N{%,s} Jump to some position of the current track.
-o –on <controls> Turn on a control (shuffle, autonext, repeat).
-u –off <controls> Turn off a control (shuffle, autonext, repeat).
-t –toggle <controls> Toggle a control (shuffle, autonext, repeat).

I don’t about anyone else, but I found this pretty cool, I don’t have to shift
to a new shell and still be able to do everything that I can with the player
interface.
That’s it for now, signing off.