Tuning exploration, Wicki keyboard and Karplus-Strong synthesizer

In pure JavaScript using the Firefox Audio Data API

This page presents a synthesizer written in JavaScript, which you can control with your qwerty keyboard using the Wicki note layout. You need Firefox version 4 beta or higher.

This project is inspired by the tuning exploration Flash app by Jim Plamondon, whose site contains more explanation and interesting thoughts about music theory. Take a look there also for a reference for the note layout. Another interesting synthesizer with dynamic tuning and using the Wicki layout is 2032, featuring dynamic tonality, but besides that also being a good free synthesizer that stimulates exploration. Also you may still get excited about the Thummer, even though the company sadly didn't make it.

The SamplePlayer from Almer Thie served as a coding base, including the reverb and delay effects. Thanks!

If you have comments please leave them at my blog or send a message to pierstitus@gmail.com. Also if you use parts of the code I'd appreciate it if you send me a note. The synthesizer is using the Karplus Strong algorithm, which is a simple physical simulation of a plucked string. The code is open source and is released under GPL.
created by Piers Titus van der Torren, 2010

5-tet (Indonesian slendro)
Pythagorean (pure fifth)
12-tet (Western)
1/4 comma meantone (pure major third)
7-tet (Thai, Mandinka balafon)

Drag the slider to change the tuning within the syntonic tuning continuum, or click on the presets.

In the visual note layout the pitch is on the vertical axis, so it's easy to see the distribution of the notes within an octave. The circle of fifths is on the horizontal axis, so moving left or right changes the key in which is played. The note layout is called DCompose, which has several origins. It refers to the mathematical term decompose, the layout is an orthogonal decomposition of the of the pitch and the circle of fifths. There is the D, the D is the central note in the circle of fifths, and as such the central note on the layout. And of course there is the musical meaning of compose.

This note layout is similar to Wicki layout, they can tranform in each other by shearing.

You can play on your keyboard using the Wicki button layout. You can press multiple keys and hold keys to sustain them. Further keys:
+ = octave up
- = octave down
space = toggle sustain pedal

Add some and/or

Latency control, smaller buffersize means lower latency. If the buffersize is too small the audio starts to stutter. If you experience a lot of stuttering make sure your computer is plugged in and try to close other tabs.
Buffer size: