0.8.3 Update – Node Fixes, Usability Improvements, Optimization, Microtonality

AudioNodes 0.8.3 is now out!

This new update contains a large variety of important bugfixes, various usability improvements, and a new major optimization overhaul. The update also includes a new system to enable microtonality. This will be expanded upon in later updates.

This update jumps straight to 0.8.3, skipping 0.8.2.

Priority Fixes

  • Fixed a randomly occurring internal crash affecting several Nodes, that would cause them to output silence until restarted, or recreated. This bug affected the Pitch Shift Node, the Pitch Detect Node, the Clamp Node, and many more.
  • Sequencer Node will no longer output silence in its initial state.

General Usability Improvements

Deleting Nodes

Deleting most Nodes will now join their input-output connections together, where it makes sense, instead of deleting them with the Node. For example, deleting a Gain Node will now connect its original input to its original destination.

  • This new behavior is enabled for Nodes where a bypass makes sense (which includes almost every audio effect Node).
  • This is not enabled for Nodes which have fundamentally different inputs and outputs (such as the Note to Pitch Node, or the Pitch Detect Node).
Pass Through Node

The Pass Through Node received a lighter, more compact Node appearance, which is ideal for managing connections a lot more accurately:

Additional changes:

  • This Node can now be created by clicking a connection, and then choosing “Splice connection” from the menu. Doing so will auto-insert the Pass Through Node into the connection.
  • Deleting all connections to/from a Pass Through Node will also automatically delete it.
Min/Max Settings

Nodes, which have a min-max range setting, will no longer swap the min and max values to the correct order while editing. Instead, the Node will show the correct order the next time you open its settings.

This improvement affects the following Nodes:

Optimization & Constant Folding

This update adds a new optimization to AudioNodes, called constant folding, which optimizes Node paths which are not changing over time.

This is accompanied by a new setting, on the miscellaneous settings page, to show a visualization of connections on an optimized path, indicated by a dashed connection:

This optimization will especially have a lot of significance later when custom Nodes arrive. For now, it’s mostly here for testing purposes. With custom Nodes, a custom param may go through various other Nodes before reaching another Node. With constant folding, these will not result in any signal processing overhead.

Piano Roll Node Changes

The Piano Roll Node received several usability improvements, and some bugfixes:

  • Fixed an issue where some MIDI files would import notes with an unexpectedly short duration
  • Added a new setting to quantize notes while recording
  • Added a new option to randomize note velocities
  • Added a new option to display notes as MIDI codes (e.g. 54, instead of the musical note name A4)

New Note Velocity Change Node

The Note Velocity Change Node is a new, simple melody processor Node that increases or reduces note velocity by a fixed amount. Similar to the Note Pitch Change Node, except for velocity.

Misc Changes

  • Added a new button to the Drum Sequencer Node to reset drum steps and velocity.
  • Added a new Detune setting to the Note Override Node. This is the first option using the new microtonality system.