A guided random music system

This demo needs Java 1.4.2 or higher
Windows users may need to download a soundbank

The Cantalia system is written in Java using Java Sound, encrypted XML data, the Swing API and numerous hand-rolled classes.

This demo uses LiveConnect to control a hidden Cantalia applet.

No sound? Mediocre sound?
Get the free deluxe soundbank!
Cantalia is currently at version 0.50.
Latest updates: velocity sensitivity & instrument switching.


Cantalia consists of a core engine, a Player applet and a Maker application.

The music files (seeds) generated by the Maker contain musical instructions. Each seed specifies a unique piece of music - which will be subtly different every time it is played.

The XML seeds are very small (around 500 bytes!) but can play for hours.

Each seed represents a virtual Band of Musicians, who are guided by a collection of SoundMenu objects. The Musicians run in their own individual threads, improvising their part under the guidance of the SoundMenus. The SoundMenus influence everything - which instrument, what scale to work in, what range, what pitch of note etc etc.
alt="Your browser understands the <applet> tag but isn't running the applet, for some reason." Please note: Your browser is ignoring the <applet> tag