Music Toys: a synthesizer inside Firefox
FluidSynth is a cross platform C library that uses sf2 soundfonts.
At the beginning, it was an experiment, opening this lib via js-ctypes in Firefox, to play with it.
But it worked so well, so I have created 3 little apps, combined in a collection
named Music Toys, which can be launched as a Firefox extension,
or as a standalone XULRunner application (launchable with Firefox).
The second app is a Drum Machine. It consists in a list of tracks, divided in bars, beats per bar, and divisions per beat, containing buttons to switch on notes (with variable velocity).
47 different percussion instruments are available, and you can change the drumkit.
Change the tempo, play in real time your pattern in a loop. And you can save/open your patterns in files.
If you want to try it, you can download it from its dedicated page:
There's standalone versions for Linux, Windows, and Mac OSX (with the FluidSynth lib embedded and a default soundfont), and the Firefox extension.
All the source code is MPL 2.
We can imagine more.
It is conceivable to create an extension for Firefox which expose only
the FluidSynth wrapper lib, and extension authors can access it.
More, why not expose some basic objects like a
Synth to web page,
it should be possible (but need to be careful with security).
Secondly, perhaps it's possible to compile FluidSynth on Android, some Web research reveals
that some seems able to,
so an extension for Firefox Mobile may be possible.
And perhaps FluidSynth can be compiled for Firefox OS too (Fluidsynth need glib)?
But for now, let me know what you think about that, and if this beta works for you, I've tested mostly under Linux, so your feedback from various Windows, 32 or 64 bit, and Mac, will be precious ;) .