Guitar Trainer

1891 Words8 Pages
Introduction

For this project, I decided to do something that helped to assist new (and experienced) guitar players learn new songs or concepts regarding the instrument. Originally, I wanted to create a program that was capable of recognizing guitar chords via a cable plugged into the microphone-in port of a computer as they were played in real time. After completing some preliminary research, I was only able to find one program that was similar to my initial idea. This particular program would take an MP3 then analyze the guitar playing and spit out which chords were being played in the song and when. I found that it worked marginal at best. Furthermore, upon researching how I would even start to program an application like this, I encountered some math that I was not very familiar with (like Fourier transforms).

Project Overview

I opted to scrap the chord recognition idea because there were simply too many unknowns involved in the project, including if it would be even possible at all without the need of special hardware. Still wanting to stick with the whole guitar theme, I chose to simply change what it was my program would do instead while staying with the global guitar theme. Instead of being able to detect a chord being played, Guitar Trainer will follow guitar tablature, showing the correct chord positioning and the correct strings that should be played throughout the entirety of the song.

In addition to this, the application will contain a search feature allowing the user to search YouTube for instructional videos regarding whichever song they are seeking assistance on. If an adequate video is found, the option will be given to watch the video inside the application so certain tricky sections, how to finger a pa...

... middle of paper ...

...om step 1

4. Opening an MP3 to play along with the tablature

5. Adding play, pause, stop, previous, and next buttons

6. Getting MIDI sounds to work during playback < 100%

7. Implementing YouTube video search and playback

8. Add a software tuner for the guitar via microphone input

9. Implementing lyrics lookup and display

Conclusion

In addition to learning a great deal about media controls and various web application APIs, I anticipate learning and practicing a lot with my guitar to test the functionality of the software. I look forward to gaining the knowledge to work with external sources, like YouTube, and bridge many aspects of Computer Science into one project, all while combining programming with another passion of mine: music. I anticipate it being a difficult but rewarding project and am eager to see the final design I come up with in the end.

More about Guitar Trainer

Open Document