0.5.3 Update – Audio Timing, Oscillator Unison, Sampler Facelift

Hey everyone, early next week we are releasing a new update. Here’s an overview of the more impactful changes:

  • Massively improved audio timing and performance, enabling reliable oscillator syncing
  • New Melody Trigger mode, and Unison setting for the Oscillator Node, with various extra settings
  • UI and usability facelift for the Sampler Node and many other Nodes in general
  • New experimental Harmonizer Node, intended as a successor of the Component Extension Node

Breaking Changes & Priority Fixes

Oscillator Node
  • Output is now always stereo to support the new unison settings seamlessly. Previously it was mono.
  • Start timing is no longer slightly random at times. See the next section for more details.
  • Deprecated “Custom” wave types. These never really fit the concept of the Oscillator Node, and will re-appear on another Node later. For now, they remain accessible and functional, but don’t support the new Unison settings.
Sampler Node
  • Min/max velocity settings now work correctly. Previously they didn’t do anything.
  • Now plays multiple samples on the same assigned pitch correctly. Earlier it was depending on the order you added samples, which could be quite random.
  • Output channel count now depends on loaded samples.

Better Oscillator & Audio Timing

A mostly technical, under-the-hood, but vitally important change in this update is a massively improved audio timing and syncing system.

Up until this point, sounds built using multiple sound sources, especially oscillators, were mostly hit-or-miss. That is, sometimes oscillators would start at the expected time, but, more often than not, they would start with a slight random delay from each other, randomly producing slightly different sounds.

This was a very fundamental issue in AudioNodes, which is now fixed for good.

Improved Playback Performance

Another important, mostly technical update is a new set of improvements for playback performance.

Previously, notes played through some Nodes continued to affect performance to some extent, even after stopped. As a result, playback performance could often start getting choppy after a while, and only a restart could fix that.

This issue shouldn’t occur anymore.

Oscillator Node Changes

New Unison Mode

The Oscillator Node received a new Unison setting, which adds additional voices to make rich, dense sounds. This is a simple and straightforward, but very powerful setting.

When enabled, the Oscillator Node reveals 3 additional settings:

  • Unison Detune – replaces the Detune setting, spreads the additional voices on the spectrum up or down
  • Unison Stereo – spreads the additional voices between the left and right channels
  • Unison Delay – adds a very short time spread between the additional voices
Melody Trigger Mode

To complement this update’s improvements for audio timing, the Oscillator Node received a new mode, the Frequency Controlled, Melody Triggered mode.

This mode plays the Oscillator Node for each note in the source melody, but with a fixed frequency. As with the Frequency Controlled mode, you can either set the frequency by hand, or control it from an input. This, among other things, enables you to reset the Oscillator Node using notes.

Sampler Node Changes

New Mode Setting

The Sampler Node received a UI and usability facelift, to make setting it up less cumbersome in common cases. It now has 3 “modes” you can select:

  • Auto-pitch samples to fill gaps
    • Simplified UI.
    • Automatically configures samples so that they cover every note, by pitching samples up/down if necessary. For example, if you have samples for C2, C3, C4, and C5, this mode will play every note, by first finding the nearest sample, then pitching it up/down as necessary.
    • Ideal for sampled melodic instruments, such as piano, harp, guitar.
  • Play assigned notes only
    • Simplified UI.
    • Only play each sample when their assigned note is played. For example, if you have samples C2 and C3, only C2 and C3 notes will play.
    • No pitching, samples are always played as-is.
    • Ideal for sampled percussion instruments, such as drums.
  • Advanced mode
    • Similar behavior as before.
    • You can customize minimum/maximum pitch for each sample, as well as min/max velocity.
New Detune Setting and Input

In addition to the new Mode setting, the Sampler Node received a new Detune setting. This is available if you are on an HD sub, and applies a detune to the Sampler Node’s overall output, from -200 cents to +200 cents.

You can also control this setting from an input, which enables stuff like vibrato and sliding.

Stable Node Releases

The Bitcrusher Node and the Sample and Hold Node received internal performance improvements, and are no longer experimental. Enjoy!

New Experimental Harmonizer Node

The new, experimental Harmonizer Node is intended to be the successor of the Component Extension Node, delivering the same effect on a simpler, more familiar interface.

The experimental Harmonizer Node

Misc Changes & Fixes

  • Many Nodes received a general UI polishing pass.
  • Replaced Waveshaper Node placeholder on the Patcher with a preview of the wave shaping curve.
  • You can now toggle Audio File Node built-in declicking from its properties panel, and its effect got slightly toned down. This fixes a problem where short, sharp percussion sounds wouldn’t play properly.
  • Fixed Piano Roll Node ignoring selected note(s) when placing a new note in default dbl click mode.
  • Most input fields (including numeric, text, and select fields) received a new, improved design.
  • Cleaned up numeric fields, and removed inconsistent, mostly unnecessary accuracy constraints. Most of these fields now support up to 12 decimals of accuracy, unless there is a reason to limit the accuracy (such as when the field is only intended for integers).
  • The color of circle sliders on the Patcher now hint at the type of processing they do, i.e. blue for audio, yellow for control, green for melody.
  • Some Nodes, which indicate playback position on their own UI (e.g. the Piano Roll Node), could occasionally have their playback position marker lag behind, especially during longer sessions of playback. This should no longer happen.