pykaraoke - free CDG/MIDI/MPEG karaoke player
is a free karaoke player for Linux, FreeBSD and Windows.
is an MPEG player built using python. It was written for the
PyKaraoke project but is in fact a general purpose MPEG player that could be
used in other python projects requiring an MPEG player.
The player uses the pygame library (www.pygame.org), and can therefore run on
any operating system that runs pygame (currently Linux, FreeBSD, Windows and
You can use this file as a standalone player, or together with PyKaraoke.
PyKaraoke provides a graphical user interface, playlists, searchable song
For those writing a media player or similar project who would like MPG support,
this module has been designed to be easily incorporated into such projects and
is released under the LGPL.
To start the player, pass the MPEG filename/path on the command line:
python pympg.py /path/song.mpg
You can also incorporate a MPG player in your own projects by importing this
module. The class mpgPlayer is exported by the module. You can import and
start it as follows:
player = pympg.mpgPlayer("/path/song.mpg")
If you do this, you must also arrange to call pympg.manager.Poll() from time to
time, at least every 100 milliseconds or so, to allow the player to do its
The class also exports Close(), Pause(), Rewind(), GetPos().
There are two optional parameters to the initialiser, errorNotifyCallback and
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 provided, errors are printed to stdout.
errorNotifyCallback should take one parameter, the error string, e.g.:
def errorPopup (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
msgBox ("Song is finished")
To register callbacks, pass the functions in to the initialiser:
mpgPlayer ("/path/song.mpg", 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
You can find PyKaraoke's home page at: http://www.kibosh.org/pykaraoke/
PyKaraoke was written by Kelvin Lawson <firstname.lastname@example.org> and
William Ferrell <email@example.com>.
This manual page was written by Miriam Ruiz <firstname.lastname@example.org>, for
the Debian project (but may be used by others).