I'd like to write a soundboard program that would basically be a visual wave player program with different soundboards you could load. So each board would basically have to follow some kind of a template to work. How are programs like this usually written, meaning what kinds of techniques or classes I'm I looking at here? JMF for sure, but what else?

If you don't know what a soundboard is, this should be enlightening : EBAUMSWORLD - Funny Pictures, Hilarious Videos, Flash Games and Jokes