Karaoke Starter Kit for iPhone and iPad

I've had a number of requests to write a tutorial on how to do karaoke on the iPhone. Since the MIDI tutorial I wrote has been very successful, I decided to write a similar tutorial on how to implement Karaoke on the iPhone.

You can see how it works from the video. You load a MIDI file and the program extracts the text and lays it out nicely on the screen. As the MIDI file plays, the text is colored in red to show where you're up to. When it reaches the end of the page, it loads the next set of lyrics.

This might look simple but in reality it turns out not to be. If you look at the iPhone API, you won't find anything about karaoke. That's because the API doesn't support karaoke! I've seen a number of questions about Karaoke on the iPhone in Stack Overflow and no answers. The information available in this tutorial just isn't available ANYWHERE else. I'm very experienced using CoreMIDI and this karaoke module still took me more than a week to write. If you want to do karaoke on iOS this starter kit will save you 50 hours plus. That equates to over $2000 in development time saved!

What you get with this starter kit isn't just a karaoke player. It's also a detailed tutorial covering the whole process of parsing and playing MIDI files on iOS. Again, this information just isn't available on the internet. I had to work it all out myself. Here's a breakdown of what's covered:

  • Loading and parsing a MIDI file using CoreMidi: I'll show you how to load a MIDI file using CoreMidi and then access the MIDI events (Note, Tempo, Time Signature, Lyrics etc...) individually. This puts you in full control and gives you access to all the information the file contains. I also clearly explain how the MIDI file fits together and what the important MIDI messages mean.

  • Lots of background information: In the tutorial I don't just explain how the example project works. I also give lots of background information and useful tips when processing MIDI files. I explain: bitwise operations, hex and binary, General Midi, how the percussion track work and much more! In fact the guide alone is over 5000 words long!

  • Writing a fully functional MIDI player: Step by step, I'll explain how to interpret the sequence of messages you retrieved from the MIDI file. The MIDI player uses multi-threading to play the sequence of MIDI messages in real-time. The MIDI clock class ensures that the MIDI file plays smoothly at the correct tempo. The MIDI player provides easy to use callback functions which give you access to all MIDI events in real-time. If you need events which I've aren't included it's easy to extend the framework to support all existing MIDI messages.

  • Audio Manager provides multi-timbral playback: CoreAudio on the iPhone only comes with a mono-timbral sampler. This means that you can only play your MIDI notes using one instrument sound. The Audio Manager which is included in the tutorial makes it easy to play your MIDI file using up to 10 instruments using a custom SoundFont. I show step by step how to setup a complex audio graph. I'll also show you how to set up the instruments based on information provided in the MIDI file. Doing this provides a rich sound as demonstrated in the video.

  • Karaoke: You'll get access to a robust karaoke player. You'll learn how to extract lyric events from the midi file, how to display the lyrics on the screen and how to change the color of the lyrics as the track advances. This a little polish, this project could easily make a great karaoke app!

  • More than just a tutorial: The sampler project, along with the tutorial, provides a solid framework for your CoreMidi iOS project. The license allows you to use the framework in any number of your own projects. You can use this project as a learning exercise to learn CoreAudio and CoreMidi or base your whole project on the code.

You can see from the video this this project has enormous potential. From this base, you could easily reduce the development time to build a karaoke app by a half.

This tutorial and project took over 120 hours to write and contains information which isn't available anywhere else. This tutorial will save you at least 60 hours of work. If someone came to me today asking for a quote to do the work, I'd charge upwards of $3600. Instead of doing that, I've decided to sell the kit for a fraction of the price in the hope that it will benefit the maximum number of people. If you're not happy with the kit, don't worry - we offer a 14-day money back guarantee. To buy the starter kit visit the link below.

Buy the Ultimate Karaoke Starter Kit Here