PYCDG(6) - Linux man page online | Games

Free CDG/MIDI/MPEG karaoke player.

july 16, 2006


pykaraoke - free CDG/MIDI/MPEG karaoke player


pycdg [ options ] songfilename.cdg


pykaraoke is a free karaoke player for Linux, FreeBSD and Windows. pycdg is a CDG karaoke player which supports MP3+G and OGG+G tracks. The player uses the pygame library (, and can therefore run on any operat‐ ing system that runs pygame (currently Linux, FreeBSD, Windows and OSX). You can use this file as a standalone player, or together with PyKaraoke. PyKaraoke pro‐ vides a graphical user interface, playlists, searchable song database etc. For those writing a media player or similar project who would like CDG support, this mod‐ ule has been designed to be easily incorporated into such projects and is released under the LGPL. Numeric module ( is required only if you do not use the compiled C low-level CDG implementation in _pycdgAux.c


To start the player, pass the CDG filename/path on the command line: python /path/song.cdg You can also incorporate a CDG player in your own projects by importing this module. The class cdgPlayer is exported by the module. You can import and start it as follows: import pycdg player = pycdg.cdgPlayer("/path/song.cdg") player.Play() If you do this, you must also arrange to call pycdg.manager.Poll() from time to time, at least every 100 milliseconds or so, to allow the player to do its work. The class also exports Close(), Pause(), Rewind(), GetPos(). There are two optional parameters to the initialiser, errorNotifyCallback and doneCall‐ back: errorNotifyCallback, if provided, will be used to print out any error messages (e.g. song file not found). This allows the module to fit together well with GUI playlist managers by utilising the same GUI's error popup window mechanism (or similar). If no callback is pro‐ vided, errors are printed to stdout. errorNotifyCallback should take one parameter, the error string, e.g.: def errorPopup (ErrorString): msgBox (ErrorString) doneCallback can be used to register a callback so that the player calls you back when the song is finished playing. The callback should take no parameters, e.g.: def songFinishedCallback(): msgBox ("Song is finished") To register callbacks, pass the functions in to the initialiser: cdgPlayer ("/path/song.cdg", errorPopup, songFinishedCallback) These parameters are optional and default to None. If the initialiser fails (e.g. the song file is not present), __init__ raises an excep‐ tion.


pycdg also takes various command-line options for setting the window size, position, and update rate. Type the following for a full list of options: $ pycdg --help


You can find PyKaraoke's home page at:


PyKaraoke was written by Kelvin Lawson <> and William Ferrell <>. This manual page was written by Miriam Ruiz <>, for the Debian project (but may be used by others).
july 16, 2006 PYCDG(6)
Download raw manual
Index № 6 (+1346)
Go top