[UPDATE 13/Feb/2014: To assist with packaging and resolve a nameclash with other software, this program has been renamed from pms to mps]
[UPDATE 3/Feb/2014 - see mps-youtube for accessing youtube content]
- Search and stream music
- Create playlists
- Download music
- Works with Python 2.7 and 3.x
- Works with Windows, Linux and Mac OS X
- No Python dependencies
- Requires mplayer
Using pip:
sudo pip install mps
Using git:
git clone https://github.com/np1/mps.git
Manually:
Download zip file or tar.gz and extract: https://github.com/np1/mps/archive/master.zip https://github.com/np1/mps/archive/master.tar.gz
Install mplayer with MacPorts:
sudo port install MPlayer
Install the python colorama module to get colors (optional):
pip install colorama
Download mplayer for your CPU type from the "Build Selection table" here.
Extract the mplayer.exe file, saving it to your mps directory
It is recommended you update to the latest version.
Upgrade pip installation:
sudo pip install mps --upgrade
Upgrade git clone:
(from within the mps directory) git pull
mps is run on the command line using the command:
mps
or on Linux/MacOS if you are in the same directory:
./mps
Enter h
from within the program for help.
You can enter an artist/song name to search whenever the program is expecting text input. Searches must be prefixed with either a . or / character.
Enter n
or p
to go to the next / previous page of results
When a list of songs is displayed, such as search results or a playlist, you can use the following commands:
d 3
to download song 3
all
to play all displayed tracks
1,2,3
to play songs 1 2 and 3
2-4,6,6-3
to play songs 2, 3, 4, 6, 6, 5, 4, 3
Note: The commands shuffle
and repeat
can be inserted at the start or
end of any of the above to enable those play modes: eg, shuffle 1-4
or
2-4,1 repeat
rm 1,5
to remove songs 1 and 5.
rm 1,2,5-7
to remove songs 1,2 and 5-7.
rm all
to remove all songs
sw 1,3
to swap the position of songs 1 and 3
mv 1,3
to move song 1 to postion 3
add 1,2,3
to add songs 1,2 and 3 to the current playlist.
add 1-4,6,8-10
to add songs 1-4, 6, and 8-10 to the current playlist
add 1-4,7 <playlist_name>
to add songs 1-4 and 7 to a saved playlist. A
new playlist will be created if the given name doesn't already exist.
vp
to view the current playlist (then use rm, mv and sw to modify it)
ls
to list your saved playlists
open <playlist_name or ID>
to open a saved playlist as the current playlist
view <playlist_name or ID>
to view a playlist (leaves current playlist intact)
play <playlist_name or ID>
to play a saved playlist directly.
save
or save <playlist_name>
to save the currently displayed songs as a
stored playlist on disk
rmp <playlist_name or ID>
to delete a playlist from disk
mv <old_name or ID> <new_name>
to rename a playlist
q
to quit
h
for help
top
show top tracks this week
top3m
show top tracks for last 3 months
top6m
show top tracks for last 6 months
topyear
show top tracks for last year
topall
show all time top tracks
list [pleer playlist url]`
to import a playlist from the web.
When using open
, view
or play
to access a playlist, you can enter
the first few characters instead of the whole name. The first alphabetically
matching playlist will be opened / displayed.
To play a saved playlist when invoking mps use the following command:
mps play <playlistname>
This also works for other commands, eg:
mps .mozart
to search
mps view <playlistname>
to view a saved playlist
mps ls
to list saved playlists
mps top
to list top tracks this week
mps open moz
to open a saved playlist called mozart.
When selecting songs for playback, removing or adding you can use 5-
to
select song 5 upward and -5
to select up to song 5. This can be included
with other choices so for example: 5,3,7-,-2
. You can also use spaces
instead of commas eg. 5 3 7- -2
.
Add +best
to a search query to return high bitrate results or +good
to
exclude them.
If you have mpv installed and want to use that instead of mplayer;
From within mps:
set player mpv set playerargs --really-quiet --no-video
To view configuration, enter set
and to change any item enter:
set <item> <value>
. This can be used to change the download path (DDIR)
and will persist after exiting the program. To reset all settings to default,
use set all default
or for a single item, set <item> default