Article from Issue 266/2023

This month Graham reviews Tuning Workbench Synth, Stellarium 1.0, sake, Wonder Shaper, and Samplebrain.

Tuning and scale creation

Tuning Workbench Synth

Musical scales can seem deceptively simple, especially if you know a little bit about sound frequencies and harmonics. Doubling a sound's frequency transposes its pitch by an octave, which must imply that scales can be constructed from pure mathematics. While true, this won't result in a scale that's pleasing to the ear or capable of being played on a real instrument. A piano splits (tempers) the frequency difference in a doubled pitch into 12, for example, in a tuning called equal temperament. Equal temperament is brilliant for playing different scales with the same set of notes, but none of the notes will fit any scale with mathematical perfection. Our brains instead compensate for the small differences.

Tuning experimentation is normally restricted by a musical instrument's physical properties and whatever is used to generate a sound (e.g., strings, skins, or reeds). This experimentation flourishes in many non-Western cultures, where instruments are varied, and the piano doesn't have such a grip on music tradition. But without the hardware, tuning is difficult to study and almost impossible to use outside of a cultural context. Fortunately, computers and synthesizers can help with experimentation, letting any of us play with scales and venture into completely new music territory. One of the oldest and most well-established pieces of software for playing with scales is Scala, an open source platform for tuning experimentation. It's powerful but dated and not at all intuitive or spontaneous, but its scl file format has become the de facto standard for sharing tuning configuration.

This is why it's so refreshing to find the more modern, slick, and accessible Tuning Workbench Synth. It was created by some of the developers behind the equally amazing Surge XT synth who early on realized they'd created a reference implementation for microtuning. This in turn led to the creation of a tuning library now used by many open source and proprietary applications, including Surge, Dexed, Odin, the Bespoke modular, and sfizz synthesizers. Tuning Workbench Synth became the reference implementation for testing the library, and consequently became an audio plugin with best-in-class tuning and microtuning capabilities. Everything in the view is about playing with and hearing different tuning and scale configurations. The top half of the main window contains its synthesizer, written by developer Paul Walker in a weekend, that offers great sound with minimal control. Beneath this is the tuning section, which is split into two. A table on the left contains notes, their names, exact frequencies, and interval scale, and on the right, either the Scala or KBM input and output file. Any of this can be changed while sound is playing; you'll hear the results immediately. But the real magic appears when you click on Advanced, which shows a much more intuitive visualization of the current tuning, using points distributed around a central axis to show the various intervals in an octave. You can drag these points with a single click to change the intervals and pitch. As with the tuning tables, you hear any changes in real time. It's perfect for creating and tweaking scales. You don't need to know anything about the theory to generate very interesting results, which can then be saved as Scala or KBM files for use in other applications. Best of all, Surge XT has started to incorporate many of these features and tuning elements into its interface, making it the best of both worlds.

Project Website

1. UCC:x50-b-boldVCOs:/UCC Quick access to the simple tone generators makes it easier to hear tuning differences. 2. UCC:x50-b-boldSynth:/UCC A beautiful synth with limited controls is included. 3. UCC:x50-b-boldTuning table:/UCC Every tuning change updates this table immediately, showing notes, names, frequencies, and functional intervals. 4. UCC:x50-b-boldScala and KBM support:/UCC Scala and KBM tuning descriptions are also updated in real time and can be both imported and exported. 5. UCC:x50-b-boldGraph view:/UCC This view is the easiest way to see and edit the interval and scale configuration. 6. UCC:x50-b-boldIntervals:/UCC Set the number of intervals and the differences between them manually. 7. UCC:x50-b-boldScale generators:/UCC Use dials and divisions to automatically generate a scale.


Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • FOSSPicks

    Graham Morrison looks at VCV Rack, Audible Instruments, TripleA, Neofetch 3.3.0, TripleA, Eolie 0.9, and more!

  • FOSSPicks

    This month Graham fires up MuseScore 3.0, hexyl, weborf, Chrono, and several other useful Linux tools.

  • Musical Talent: Songbird 1.2 has Landed

    The new version automatically organizes music libraries and is fully integrative with iTunes.

  • FOSSPicks

    This month Graham looks at Firefly Synth, Faircamp, Gnome Web, GPlates, Flowblade, CorsixTH, and more!

  • FOSSPicks

    One weekend this month, Graham's synth obsession took him 600 miles in a rental car into ancient Cornwall to buy a beat-up old 1980s MIDIBoard. Stay tuned for a Linux editor! Graham looks at Surge, fd, Kloak keystroke anonymizer, Symphytum, uMatrix,†and more!

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More