Recently I bought Vsonic KMD-221 karaoke player that came with three Midi karaoke DVDs in a so-called PLF format. Total song count is advertised to be 130000 (yep, 130 thousand). Songs are in English, Chinese, Tagalog, Spanish, Malaysian, Hindi, French, German, Italian. Midis seem to be of high quality. A few songs are WMA, plus there's about 250 so-called MTV songs on each DVD.
Vsonic KMD-221 player has WLD8202RD-5R2 decoder board inside which is based on Sunplus 8202 chip. Source code of 8202 firmware can be found on the internet. For example, here (under the Files section): http://tech.groups.yahoo.com/group/Sunplus_Firmware/ I'm no programmer, but the code is in C as far as I can tell. It also seems to be well commented.
I did some string searches in the archive with the source and found references to all files that are on the DVDs.
I'm hoping that someone on this board who is fluent in C would be able to understand Sunplus source code and write a program based on it to read midi disks in PLF format and extract midi and/or lyrics.
I will upload the contents of the DVDs on 4shared.com. I'll post a link as soon as it's done (hopefully, this weekend).
With the experience of people on this board I hope we can figure it out.
I replicated directory structure, except background video files which are not included.
Languages on this one are English, Tagalog, Spanish, Malaysian, Hindi, French, German, Italian. 40000 songs.
Source code of the 8202 decoder board firmwware can be found here:
http://tech.groups.yahoo.com/group/Sunplus_Firmware/files/Source%20Codes/ There are two versions - 8202s and 8202d. I don't know what's the difference, midi subroutines seem to be included in both. 8202d archive is larger though. Maybe that board has more functions.
To download you'd have to join Sunplus_Firmware group on Yahoo (instant, no approval by admin required).
Please share your ideas, thoughts, your code to test.
OK, I had a first look in the files, very interesting. Obviously, it's dealing more than just decoding. It also handles videos and menus etc. It will be a bit hard to spot the MIDI stuff. My current finding, there are 2 files which maybe in our interest:
Can you also tell us how did you find this source? What did you search for? There might be more other sources.
I guess these would be a good place to start for someone who understands the language this code is written in.
Indeed, we have more information than we need. I did find a lot of MIDI related codes. But that's not what we need. We need the part before the data becomes MIDI.
I'll see what I can find. I've no problem in C and MIDI protocol. Btw, I'm the creator of a MIDI karaoke software