The latest version of the program is available at the application SourceForge page. Microsoft Windows users could download the binary build, everyone else should compile the source.
Compile or install the application, start it and point it to the karaoke disk, or its copy as all the disks have no copy protection and could be copied to your computer using regular file system tools. If it does not detect the disk format, this means you have an unsupported disk.
This program was developed back in 2008 when the last hardware Karaoke player I purchased died after it worked just for two months. After that I decided to ditch the hardware players and use XBMC to play the Karaoke. And since I got a pack of old disks from previously purchased players, I decided to take a look at them to see whether it is possible to extract the music and lyrics. I did not have the access to the player firmware, but this was not necessary since the disk format was quite easy to reverse engineer for someone with enough experience. All the players used standard music formats (OGG, MP3 or WMA), so getting those was easy – in fact just any file extractor looking just on the format headers would probably work there. What took time was to find out how the lyrics are synchronized with the music and extract both the text and the timing information. This was not easy, but doable.
At this moment the program supports four kind of disks which were all I had. I don’t know if any of those players are actually still on market though.
The following formats are supported:
- BBK (must have the songlist.txt in the Database folder and the Audio folder with multiple folders and files). Everything is stored in the files with the .aud extension. The file contains the lyrics with the timing information at the beginning, which is followed up with the song in OGG format.
- LG (must have the large music.img file in the root directory of the disk). The simple header followed up the songs in WMA format. The lyrics is embedded into the WMA format as a standard MARKED stream which uses the standard ASF fields to store the lyrics.
- Samsung version 5 (must have the large music.dat file in the root directory of the disk). This one only contains MIDI files, so any resource dumper would do the job, although not as good as this app as it would not know the song title and artist.
- Samsung version 7 (must have one or more songXXXX.dat files in the root directory where XXXX is a number). A simple on-disk storage with a header/length. For each song it stores the MIDI file which contains the lyrics with timing and the lead vocal, and the song in WMA format. Again, any resource dumper would do the job.
At this moment I am not adding support for new formats as I’m done with the hardware players. So the program is not being developed, and is currently in the maintenance mode. It also makes little sense to get the player just for new songs, as it is possible to buy Karaoke songs online (for example from Amazon) and create the lyrics by using the free Karaoke Lyrics editor. However if you have got a new disk and figured out the format, the patches are welcome.