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

  • Added support for parsing CSV files generated by Microsoft Excel that are actually semicolon-separated
  • Fixed many crashes and hangs, including those related to apps that use the Vuo SDK to run compositions in the same process as the host app
  • Fixed various peculiarities on Apple Silicon (M1/ARM64) systems

Built-in Nodes, Types, and Input Editors

  • In the Fetch Table node, added support for parsing CSV files generated by Microsoft Excel that are actually semicolon-separated (Thanks to @MartinusMagneson for reporting this!)
  • Added workaround for crashes related to reconfiguring the built-in display on an Apple Silicon (M1/ARM64) system (Thanks to @Bodysoulspirit, @Joëlle, and @funwithstuff for reporting this!)
  • Fixed issue where compositions containing Fetch Scene or Fetch List of Scenes would crash when exported to an app or plugin (Thanks to @wmackwood for reporting this!)
  • Fixed issue where Find Faces in Image could hang during initialization (Thanks to @cwilms-loyalist for reporting this!)
  • Fixed issue where Make Noise Image and Make Spherical Noise Image didn’t output anything on Apple Silicon (M1/ARM64) systems when the “Spacing” port was set to 0 (Thanks to @Joëlle for requesting this!)
  • Fixed issue where virtual audio devices (such as macOS’s “Multi-Output Device”) weren’t appearing in the list of devices, and were logging kAudioHardwareBadPropertySizeError messages (Thanks to @Joëlle for reporting this!)
  • Added documentation to the URL node set on how relative paths work in exported apps/plugins (Thanks to @pbourke for asking about this!)
  • Expanded color documentation to include RGBA, HSLA, and CMYKA color models
  • Improved Make Slider node performance
  • Fixed tiny memory leaks in the Receive Live Video, Capture Image of Screen, Blur/Sharpen Image *, Make Cartoon Image, Make Image Layer with Shadow, Execute Shell Command, Fetch RSS Items, and Convert Boolean/Integer to Text nodes
  • Fixed issue where Get Rendered Layer Bounds returned an incorrect size for text layers when ‘Include Children’ is false
  • Renamed list ports on some math nodes to be more consistent
  • Fixed issue where, if you use File > Record Movie then stop the composition from Vuo editor, the “Save As” dialog might disappear prematurely

Vuo Editor

  • Fixed issue where, when a secondary display is arranged to the left of the main display and the composition window is on the secondary display, some input editors would appear on the main display instead of the secondary display (Thanks to @funwithstuff for reporting this!)
  • Expanded shader documentation on ISF-to-GLSL-uniform mappings
  • Fixed issue where window-modal dialogs were positioned incorrectly on macOS 10.12 through 10.15
  • Fixed issue where, in dark mode with toolbar labels shown, a white line would sometimes appear between the published port sidebars and the canvas
  • Reduced the excessive padding in the shader editor’s context menus when in dark mode
  • Fixed crash when opening a shader with an unbounded point2D input port on Apple Silicon (M1/ARM64)

Documentation and Examples

  • In the perspective camera documentation, mentioned that the Field of View port refers to the horizontal field of view (Thanks to @pbourke for asking about this!)
  • Added documentation on when and why type-converter nodes get expanded (Thanks to @dust for asking about this!)
  • Fixed misplaced text in the “Route data/events through the composition” section of the HTML manual
  • Clarified the instructions for the “Record Camera Drags” example composition


  • Note to authors of custom nodes and types:
    • The MyType_makeFromString() methods have been removed. If your custom nodes and types need this functionality, please use the new VuoMakeRetainedFromString() method.
    • Vuo is not yet able to correctly generate MyType_retain()/MyType_release() methods for some struct types on Apple Silicon (M1/ARM64). When implementing a custom type, please implement these methods manually for now (the compiler will detect that you’ve implemented them and won’t try to automatically generate implementations).
  • Fixed issue where (on macOS 10.15+) a host app that attempts to run a second instance of a composition in the same process might crash with a code-signing issue
  • Fixed intermittent crashes and glitches when running a composition in the same process as the host app (Thanks to @Joëlle for reporting this!)
  • Fixed issue where a host app couldn’t launch multiple instances of the same composition in the same process on Apple Silicon (M1/ARM64)
  • Modified the VuoPluginApp example to automatically open a document on launch, to make it clearer that the app has launched successfully
  • Added VuoListCreateWithValueArray function, to make it easier to convert a C array to VuoList
  • Updated SDK documentation for Xcode 13