skip to navigation
skip to content

Not Logged In

pms-youtube 0.01.02

Terminal based YouTube jukebox with playlist management

Latest Version: 0.01.20


  • Search and play audio/video
  • Create local playlists
  • Download audio/video
  • Works with Python 2.7 and 3.x
  • Works with Windows, Linux and Mac OS X
  • Requires mplayer

This project is based on pms, which is a terminal based program to search, stream and download music. This implementation uses YouTube as a source of content and can play and download video as well as audio. The pafy library handles interfacing with YouTube.


Using pip:

sudo pip install pms-youtube

Mac OS X installation notes

Install mplayer with MacPorts:

sudo port install MPlayer

Windows installation notes

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 pms directory


It is recommended you update to the latest version.

Upgrade pip installation:

sudo pip install pms-youtube --upgrade


pms-youtube is run on the command line using the command:


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:


i 3 to view info on item 3


d 3 to download item 3


all to play all displayed items

1,2,3 to play items 1 2 and 3

2-4,6,6-3 to play items 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 items 1 and 5.

rm 1,2,5-7 to remove items 1,2 and 5-7.

rm all to remove all items

sw 1,3 to swap the position of items 1 and 3

mv 1,3 to move items 1 to postion 3

Playlist commands

add 1,2,3 to add items 1,2 and 3 to the current playlist.

add 1-4,6,8-10 to add items 1-4, 6, and 8-10 to the current playlist

add 1-4,7 <playlist_name> to add items 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

Advanced Tips

Playlist Name Completion

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 pms use the following command:

pmsyt play <playlistname>

This also works for other commands, eg:

pmsyt .mozart to search

pmsyt view <playlistname> to view a saved playlist

pmsyt ls to list saved playlists

pmsyt top to list top tracks this week

pmsyt open moz to open a saved playlist called mozart.

Specifying Ranges

When selecting songs for playback, removing or adding you can use 5- to select items 5 upward and -5 to select up to item 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.

Using MPV instead of MPlayer

If you have mpv installed and want to use that instead of mplayer;

From within pms-youtube:

set player "mpv"
set playerargs "-really-quiet"

Other Configuration

To view configuration, enter showconfig 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"

Search All Categories

To search all YouTube categories (instead of just music), enter:

set search_music "false"

Show Video Content

To view/download video instead of audio, enter:

set show_video "true"
File Type Py Version Uploaded on Size
pms-youtube-0.01.02.tar.gz (md5) Source 2014-02-03 16KB
  • Downloads (All Versions):
  • 26 downloads in the last day
  • 265 downloads in the last week
  • 1113 downloads in the last month