Which board to use for recording guitar and bass?

I'm programming guitar and bass education software for the windows, mac, and linux platforms via C# and one of the options I'm adding is the ability to grade what you play. Obviously the only way people can do that is by recording those riffs. I'm not expecting, nor recommending anyone buy an expensive audio interface for use just with this software. What I am doing this for if for people that want a cheaper alternative.

That leads me to the ultimate question: which arduino board, if any, suits this kind of project best? If I have to have one custom made I will. Would Arduino even suit this project?

Keep in mind that the board has to work pretty much seamlessly with my C# software. I'm expecting people won't want to tinker with the either the board or anything very much to get it to work. It also has to have a 1/4 inch input jack and usb input.

Also note: I know nothing on making electronics. I'm an absolute beginner.

Maybe I am missing something, but wouldn't something like a Behringer UCG102 Guitar-to-USB Interface work pretty well?

I apologize if I am missing the point.

Are you looking to capture the sound, or a more direct indication of what the player did with their fingers? If it's audio based, what's wrong with using a conventional USB microphone?

MaJiG:
Maybe I am missing something, but wouldn't something like a Behringer UCG102 Guitar-to-USB Interface work pretty well?

I apologize if I am missing the point.

To be honest, I never knew behringer made such a thing. Then again, I'm not familiar with a lot of the behringer products. Thanks for telling me that, I'll check that out and see how well it works.

PeterH:
Are you looking to capture the sound, or a more direct indication of what the player did with their fingers? If it's audio based, what's wrong with using a conventional USB microphone?

I'm looking at capturing the sound as that seems like the easiest, most logical approach right now. Plus, a fair amount of people have some way to record so it'll make it potentially easier to implement, in my opinion. If that doesn't work, I'll have to implement a more direct approach which I'll probably have to compromise in a few areas.

I thought about using a USB microphone, but my concern is the quality of the microphone and the background noise it records. Will it capture the sound in a clean unaffected way? The more background noise that gets captured, the higher the chance the software will get confused. If it gets confused, it may not recognize the riff all the way and may actually grade it wrong as a result. Machines don't have the ability to naturally tune out extra background noise and focus on what it's supposed to. I'll have to test the software with various microphones when the time comes.

I guess you could say that the main reason I wanted to custom make something is so I could consider and test all possibilities.

XvDragonvX:
Machines don't have the ability to naturally tune out extra background noise and focus on what it's supposed to. I'll have to test the software with various microphones when the time comes.

Noise cancellation is a common feature on microphones and I would have thought you would get a reasonably good signal quality using a PC and a USB microphone - certainly a lot better than you'd ever achieve using an Arduino ADC based solution. This also gets the signal directly into the PC without any jitter/loss so you've got the best possible starting point to do your analysis, and doing the analysis on a PC means you have all the resources you could ever need.

Yeah... An Arduino or other microcontroller isn't going to add anything other than possibly making the thing more portable than a computer. And compared to programming a computer, the whole project is more difficult because you have to design the hardware as well as the software.

Then again, I'm not familiar with a lot of the behringer products. Thanks for telling me that, I'll check that out and see how well it works.

The Behringer gizmo is probably the most economical way to plug a guitar into a computer, but there are all kinds of [u]audio interfaces[/u] with instrument inputs, mic inputs, or line-level inputs. (With these, you are not using your computer's soundcard unless you are using it to play-back or monitor the recording.)

For acoustic guitar, another simple solution is a "studio style" [u]USB microphone[/u]. These things can give you nearly pro studio results if you have a good acoustic space or studio, and if you are recording mono. (You can generally only record with one USB mic at a time). You can get these starting around $100 USD, and again you are bypassing your soundcard. I do not recommend a cheap "computer microphone".

A regular soundcard is pretty much worthless for good-quality recording because the mic input is designed for a computer mic and it's the wrong interface for any performance/studio mic (low-impedance balanced with an XLR connector, or a guitar (very high impedance).

Your software development will be a lot easier if you start-out analyzing recordings. If you can get that working, it shouldn't be too hard to make your application work in real time. And the hardware interface requirements will be the same either way.

Once you have the hardware set-up, recording is easy! Most interfaces will come with software. Or, any "audio editor" application can record. [u]Audacity[/u] is FREE. I've used [u]GoldWave[/u] for many years ($50 USD with free upgrades).

...and one of the options I'm adding is the ability to grade what you play.

Now the bad news... That might be difficult or impossible. :frowning: There are programs for converting single-note sounds into [

MIDI](MIDI - Wikipedia). But from what I understand, there is nothing that works very well with chords or multiple instruments playing at the same time.

But, the place to start is with [u]FFT[/u]. I'm sure you can find an FFT library for C#. FFT will give the frequency content of any signal at any point(s) in time. From that, it's fairly easy to determine the root frequency and convert that to a root note. It's analyzing the harmonics & overtones that becomes tricky.