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
# 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";
mplayer -shuffle -playlist ./Play\ Queue.pls;