PyKaraoke 0.7.5 Released

PyKaraoke version 0.7.5 is now available for download.

Changes in this release are:

  • Support for international filenames in the song database and duplicate file detection.
  • Reduced memory usage associated with duplicate file detection.

PyKaraoke is a cross-platform karaoke player written using Python, utilising the pygame library. It supports the CDG (MP3+G, OGG+G, WAV+G), MIDI (.KAR, .MID) and MPEG formats.

Download release 0.7.5 here.

PyKaraoke 0.7.4 Released

PyKaraoke version 0.7.4 is now available for download.

Changes in this release are:

  • Better support for international characters in filenames.
  • Better detection of environment to support new Posix-based platforms.
  • Improved performer prompt on Windows.

PyKaraoke is a cross-platform karaoke player written using Python, utilising the pygame library. It supports the CDG (MP3+G, OGG+G, WAV+G), MIDI (.KAR, .MID) and MPEG formats.

Download release 0.7.4 here.

PyKaraoke Development at Github

The PyKaraoke development repository has now moved from Sourceforge to Github. The project page is here.

Those interested in trying out the latest pre-release development code or contributing to the project can clone the git repository as follows:
git clone git://github.com/kelvinlawson/pykaraoke.git

Alternatively you can download a tarball of the latest sources using this link.

If you are keen to contribute to the project then please feel free to make a fork at Github and keep us posted on your progress. New features currently being worked on are pitch-shifting and a lyrics preview window, both aimed at professional KJ hosting. These features are already available in a separate development branch.

We hope that this will make it easier for developers to work on their own features and get involved in the project. If you are keen to contribute but don’t have any particular features in mind, feel free to look through the issues list and pick something you find interesting. We look forward to having you on board!

PyKaraoke 0.7.3 Released

We are pleased to announce the release of PyKaraoke v0.7.3, with many improvements:

* Fixes for international / unicode characters in filenames.
* Support unusual CDG file draw commands found in the wild.
* Make About window work with Wx2.6 again. Recent About window
changes work on Wx2.8 only.
* Add options for double-buffered and hardware.
* Clean up keyboard operations.
* ‘P’ pauses, Backspace rewinds.
* Allow remote control access to pykaraoke_mini.
* Support left/right margins
* Improvements to printing support.
* Fix occasional crash in CDG player.
* GP2X: Faster scrolling.
* Windows: Fix temporary filenames used for unzipping same song twice.
* OSX: Improvements to OSX support.
  • Fixes for international / unicode characters in filenames.
  • Support unusual CDG file draw commands found in the wild.
  • Make About window work with Wx2.6 again. Recent About window changes work on Wx2.8 only.
  • Add options for double-buffered and hardware.
  • Clean up keyboard operations.
  • ‘P’ pauses, Backspace rewinds.
  • Allow remote control access to pykaraoke_mini.
  • Support left/right margins
  • Improvements to printing support.
  • Fix occasional crash in CDG player.
  • GP2X: Faster scrolling.
  • Windows: Fix temporary filenames used for unzipping same song twice.
  • OSX: Improvements to OSX support.

PyKaraoke is a cross-platform karaoke player written using Python, utilising the pygame library. It supports the CDG (MP3+G, OGG+G, WAV+G), MIDI (.KAR, .MID) and MPEG formats.

Download the new release here.

PyKaraoke 0.7.2 Released

We are pleased to announce the release of PyKaraoke v0.7.2, with improvements to the external MPG/AVI viewer support.

PyKaraoke is a cross-platform karaoke player written using Python, utilising the pygame library. It supports the CDG (MP3+G, OGG+G, WAV+G), MIDI (.KAR, .MID) and MPEG formats.

Download the new release here.

PyKaraoke available for OpenBSD

We are pleased to announce that PyKaraoke has been added to the OpenBSD ports collection OpenPorts. This means that there are now official PyKaraoke packages for FreeBSD, NetBSD and OpenBSD.

PyKaraoke is a free karaoke player for Linux, FreeBSD, NetBSD, OpenBSD, Windows, OSX and GP2X. You can use it to play your collection of CDG, MIDI and MPEG karaoke songs. For more information visit the homepage.

