Releases: helgoboss/helgobox
Releases · helgoboss/helgobox
v2.16.0-pre.14
- Playtime-related changes (details available for early-access testers only)
v2.16.0-pre.13
- Playtime-related changes (details available for early-access testers only)
- Renamed plug-in name to "Helgobox - ReaLearn & Playtime"
- Added welcome screen (adding a Playtime toolbar button works best with current REAPER pre-releases, older REAPER versions require a restart)
- Added generic main preset for changing FX parameters
- Added possibility to edit Playtime targets directly within ReaLearn (no Lua required anymore)
- Improved Projection feature by building it into the Helgobox App (which is only accessible to early-access Playtime testers at the moment)
- Improved niceness by making Helgobox menu a submenu of Extensions
- Improved ReaLearn unit management by allowing custom unit names and improving how units are displayed in the main panel
- Improved Lua-based compartment presets: One can now add a preset description
- Improved Midi Fighter Twister controller presets: Now Lua-based, with ReaLearn color support and available in 2 different virtual control schemes (grid and numbered)
- Improved ReaLearn REAPER actions by showing an error if instance needed to execute the action and improving macOS message panel font size
- Improved Lua MIDI scripts by allowing them to access the common compartment Lua module even when just calculating the feedback address
- Improved Lua-based presets and imports by detecting cyclic module dependencies
- Fixed broken mapping row context menu
- Fixed broken ReaLearn Unit Start target
v2.16.0-pre.9
- Playtime-related changes (details available for early-access testers only)
- Changed scripting language from Lua 5.4 to Luau (existing scripts should run in the same way as before because all Lua 5.4 functions that I have previously unlocked for usage are also available in Luau)
- First mention of the upcoming product name "Helgobox": The VST plug-in that we know as ReaLearn will soon be renamed to "Helgobox". ReaLearn will stay as the central part of Helgobox. The other parts will be "Playtime" and (in long-term future) "Sound Pot". In a nutshell: Helgobox = ReaLearn + Playtime + SoundPot = A collection of creative tools that turns REAPER into a powerful musical instrument ... you will see the big picture as soon as Playtime 2 is revealed.
- #906 Added new REAPER extension called "Helgobox", which is automatically loaded at REAPER startup and acts as a supplement to the actual VST plug-in. Provides a convenient top-level menu and other features right after start, which would otherwise only be available if at least one ReaLearn VST plug-in instance is loaded. This extension is currently shipped on Windows and macOS but in general it's optional, ReaLearn will also work without it!
- #870 Added ability to add additional units to one ReaLearn instance (= one ReaLearn instance can now deal with multiple controllers)
- #901 Added support for compartment presets written in the Luau language (including the ability to require other Luau modules in the same namespace)
- #908 Added extensive auto-generated Luau type definitions for building ReaLearn presets, ReaLearn MIDI script sources and Playtime matrices with auto-completion and error reporting (for code editors with Luau support, e.g. Visual Studio Code)
- #908 Added menu option to create a ready-made preset development workspace that can be opened in Visual Studio Code (see workspace README for details)
- Added possibility to reuse Luau code defined once within a compartment preset across all MIDI script sources used in that compartment (avoids having to duplicate device-specific code in hundreds of mapping, saving memory ... and it just makes sense)
- #902 Added support for factory presets (they are really built-in, not shipped separately ... presets currently distributed via ReaPack will disappear soon)
- #903 Added feedback logging to mapping panels (analogously to control logging)
- #900 Added "Auto units" feature (1. Globally define what controllers you have => 2. Choose which main preset you want to use for which controller => 3. Make one or several ReaLearn instances automatically load/unload those presets whenever the controllers are connected/disconnected ... controller manager is a part of the Helgobox App, which is currently only available to Playtime Early Access testers)
- #905 Added possibility to add metadata to Luau presets (displayed in the upcoming Helgobox App and used for the new "Auto units" feature as well as automatic creation of known controllers
- #905 Added auto-magical creation of known MIDI controllers (via MIDI device inquiry, used for the new "Auto units" features)
- #904 Improved target menu by distinguishing between different target sections
- #902 Improved preset sharing by introducing the concept of preset namespaces (each sub folder of the main/controller preset folder is now a namespace, that means it's completely self-contained and can be easily shared, each namespace shows up in a different sub menu when browsing presets)
- #788 Improved shutdown behavior by switching all device LEDs/screens off and tearing all motor faders down when quitting REAPER
- #914 Improved input/output pickers by distinguishing between available and not available devices
- #913 Improved OSC performance by processing more OSC messages per cycle
- #913 Improved general performance by introducing lots of small-scale boosts after profiling hot code (non-crypto hash functions, unnecessary allocation and processing)
- #915 Improved robustness and usability by not participating in REAPER's undo anymore (this can prevent potentially fatal but in any case surprising scenarios in which doing an undo in REAPER sets back ReaLearn and Playtime to a very old state, requires REAPER >= v7.09+dev0202)
- Improved dummy target by making it work just like most other targets (generating pseudo feedback, value changes observable in mapping panel etc.)
- #916 Improved user interface by adding colors
- #916 Fixed scaling issue on Linux (colors are now also available on Linux but still looks a bit funny, hopefully the dark mode detection for SWELL customizations works now)
- Internal change: Use Rust 1.75.0
v2.16.0-pre.7
- Requires REAPER >= 6.11 (I simplified some code by using REAPER 6.11 features)
- Improvements related to Playtime
v2.16.0-pre.4
- Improved resource usage (by firing up threads for async logging and metrics only if enabled, by letting ReaLearn and Clip Engine metrics share the same thread, by making app and server share the same one-threaded async runtime and by stopping async deallocation thread and async runtime when last ReaLearn instance gone)
- Improved plug-in scanning speed (ReaLearn won't initialize a few things if it knows it's just being scanned anyway)
- Improved resource clean-up on Windows when REAPER preference "Allow complete unload of VST plug-ins" enabled
- #896 Fixed hard crash when duplicating mappings containing Lua scripts (2.16.0-pre.2 regression caused by changes related to async deallocation)
- Fixed possible audio dropouts due to deallocation in real-time threads when using EEL (2.16.0-pre.2 regression)
- Fixed possible panic when closing REAPER
- Internal change: Use Rust 1.73.0
- Internal change: Added counter of undesired real-time allocations to UI (debug builds only)
- Internal change: Added necessary changes to allow for Playtime early-access program
v2.16.0-pre.2
- Internal change: Playtime-related changes that shouldn't affect normal ReaLearn operation
- #875 Fixed deadlock when using 500+ ReaLearn instances
- #867 Fixed possible 'REAPER string should be UTF-8 encoded' error (when using long compartment parameter names in ReaLearn and referring to them elsewhere, e.g. as TCP param)
- #865 Fixed Lua import of XTouchMackieLCD display source settings
- #866 Fixed linking from FX to preset when ReaLearn is on monitoring FX chain
- Fixed 'BorrowMut' error when copy/pasting mapping with target-based activation condition
- Fixed potential hard crash in process_f64 call
v2.16.0-pre.1
- #757 Added possibility to write feedback scripts in the glue section: Now you can build arbitrary feedback messages using Lua code (custom text formatting is just one of the many possibilities).
- #716 Added Novation SL MkIII Pot Browser Control preset (available here)
- #716 Added text placeholders "target.available", "global.realearn_time", "target.discrete_value" and "target.discrete_value_count"
- #743 Added text placeholders "target.fx_parameter.macro.new_section.name" and "target.fx_parameter.macro.section.index" to target "FX parameter: Set value"
- #743 Added many text placeholders to targets "Pot: Browse presets" and "Pot: Load preset" for obtaining preset metadata such as author and comment
- #861 Pot Browser: Improved usability by stopping preview as soon as loading the preset
- #743 Improved target "Pot: Preview preset" by using the same sound player as the Pot Browser (inherits its functionality such as customizable volume and stopping playback when preset loaded)
- #864 Improved feedback due to conditional activation/deactivation by emitting it in deterministic order (in mapping order)
- #716 Improved feedback possibilities by processing text feedback expressions and scripts even if target doesn't support normal (numerical) feedback
- #716 Improved availability check for almost all Pot targets (good for advanced visual feedback of what Pot features are available in a certain situation, see new text placeholder "target.available")
- #862 Fixed source "MIDI script" feedback address not being respected (important e.g. for switching feedback off correctly)
- #863 Fixed ambiguous "kind" properties in ReaLearn Script (Lua import/export)
- #716 Fixed "context.feedback_value.color" not containing nil when no color set in source "MIDI script"
- #860 Fixed possible freeze when using "Open in text editor on macOS" by completely disabling this function on macOS
- #857 Fixed possible error when using "Selected" track selector and removing that selected track
v2.15.0
- Temporarily disabled Linux ARM builds
- #842 Added Pot Browser (a modern preset browser with support for preset crawling and preview recording, Windows & macOS only for now)
- #743 Added many new features and improvements to ReaLearn's experimental Pot targets (e.g. support for CLAP/VST3/JS, filter exclusion, skipping of empty filters, factory/user preset filter, product kind filter, favorite filter, support for REAPER's own preset formats ... and much more)
- #840 Added new option "Consider target invocations" to targets "ReaLearn: Modify mapping" and "Global: Last touched", e.g. in order to make it possible to ignore target invocations that were caused by ReaLearn itself
- #493 Added possibility to restrict the list of included target types when using target "Global: Last touched"
- #744 Added new target "ReaLearn: Modify mapping", currently supporting the following modifications: "Learn target", "Set target to last touched", supports picking included target types and modifying mapping of other ReaLearn instance
- #744 Added possibility to pick target from last-touched ones (one last-touched per type)
- #811 Added group interaction kind "Inverse target value (off only)"
- #708 Added basic Behringer x32 instructions to the list of tested controllers
- #716 Lua MIDI script: Improved error reporting
- #829 Improved compatibility with older Linux libc/libxdo versions by building release in Ubuntu 20.04 instead of 22.04
- #840 Improved global target capturing (via ReaLearn REAPER actions) by also adding support for learning transport controls and REAPER action invocations
- #840 Improved UI-triggered target learning (doesn't pick up target touches anymore that are caused by another ReaLearn instance)
- #765 Improved transformation editor to apply changes immediately when typing (no need to close window)
- #744 Improved performance of target "Global: Last touched"
- #744 Improved target "Global: Last touched" to pick up transport actions and some other actions as well (if included in the list of target types)
- #810 Fixed disappearing target value sequence values when the target is "FX parameter: Set value" and the FX is a JS FX
- #716 Lua MIDI script: Fixed "context.feedback_value.color" not containing nil if no color set
- #856 Fixed usability issue with "FX parameter: Set value" and instance FX "Focused" by making it possible to choose FX parameter although instance FX not focused anymore
- #847 Fixed full channel and subsequent PoisonError when ReaLearn needs to process many parameter changes at once (e.g. by parameter modulation)
- #841 Fixed issues with new REAPER v6.78+ dev builds (was totally broken)
- #835 Fixed glue section user interface inconsistency
- #838 Fixed possible errors with send targets when removing a hardware output send from a track
- #743 Removed Pot target's capability to save last selected preset and filters (temporary removal)
v2.15.0-pre.7
- #842 Pot Browser: Added possibility to search not just in preset name column but also plug-in/product and file extension columns (all 3 enabled by default)
- #842 Pot Browser: Added new text feedback placeholder "fx_parameter.macro.bank.name"
- #842 Pot Browser: Fixed broken detection of some JS effects (and related "FX preset" loading)
- #842 Pot Browser: Fixed UI issue that dialogs could get too large vertically
- #856 Fixed usability issue with "FX parameter: Set value" and instance FX "Focused" by making it possible to choose FX parameter although instance FX not focused anymore
v2.15.0-pre.6
- #842 Pot Browser: Improved usability by adding hint to "FX presets" database that ".vstpreset"-style presets are not yet supported
- #842 Pot Browser: Improved usability by detecting VST3 plug-ins scanned by very old REAPER versions and giving corresponding instructions (sometimes still shown as false positive)
- #842 Pot Browser: Improved usability by adding context column, e.g. to display the containing project of project presets
- #842 Pot Browser: Improved preview recording quality by not normalizing (closer to the original, less surprises when doing pre-play)
- #842 Pot Browser: Fixed loading of presets in "FX presets" for sub-directory JS effects on Windows and particular VST plug-ins
- #842 Pot Browser: Fixed slightly unresponsive GUI when opening Pot Browser for the first time
- #842 Pot Browser: Fixed error on Windows when trying to add project database (by not displaying file dialog)
- #842 Pot Browser: Fixed possible temporary UI inconsistency by preventing rebuilds during refresh