I would like to bulid a website that is one page only and associates certain keyboard and mouse keys with sounds so that the keyboard becomes a virtual drum set. Design is not important now, I just want functionality.
There will also be a feature where the user can change which keys a certain sound is assigned to.
The following sounds can be found at [url removed, login to view] and downloaded in a .zip file.
The user will find the following sounds associated with the following keys by default.
Bass drum - [url removed, login to view] - Space bar
Snare drum - [url removed, login to view] - F
Closed hi hat - [url removed, login to view] - K
Open hi hat - [url removed, login to view] - I
Crash cymbal - [url removed, login to view] - U
Tom tom - [url removed, login to view] - R
Next to each sound will be listed the key associated with that sound, and a button to change the key. When the user click the button to change the key, any key the user types will appear, and the user will click "save new key" to save that new key association. Custom key settings will be remembered via a cookie.
The application must make the sounds in real time, even if the user is pushing keys very fast.
Also, the application should allow the audio sounds to overlap. In other words, if you hit the crash cybal sound, pushing another sound should not cut it off...the cymbal sound should continue until it's completed in the background. The only time a sound should be cut off is if you trigger the same sound before it has completed playing.