New Script TOP, Engine COMP now has DAT support and works on macOS, many bug fixes and improvements
Release Notes 
Sep 24, 2020
New Features
  • Script TOP - New TOP that can get its data from Python using copyNumpyArray().
  • Engine COMP - Major improvements and bug fixes
    • Engine COMP now working in macOS.
    • Added support for DATs In and Out.
    • Custom color, size, position parameters are correctly handled.
    • Added support for Header parameter type.
  • Audio File In CHOP - Added parameter to disable auto-fading when starting and stopping a file.
  • Table DAT - 'Sync to File' for Table DAT, works the same as Text DAT. Options for post processing such as table size, removing blank lines etc will be disabled.
  • Table DAT / Text DAT - When 'File' parameter changes the contents will now reload right away without needing to pulse the 'Load' button, similar to how other file-reading nodes work. 'Load on Start' still needed to update on startup and 'File Sync' needed to monitor file changes.
New Python
  • SysInfo Class new members MIDIInputs and MIDIOutputs - Returns a list of all MIDI input/output device names.
New Palette
  • Palette:stitcher - Fixed incorrect parsing of fisheye files. Also added version info and Help button.
Bug Fixes and Improvements
  • NDI - Upgrade to NDI 4.5.3.
  • Luma Blur TOP - Fixed giving incorrect results on macOS.
  • Movie File Out TOP - Fixed some cases where H264/H265 would fail to record.
  • Movie File Out TOP - Give better error when output resolution is too high for the codec/GPU.
  • Notch TOP - Fixed memory leak with exposed string parameters.
  • Notch TOP - Added logging capabilities through TOUCH_NOTCH_LOGGING environment variable.
  • Nvidia Flex TOP - Allow for Nvidia Flex Solver COMP reference to retrieve diffuse particle data.
  • Point File In TOP - Improved reporting of PLY parsing errors.
  • Text TOP - Better word wrapping for non-english fonts on macOS, when multiple spaces are at the start/end of the line.
  • Text TOP / Field COMP - Fixed cases where extra newlines would appear in non-english language output on macOS.
  • Touch In TOP - Rework playback algorithm for smoother playback. Added receive_fps for Touch In TOP in Info CHOP channels.
  • Touch Out TOP - Reworked behavior to improve smoothness and performance. Avoid cases where frames were sent twice. Added send_fps for Touch Out TOP in Info CHOP channels.
  • Video Device Out TOP - Fix hang that occurs when turning off 'Active' parameter using Bluefish444 cards.
  • Video Device Out TOP - Added extra channels late_frames and video_hw_buffer_length to Info CHOP for Blackmagic Design devices.
  • Video Device In TOP - Upgrade to Ximea SDK for Ximea cameras.
  • Video Device In TOP - Fixed some Ximea model cameras not functioning properly.
  • Video Device In TOP - Fix for crashes with some older devices under DirectShow, improve performance for some hardware under DirectShow.
  • Video Stream In TOP - Fixed memory leak that was occuring.
  • Audio NDI CHOP - Fixed this operator incorrectly using only Commercial/Pro licenses.
  • Bind CHOP - Fixed bug where setting bound values from script sometimes ignored.
  • Bind CHOP - Fixed evaluation of channel when source of change is a parameter.
  • Delete CHOP - Fixed a crash that could happen when there are 0 channels.
  • MIDI Out CHOP - Simplified Output mode now includes channel prefix for both pitch and program channels. Backward compatibility - Example "pitch" -> "ch1pitch"
  • Actor COMP - Fixed Flex feedbacking for Fluid Emitters.
  • Actor COMP - Allow use of all transform parameters (except Translate) when used as a Fluid Emitter.
  • FBX COMP - Fixed importing of curves.
  • Geometry COMP - Renamed 'Rotate To Order' menu entries for clarity.
  • Nvidia Flex Solver COMP - Added num_active_diffuse_particles to Info CHOP.
  • Parameter COMP - Fixed issue where pressing + expansion button caused bad overlapping layout.
  • Replicator COMP - Fixed crash of cloned replicator comps with missing 'Master Operator'.
  • Select COMP - Improved parameter disabling when using 'Match Size'.
  • USD COMP - Fixed crash when loading USD OP Snippet or certain USD files.
  • Window COMP - Fixed Perform Mode using wrong resolution for TOPs in some cases.
  • Alembic SOP - Fixed crash that could occur with certain files and fixed importing of Bezier Curves.
  • CPlusPlus SOP - Added volume/intersect functions.
  • Group SOP - Fixed an issue where the highlighted points wouldn't update when changing the selection.
  • Group SOP - Bounding Object calculation time halved in typical case.
  • MIDI In DAT / MIDI Event DAT - Include channel in pitch events.
  • Panel Execute DAT - Fixed dependencies not being added to Panel Execute DATs if multiple toggles are expressions, reported as strange behavior in Palette:arcBallCamera.
  • Render Pick DAT / Render Pick CHOP - Fixed some cases where picking would always be deemed as a pick, even on empty space. Fixed some picking issues on AMD and Intel GPUs.
  • SocketIO DAT - Fixed bug where the DAT would not reconnect after the server has restarted.
  • SocketIO DAT - Added 'Reconnect Delay' parameter.
  • WebSocket DAT - Fixed lost messages in Websocket binary receiving.
  • Custom Operators - Fixed custom parameters not being created on Custom OPs that had minInputs > 0 and no inputs connected yet.
  • Added 'Insert Parameter' menu entry for sequential parameters.
  • Tweaks to grouplist menu to match keyboard shortcuts and adjusted name colours to be visible when selected.
  • When copying or cloning protected nodes, include contents as well (Note: they are still protected).
  • Fixed issue in OP Snippets where things would still cook after closing the OP Snippets window.
  • Fixed crash when using 'Tag' button in Customize Component editor.
  • Adding/removing tags using Parameter Dialog now undoable.
  • Fixed an issue with MIDI Mapper Dialog showing incorrect MIDI device names when operatoring system set to lauguage using unicode characters (ie. not english).
  • Fixed issue with re-connecting MIDI devices on macOS.
  • Fixed Custom Parameters crash when using newlines in labels.
  • Fixed importing of modules expecting stdout.isatty() function (eg import colorful).
  • Fixed Par.enableExpr not initializing properly.
  • Par.section used in expressions now refreshes properly.
  • Connector Class.connect() - Fixed a crash when connecting to invalid target.
  • TouchEngine - Fixed issue which could leave TouchEngine processes running beyond their useful lifetime.
  • TouchEngine - Changes to improve the behavior of processing operating system and other events, sometimes these were blocked previously.
  • TouchEngine - Fixed errors if a change in power state caused an expression to be evaluated.
  • TouchEngine - Added support for Header parameter type.
Backward Compatibility
BACKWARD COMPATIBILITY - MIDI Out CHOP - Simplified Output mode now includes channel prefix for both pitch and program channels. Example "pitch" -> "ch1pitch"