Skip to content

Releases: helgoboss/helgobox

v2.16.1

09 Aug 13:03
Compare
Choose a tag to compare
  • General: #1058 Fixed possible error "REAPER string should be UTF-8 encoded" when using Helgobox App
  • Playtime: #1070 Added memorization of ignited slots when closing and reopening REAPER project (starting playback after reopening the project will play the ignited slots)
  • Playtime: #1063 Added possibility to append or merge matrix sequence to/into existing arrangement
  • Playtime: #1062 Added column context menu entry "Insert column for each selected track"
  • Playtime: #1069 Added MIDI panic button to window title bar
  • Playtime: #936 Added setting to hide license info from title bar
  • Playtime: #1077 Improved silence mode by starting playback immediately when playing a single clip
  • Playtime: #1076 Improved tempo detection recordings by displaying a warning in silence mode and by not playing ignited clips after recording
  • Playtime: #1082 Improved usability by selecting corresponding REAPER track when activating a column or slot
  • Playtime: #966 Improved arrangement export by not just using REAPER's time selection to determine the length of the export but also its starting position
  • Playtime: #1066 Improved latency compensation when recording clips and only compensate when not using input monitoring (only matters when using high buffer sizes)
  • Playtime: #1060 Improved MIDI overdubbing by showing overdubbed notes in the open MIDI editor in real-time
  • Playtime: #1059 Improved usability by starting off with 8 rows instead of no rows (makes initial addition of rows obsolete)
  • Playtime: #939 Improved auto-detection of Launchpad Pro by being more tolerant regarding its device family ID
  • Playtime: #1086 Fixed GUI bug that caused the import-file dialog not covering all audio file types (now it simply shows files of all types)
  • Playtime: #964 Fixed bug that caused immediate MIDI recordings to be played back with 120bpm instead of the original tempo
  • Playtime: #964 Fixed error when attempting to insert a column when the corresponding project tab is not active (needs REAPER 7.19+)
  • Playtime: #1072 Fixed metronome possibly being delayed if project resample mode is not the default resample mode (e.g. "r8brain free")
  • Playtime: #966 Fixed bug in arrangement export that caused non-looped clips being written to the arrangement as looped items
  • Playtime: #1071 Fixed bug that caused MIDI notes being played back even if they are muted
  • Playtime: #967 Fixed possibly overlapping clip playback in exclusive column mode when other clip is triggered shortly after start of the bar (even if clip stop timing is set correctly)
  • Playtime: #1000 Fixed PDC-related bug that caused initial material to be skipped when starting playback in REAPER or in Playtime
  • Playtime: #968 Fixed another PDC-related bug that caused initial material to be skipped when playing back a recorded loop for the first time
  • Playtime: #969 Fixed GUI bug in the waveform view that caused the waveform to be completely wrong in certain situations (e.g. when the audio file was not very short or if not much screen space was available)
  • Playtime: #1065 Fixed another GUI bug in the waveform view that caused the waveform to disappear when the effective clip section is longer than the length of the audio file
  • Playtime: #963 Fixed GUI bug that caused drag and drop between slots to not work in certain situations
  • Playtime: #963 Fixed a related GUI bug that caused scrolling to go get stuck in certain situations
  • Playtime: #970 Fixed bug that caused row copy to not copy the row name
  • Playtime: #973 Fixed notes being triggered twice during MIDI overdubbing when using input monitoring
  • Playtime: #940 Fixed GUI bug that caused settings panel "Controllers" being completely empty if no controllers are set up yet
  • Playtime: #935 Fixed Windows-only GUI bug that caused serious issues with the full-screen mode
  • ReaLearn: #1081 Fixed fire mode "Fire after timeout" firing even if button released before timeout

v2.16.0

