A program that is already started have to completed. The coder have to code the folowings:
Read and parse midi files; Calculate time position for each event, including SysEx;
Determine lyrics using text and lyrics events with an "Allow multiple tracks" option;
Generate a list for beat and tempo change (See MidiData structure) and
Play song from array and call raiseNewSylable to display lyrics (see the provided code).
The "Allow multiple tracks" option is enabled or disabled. See vanBasco's help and the code to know how to determine which track have to be use.
You have to look to each file and complete the program. Comments will describe in more details the requirements.
If you need to use any library or header file other than these that are needed in MidiDeviceOut class to use the sound card or if specified otherwise, you MUST specify it in your bid.
Please take time to test the program with MIDI files provided.
**Allow Multiple Lyric Tracks:** (from vanBasco's help)
Generally, MIDI Karaoke file contain only one lyric track. However, there are files that contain multiple lyric tracks. When vanBasco's Karaoke Player encounters such a file, it chooses the track containing the largest number of lyrics, and discards lyrics from all other tracks. Though this has proven to work very well, sometimes it may be desirable to see the lyrics from all tracks. In order to achieve that, select this option.
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
Must compile and run with Visual C++ 6 under Windows XP.