Using different sounds (guitar,piano,electric etc) on a laser harp.

Hi everyone!

That's actually the first project I'm building ever. I'm an electronic engineering student and I've found the laser harp to be an epic thing to build. I've searched every piece in the web about the laser harp, and using audio with arduino in general. I've learned that you can synthesize a sound using DACs and some programming directly to a speaker. Replacing different frequencies will produce different tones. And there is also a way to play WAV files, which sounds nice for me but i heard there are many issues using the WAV audio player (I'm using the Due) and multitasking is quite almost impossible. And, the third and last way is using MIDI libraries which some are already built in and some are downloaded across the web. I'm planning to be able to have more options you can set during playing notes, such as raising or dropping an octave, or even change the volume (digitally, not thru a potentiometer or such) and of course change the type of the sound you hear. To a guitar,piano,violet.. exactly like an electronic keyboard. The question is, how can i change the type of sound being heard? to all of that, being able to multitask while doing so.

I'm a real beginner in arduino, and in electronics/programming in general. so try not to attack me that hard, but every help would be very appreciated. :)

MIDI would be the way to go.

I'm not a MIDI expert but it's a lot easier to build a MIDI controller (or convert your laser harp into a MIDI controller) than it is to make a MIDI instrument (that actually generates the sounds).

VSTi is the most popular virtual instrument format. You can get DAW (digital audio workstation) software that plays VSTi's on a computer. I don't know of any MIDI keyboards that allow you to load VSTi's into them. I think the virtual instruments are built-into these keyboards and they may be in a proprietary format.

A MIDI keyboard is typically an MIDI instrument and a controller... It has a MIDI output that you can send to your computer or another MIDI instrument and it has a MIDI input so the computer (or another MIDI instrument) can play it. And of course, you can usually play the keyboard and use the analog output directly without MIDI.

Your soundcard has a basic MIDI synthesizer and your computer can play MIDI files. I don't know how you'd access it directly with a MIDI controller to play MIDI in real time... Usually when you are doing that kind of thing, your DAW/sequencer software is generating the audio stream and sending to your soundcard as regular audio. (I assume the soundcard MIDI sounds are part of the soundcard driver, rather than being hard-coded into the soundcard/soundchip.)