07 Jul 14:01
Compare
Choose a tag to compare
  • Important rebranding: The plug-in has been renamed from "ReaLearn" to "Helgobox - ReaLearn & Playtime". Helgobox unites 2 products: ReaLearn (free and open-source) and Playtime (paid and mostly closed-source).
  • ReaLearn now requires at least REAPER 6.11 (I simplified some code by using REAPER 6.11 features)
  • 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)
  • Added welcome screen which allows one to add a Playtime toolbar button. That works best with current REAPER releases, older REAPER versions require a restart.
  • Added generic main preset for changing FX parameters
  • Added Helgobox App: An app that provides the user interface for Playtime and ReaLearn Projection. Right now, it is only available embedded into REAPER and only on macOS on Windows. In the future, it will be made available for Linux, Android and iOS, eventually replacing the ReaLearn Companion App.
  • #906 Added a REAPER extension, which is automatically loaded at REAPER startup and acts as a supplement to the actual VST plug-in. Provides a convenient entry 'Helgobox' in the REAPER 'Extensions' menu and other features right after REAPER 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. It's optional, ReaLearn will also work without it!
  • #931 Pot Browser: Added recording of preset previews for exporting purposes
  • #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)
  • #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
  • Improved virtual control by considering two same-named virtual control elements with different character the same (this change has only been made to named control elements, not to numbered ones!)
  • #923 Improved auto-load by falling back to initially active preset when no FX focused
  • #928 Improved both "After timeout" fire modes by respecting button filter setting (this makes long-press-on-release-off scenarios achievable with just one mapping)
  • Improved import by warning when invalid top-level properties were detected (which could indicate wrong usage of the import API)
  • Improved error reporting when importing invalid Luau code by making the error cause more visible
  • Improved reliability of preset loading/import in high-CPU usage situations by increasing the maximum execution time of Luau scripts
  • Improved reporting of general errors by not just logging repeated error messages as vertical dashes (this was confusing)
  • Improved Projection feature by building it into the Helgobox App (which is only accessible to early-access Playtime testers at the moment)
  • 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
  • #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
  • #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")
  • Improved resource usage (by firing up threads ...
Read more

v2.16.0-pre.18

04 Jul 18:31
Compare
Choose a tag to compare
v2.16.0-pre.18 Pre-release
Pre-release
  • Playtime-related changes (details available for early-access testers only)
  • Renamed plug-in library file and repository from 'realearn' to 'helgobox', also renamed many other occurrences of ReaLearn to Helgobox
  • Added Helgobox App to the main ReaPack package (it was previously only available for Playtime early-access testers)
  • #931 Pot Browser - Preview Recorder: Added recording of preset previews for exporting purposes
  • #932 Fixed fire mode "After timeout" firing like crazy
  • Internal change: Use Rust 1.79.0

v2.16.0-pre.17

19 Jun 14:50
Compare
Choose a tag to compare
v2.16.0-pre.17 Pre-release
Pre-release
  • Playtime-related changes (details available for early-access testers only)

v2.16.0-pre.16

19 Jun 10:56
Compare
Choose a tag to compare
v2.16.0-pre.16 Pre-release
Pre-release
  • Playtime-related changes (details available for early-access testers only)

v2.16.0-pre.15

13 Jun 14:35
Compare
Choose a tag to compare
v2.16.0-pre.15 Pre-release
Pre-release
  • Playtime-related changes (details available for early-access testers only)
  • Improved virtual control by considering two same-named virtual control elements with different character the same (this change has only been made to named control elements, not to numbered ones!)
  • #923 Improved auto-load by falling back to initially active preset when no FX focused
  • #928 Improved both "After timeout" fire modes by respecting button filter setting (this makes long-press-on-release-off scenarios achievable with just one mapping)
  • Improved "suitable main preset selection" algorithm when connecting known controllers
  • Improved import by warning when invalid top-level properties were detected (which could indicate wrong usage of the import API)
  • Improved error reporting when importing invalid Luau code by making the error cause more visible
  • Improved reliability of preset loading/import in high-CPU usage situations by increasing the maximum execution time of Luau scripts
  • Improved reporting of general errors by not just logging repeated error messages as vertical dashes (this was confusing)
  • Fixed memorization of last color in color picker
  • Fixed broken connection from ReaLearn Companion running on Android
  • Fixed possible errors when connecting MIDI devices (related to the new controller auto detection)
  • Fixed some incorrect detection of recursive tables in Luau code on import
  • Removed CSI MST import
  • Internal change: Removed undocumented ReaLearn script utility functions
  • Internal change: Removed old logging framework
  • Internal change: Renamed lots of Prometheus metrics
  • Internal change: Enforced UTF-8-encoded paths very early in the processing when interfacing with the REAPER API (REAPER by contract should provide UTF-8 encoded paths, if not it's a bug in REAPER)

v2.16.0-pre.14

24 Apr 18:52
Compare
Choose a tag to compare
v2.16.0-pre.14 Pre-release
Pre-release
  • Playtime-related changes (details available for early-access testers only)

v2.16.0-pre.13

15 Mar 16:06
Compare
Choose a tag to compare
v2.16.0-pre.13 Pre-release
Pre-release
  • 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

08 Feb 18:23
Compare
Choose a tag to compare
v2.16.0-pre.9 Pre-release
Pre-release
  • 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

21 Dec 23:38
Compare
Choose a tag to compare
v2.16.0-pre.7 Pre-release
Pre-release
  • Requires REAPER >= 6.11 (I simplified some code by using REAPER 6.11 features)
  • Improvements related to Playtime