Vuo 2.4.0 is a free update that includes several improvements. Highlights include:

  • Added support for exporting FxPlug plug-ins that run natively on Apple Silicon (M1/ARM64)
  • Added a console window (Tools > Show Console) that displays log messages
  • Adopted several community nodes as built-in nodes
  • Updated to the NDI 5 SDK, which now includes Apple Silicon (M1/ARM64) support

Also, in this release we dropped support for OS X El Capitan (10.11) and changed the minimum system requirement to macOS Sierra (10.12).

Read on for info on other changes.

Built-in Nodes, Types, and Input Editors

  • Added Get Mesh Values node (Thanks to @khenkel and @Bodysoulspirit for contributing to this!)
  • Added Make Phyllotaxis Points node (Thanks to @MartinusMagneson for contributing to this!)
  • Added Make Points along Cube Edges node (Thanks to @MartinusMagneson for contributing to this!)
  • Added Make Points along Oval node (Thanks to @Bodysoulspirit and @MartinusMagneson for contributing to this!)
  • Added Make Points on 2D/3D Grid node classes (Thanks to @MartinusMagneson for contributing to this!)
  • Added a “Discard When Full” input port to the Enqueue node to choose the discard direction (Thanks to @MartinusMagneson for contributing to this!)
  • Added Average List Item Groups node (Thanks to @MartinusMagneson for contributing to this!)
  • Added Split XY(Z(W)) List nodes (Thanks to @MartinusMagneson for contributing to this!)
  • Added Interleave List Item Groups node (Thanks to @MartinusMagneson for contributing to this!)
  • Added Wrap List node (Thanks to @MartinusMagneson for contributing to this!)
  • Added workaround for empty screen names provided by macOS on Apple Silicon (M1/ARM64) Macs (Thanks to @keithlang for reporting this!)
  • Fixed issue where Make Image from Web Page would output an incorrect image when the width wasn’t a multiple of 32 (Thanks to @keithlang for reporting this!)
  • Fixed issue where global mouse coordinates would change depending on which screen the active window was on (Thanks to @cwilms-loyalist for reporting this!)
  • Documented scaling of the Calculate Amplitudes for Frequencies node’s output; added “Compare Scaled Audio Frequencies” example composition (Thanks to @video piglet for reporting this!)
  • Fixed incorrect “Position” output of Cycle through List node after inputting a smaller list and sending an event to “Go Backward” (Thanks to @cremaschi for reporting this!)
  • Fixed issue where Change All Shaders would sometimes cause the composition to crash when rendering a previous copy of the scene while changing shaders in the upcoming scene (Thanks to @Mike Iv for reporting this!)
  • Fixed issue where Save Images/Frames to Movie would crash when passed an audio frame with 0 or more than 2 channels (Thanks to @keithlang for reporting this!)
  • Improved performance of many List and Math nodes when working with large lists
  • Enabled AV Foundation / VideoToolbox’s “professional” video codecs, to maybe speed up ProRes on Mac Pro systems with Afterburner
  • Added a Keep Average (List) node to calculate a rolling average or overall average for each item in a list, and added the option for Keep Average to calculate a rolling average (Thanks to @khenkel for contributing to this!)
  • Fixed crashes when passing out-of-range values to various nodes (Make Parametric Points, Make Parametric Grid Points, Make Parametric Object, Make Points in 2D/3D Grid, Make Random Value/List with Seed, Make Date-Time)
  • Fixed incorrect texture coordinates when using Intersect 3D Objects, Subtract 3D Objects, and Union 3D Objects
  • Fixed potential crash when using the deprecated versions of the Allow Changes, Changed, Decreased, or Increased nodes with the Screen, URL, or Video Input Device types

Exporting Apps and Plugins

  • Fixed crash when using an FxPlug in Apple Compressor (Thanks to @AN 2x4 for reporting this!)
  • Reduced latency when starting a composition exported as an FFGL plugin (Thanks to @vidbeat for reporting this!)
  • Fixed issue where the vuo-export and vuo-compile CLIs didn’t work for protocol compositions
  • Translated more of the text in the warnings about system requirements for exports
  • Fixed issue where the File > Export > Movie’s progress bar didn’t update on macOS 12

Vuo Editor

  • Improved français translations (Thanks to @Kewl for working on this!)
  • Fixed crash when opening a node title editor, comment editor, or published port name editor, then pressing Escape without making any changes (Thanks to @jon121 and @keithlang for reporting this!)
  • Fixed issue where a Quit menu item would sometimes appear in the File menu, and the Quit menu item in the Vuo menu would sometimes be disabled (Thanks to @jfg and @pbourke for reporting this!)
  • Added more console log messages to assist with troubleshooting compositions
  • Changed the port popover for Make Image with Shadertoy to not show the full shader code
  • Fixed crash when working with compositions that contained nodes compatible with missing types
  • Added more keywords for text, list, and table nodes

Documentation and Examples

  • Clarified the Vuo manual section on adding a comment by including the Markdown format for linebreaks and paragraphs (Thanks to @keithlang for requesting this!)
  • Expanded documentation on color depth for the Render Scene to Image, Render Scene to Stereo Images, and Blend Images nodes (Thanks to @jersmi for requesting this!)
  • Expanded documentation on multisampling for the Render Scene to Image and Render Scene to Stereo Images nodes

Vuo Compiler and Runtime

  • Added support for custom nodes that use run-path-dependent dynamic libraries (Thanks to @cremaschi for reporting this!)

SDK

  • Fixed issue where the vuo-compile CLI couldn’t process some 3rd-party C++ library headers (such as OpenCV) (Thanks to @cremaschi for requesting this!)
  • Converted the vuo-debug command-line tool to example code
  • Enabled support for throwing and catching C++ exceptions from within nodes and types (in addition to libraries, which already allowed them)
  • Fixed crash when loading a node class whose list of dependencies contains one ending with “.dylib”
Version
2.4.0