Monday, May 9, 2011

The Geek way of playing Music

Many of you are like me. have huge music sitting on our hard drives and we just load it into our favourite media players and put it on shuffle. E.G. I have approx 4.4k English songs and similar amount of hindi songs. So I find using any GUI player difficult. I have tried many a media players but only a few can handle this big playlists (and that with shufffle). My current favourite Banshee also fails at this task, just gets horribly slow. So I thought a lot on this problem and knew that the GUI progs have to go. I'll have to use something consolar. I mean a console program will survive where all these heavyweights failed. I just need some music shuffled around and a one key next song function. I remembered of MPlayer - The Sweet Ultimate Console Media Player.
I rummaged around in man files etc and came out with ultimate solution. Yes! I would use mplayer, and a couple of options with it would give me exactly the solution that I need.
MPlayer with -playlist option supports playlists. So I created a playlist of all my songs using Banshee! Then I loaded this in mplayer with following command
mplayer -playlist Play_Queue.pls
where Play_Queue.pls is the name of playlist file. Add -shuffle parameter to this and shuffle is on.

Later I created a script by copying this command and named it music.sh and placed it on Desktop. So one click music playback - and it doesn't hog my processor. Just the functions I needed nothing else (Read No Bloatware, no unrequired features like fancy album art!).

There are few shortcuts with MPlayer that come handy.
9 0 : Volume + and - Resp.
up down : Move 1 Min forward and backward
left right : Move 10 sec forward and backward
Page up Page down : Next and Previous Item in the Playlist (This is the next I was earlier talking about - Pg Up and I hit next random song in my setup.)
p : Toggle Pause
m : Toggle Mute
[] : Decrease increase Playback speed
Backspace : Reset Playback speed (Handy if you accidently press [ or ])

Following is my music.sh shell script

#! /bin/bash
#  music.sh - check for Data partition and accordingly invoke mplayer to play the media

if(!(ls /media | grep DATA)) then
{
    echo "Please mount Data Partition";
}
else
{
    mplayer -shuffle -playlist ./Play\ Queue.pls;
}
fi

No comments:

Post a Comment