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

  • Added several new nodes, including some for making retro videogame images (Thanks to @gmm for sponsoring this!)
  • Added support for FxPlug pushbutton parameters
  • Fixed various crashes and other bugs

Read on for the details.

Built-in Nodes, Types, and Input Editors

  • Added Change Sampling Mode (nearest-neighbor downscaling/upscaling), Make Palette from Image (quantization), and Match Image to Palette (dithering) nodes (Thanks to @gmm for sponsoring this!)
  • Added support for reading HEIC images
  • Added Are Any False, Are All False, and Is One False nodes (Thanks to @cwilms-loyalist for requesting this!)
  • Fixed sporadic crashes when using multiple device (serial, audio, OSC, Blackmagic, Art-Net) nodes simultaneously (Thanks to @pbourke for reporting this!)
  • Clarified documentation for Find * by Name nodes to emphasize that they perform a wildcard match on the full name (Thanks to @pbourke for reporting this!)
  • Fixed issue where the Fetch Image node might leak memory if the specified file is corrupt or not an image (Thanks to @kam for reporting this!)
  • Fixed issues where, when changing the Play Movie node’s playback rate, audio might lose sync with video, and audio might continue playing after pausing (Thanks to @pbourke for reporting this!)
  • In Make Fisheye Camera, added “Distance Min” and “Distance Max” ports (Thanks to @pbourke for reporting this!)
  • Added Name and URL labels to the Serial Device summary (Thanks to @pbourke for reporting this!)
  • Added workaround for macOS locale bug that caused crashes when performing wildcard text matching (Thanks to @micpool for reporting this!)
  • Added Mirrored output to the Get Screen Values node (Thanks to @pbourke for requesting this!)
  • In Make Fisheye Camera, fixed flickering shards that appeared when triangles crossed the camera ground plane (Thanks to @pbourke for requesting this!)
  • Fixed issue where the Receive Kinect v1 Images node output images that didn’t use the full depth range — distant pixels will now be slightly darker
  • Changed Curve to output a valid value (rather than NaN) when its duration is 0
  • Fixed crashes in various nodes that create 3D objects when the first event specifies 0 rows/columns/slices/subdivisions
  • Updated to Blackmagic DeckLink SDK 12.4.2
  • Updated to NDI SDK 5.5.3
  • Marked the Filter Skeleton node deprecated, and removed mention of Delicode NI mate, since their website says it’s no longer for sale (Thanks to @video piglet for reporting this!)

Exporting Apps/Plugins/Movies

  • In exported FxPlug plugins, added support for pushbutton parameters (published event-only input ports) (Thanks to @marinoo1 for requesting this!)
  • Added movie export resolution 1080x1920 (HD 1080p portrait) (Thanks to @mixfilet for requesting this!)

Vuo Editor

  • Updated the canvas to respect the System Settings > Trackpad > Scroll & Zoom > Zoom in or out setting (Thanks to @MatthewDougherty for requesting this!)
  • Fixed crash when attempting to load many ISF shaders (Thanks to @ecoAV and @ClapsOn2and4 for reporting this!)
  • Fixed issue where pasting text into the node library’s search widget would replace all the text (instead of inserting the pasted text) (Thanks to @cwright for reporting this!)
  • When requesting info on the latest Vuo release, Vuo now sends the currently-installed Vuo and macOS version numbers to the web servers, to help us gather usage information to prioritize changes

Documentation and Examples

  • Added 4 new example compositions:
    • Compare Posterize and Palette
    • Compare Sampling Modes
    • Make Cyberspace Avatar
    • Simulate Old TV
  • Fixed failure to open example compositions in a custom node set when the node set name contains uppercase letters (Thanks to @MartinusMagneson for reporting this!)
  • Clarified Kinect v2 documentation about USB ports (Thanks to @video piglet for requesting this!)
  • Added tooltips for links in node and composition documentation (Thanks to @cwright for requesting this!)
  • Split the HTML manual into smaller sections, added a search widget, and added support for dark mode and high-contrast mode
  • Modified the customType example to demonstrate a simpler way of showing a menu input editor, a type used by multiple node classes, and an example composition packaged in the node set

Vuo Compiler and Runtime

  • Fixed issue where toolbar buttons had the wrong aspect ratio on macOS 13
  • Added support for building Vuo on macOS 14


Vuo 2.4.3 contains some API changes to lay the groundwork for supporting iteration and lists of lists. See the Vuo SDK (download below) for up-to-date code examples and the Vuo source code for even more examples.

  • Developing node classes — Existing node classes should continue to work, though it wouldn’t hurt to test them. In the future, as you modify or create new node classes, be aware of the following changes:
    • You should no longer #include "node.h" in node classes, #include "type.h" in types, or #include "module.h" in library modules. These are now included automatically as precompiled prefix headers.
    • You may need to add #includes for some Vuo types. If you compile your node class and get an error like unknown type name 'VuoSomeType', add #include "VuoSomeType.h".
    • When implementing a type, you should no longer implement a VuoList type to go with it. The list type is now generated automatically.
    • You should now compile library modules with vuo-compile instead of clang.
  • Developing applications that run Vuo compositions — You’ll probably need to recompile and relink your app with the updated Vuo framework, even if you don’t have to modify any code, due to ABI changes.
    • VuoCompiler::prepareForFastBuild() was renamed to VuoCompiler::prepareModuleCaches().
    • The VuoCompiler::Optimization options were renamed.
    • The VuoRunnerCocoa Objective-C API is deprecated as of Vuo 2.4.3 and planned for future removal since, as far as we know, it isn’t currently being used by any apps. Use VuoRunner (a similar API, in C++) instead. If you do still need the Objective-C API, please contact Team Vuo to tell us about your use-case.