Browse files

reworked docs

  • Loading branch information...
1 parent 18120b1 commit 88369099b40cfcf98a09ad25d299b4e6a64fb5fa @wendlers committed Oct 24, 2012
Showing with 37 additions and 12 deletions.
  1. +29 −12
  2. +8 −0 doc/PyScMPDImplementation.txt
@@ -9,26 +9,45 @@
-Python based sound-cloud music server talking the [MPD] ( protocol.
+*pyscmpd* stands for "Python SoundCloud Music Player Daemon". It is, as the name suggests,
+a Python based daemon, talking a subset of the [MPD] (
+protocol. Instead of serving local MP3 files, it connects to [SoundCloud] (
+and serves the streams found there. The user could configure, which parts of SoundCloud are
+made available for browsing (e.g. by defining favorite groups or user). *pyscmpd* is intended to
+run as a per user daemon, meaning it is designed to run multiple instances.
+Since *pyscmpd* uses the well known MPD protocol, a variety of
+[clients] ( could be used as
+a front end to the daemon. The once I am testing *pyscmpd* currently on are the

trosh Mar 24, 2017 edited

  • "once" → "ones"

  • "I am testing pyscmpd currently on" → "I am currently testing pyscmpd on"

+curses based [ncmpcpp] ( and the GTK based
+[sonata] (
-NOTE: only basic MPD server daemon available yet
+More information could be found at the following places:
-Main features currently supported:
+* For more details on the architecture of *pyscmpd* see this [document] (
-* Browse predefined set of favorite users (in "~/.pyscmpd/pyscmpd.conf")
-* Browse predefined set of favorite groups (in "~/.pyscmpd/pyscmpd.conf")
+* For more details on the current implementation (including a list of MPD commands currently supported) see this [document] (
+* As a foundation for the core MPD protocol implementation, the [pympdserver] ( library is used.
+Main Features
+The main features currently supported are:
+* Browse a predefined set of favorite users (in "~/.pyscmpd/pyscmpd.conf")
+* Browse a predefined set of favorite groups (in "~/.pyscmpd/pyscmpd.conf")
* Browse the favorite tracks of a predefined set of users (in "~/.pyscmpd/pyscmpd.conf")
* Browse random users/groups
* Current play-list is persisted on SIGTERM and restored on next restart
-* Save current play-list to defined name
-* Browse/Load stored play-lists
+* Save play-lists to a defined name
+* Load stored play-lists
+* Browse stored play-lists
* Delete stored play-lists
* Clear stored play-lists
* Add tracks to current play-list
-* Add tracks to named play-list
-* Play tracks from play-list
+* Add tracks to stored play-list
* Change song order in current play-list
* Change song order in stored play-list
* Remove songs from current play-list
@@ -38,8 +57,6 @@ Main features currently supported:
* Control volume
* Elapsed song time and current song-time are transmitted to clients
-For a complete list of supported MPD commands see the [implementation docs] (
Project Directory Layout
@@ -160,6 +160,14 @@ and the library does not provide all the commands needed e.g. by "ncmpcpp", the
is inclueded as source in this project, and extended where needed.
+MPD Version
+I found no easy way to tell which MPD command was introduced with wich MPD version. Thus,
+I just don't know which MPD version pyscmpd reassembles at the end. Thus, "MPD 0.13.0" is
+returned as defined in the pympdserver library.
Song ID

0 comments on commit 8836909

Please sign in to comment.