Seeking Developer to Maintain Windows Port

We are currently seeking a developer to look after the Windows port of PyKaraoke. If you are interested in contributing to an open source project (and learning something about Python development along the way) we would love to hear from you.

We have recently written two articles as a quick-start guide to development on the Windows platform:

The simplest way to get involved is to use the pure Python method discussed in the first article. It is not necessary to install any of the C development environment to do this, and you can quickly start editing and running your own PyKaraoke modifications. We are always happy to bring new developers on board and will give assistance in bringing you up to speed with the source code, but you should find that the PyKaraoke source is well commented and easy to follow. According to Ohloh:

Across all Python projects on Ohloh, 24% of all source code lines are comments. For PyKaraoke, this figure is 30%. This high number of comments puts PyKaraoke among the highest one-third of all Python projects on Ohloh. A high number of comments might indicate that the code is well-documented and organized, and could be a sign of a helpful and disciplined development team.

You can hook up with the development team on the PyKaraoke mailing list. Most of the developers work on Linux, but PyKaraoke works just as well on the Windows platform and for that reason we would like to invite anyone passionate about open source development to look after the Windows port. This might be a small contribution like tidying up the GUI on Windows or taking over making Windows releases, or you could contribute brand new features that can be used on Linux, BSD, OSX, GP2X and any other platforms which PyKaraoke runs on. The differences between the platforms are minor, but having a developer keeping a close eye on the Windows platform will assist in keeping PyKaraoke the most portable karaoke player out there.

PyKaraoke Development: Windows Installer

Following on from the previous article about PyKaraoke development for the Windows platform, those of you who are modifying the source and contributing to the project may be interested in these instructions for building your own PyKaraoke installer executable. This allows you to distribute test builds of PyKaraoke which users can install without having to first install any of the underlying applications and libraries such as Python and Pygame.

  • Install NSIS and Py2exe.
  • Follow these instructions for setting up the build environment.
  • Copy the following DLLs to folder “build/lib.win32-2.6/” in the top-level source folder (note that your originating folders may differ). In future this step will be automated within the installer script:
    • c:\Python26\Lib\site-packages\pygame\SDL.dll
    • c:\Windows\WinSxS\x86_Microsoft.VC90.CRT_…\msvc*90.dll
  • Compile PyKaraoke’s C-based optimised CDG interpreter from a command prompt:
    • python setup.py build_ext –sdl-location=C:\proj\SDL
  • Finally build the installer executable (use option –makensis if you installed NSIS to a non-standard location):
    • python setup.py nsis

Your final executable installer will now be sitting in the top level source folder with the filename pykaraoke-ver.exe.

PyKaraoke 0.7.1 Windows Installer Released

We are pleased to announce that a Windows installer for PyKaraoke v0.7.1 is now available. This brings all of the recent features added for Linux to the Windows platform:

  • Many new features useful for pro hosting with PyKaraoke.
  • You can now associate performer names with songs in the playlist.
  • Add Kamikaze button to add a random song to the playlist.
  • Various new playlist features.
  • Time progress indicator during song playback.
  • Add support for pulling artist/title data from song filenames.
  • Add option to display karaoke window without a frame.
  • Many new configuration options and other GUI improvements.

Download the installer here.

PyKaraoke 0.7.1 Released

We are pleased to announce the release of PyKaraoke v0.7.1.

PyKaraoke is a cross-platform karaoke player written using Python, utilising the pygame library. It supports the CDG (MP3+G, OGG+G, WAV+G), MIDI (.KAR, .MID) and MPEG formats.

Highlights of changes for this release:

  • Many new features useful for pro hosting with PyKaraoke.
  • You can now associate performer names with songs in the playlist.
  • Add Kamikaze button to add a random song to the playlist.
  • Various new playlist features.
  • Time progress indicator during song playback.
  • Add support for pulling artist/title data from song filenames.
  • Add option to display karaoke window without a frame.
  • Many new configuration options and other GUI improvements.