Skip to content

Releases: greatest-ape/OctaSine

v0.9.1

03 Jul 11:00
Compare
Choose a tag to compare

Fixed

  • Fix GUI issues when using the clap plugin in Bitwig
  • Fix issue with activating operator 2 modulation target from GUI modulation matrix
  • Show file save/load dialogs on top of plugin window on macOS
  • When saving patch bank/state, also save selected patch index (and restore it on load)

v0.9.0

03 Aug 19:17
Compare
Choose a tag to compare

This release contains breaking changes. Voice phases are reset when they end, which can audibly impact existing projects.

Added

  • Add monophonic voice mode (only once voice active at a time). In this mode, when envelopes are restarted, attack will proceed from the previous volume, not from zero
  • Add glide (portamento)
    • Available for both polyphonic and monophonic voice modes
    • Can be set to OFF, LEG (only glide when playing legato) or ON (always glide)
    • Supports linear constant time (LCT) and linear constant rate (LCR, time per octave) modes
    • Supports optional BPM sync for time/rate
    • Optionally retrigger envelopes and LFOs when gliding in monophonic mode

Changed

  • Replace patch settings overlay with button for toggling alternative visible controls

Fixed

  • Reset voice phases when they end. This fixes an issue where subsequent key presses without intermediate parameter changes do not result in identical sounds.

v0.8.7

16 May 22:09
Compare
Choose a tag to compare

Audio output is not bit-for-bit identical to version 0.8.6, but there should be no audible differences.

Added

  • Add velocity sensitivity parameters, i.e., parameters for how key press velocity affects:
    • Final voice volume
    • Modulation output (per-operator)
    • Feedback (per-operator)

Changed

  • Add parameter tooltips for better discoverability
  • Change layout of bottom right corner and make plugin window 12 pixels wider to accommodate new controls.

v0.8.6

12 Apr 18:22
Compare
Choose a tag to compare

Added

  • Add LFO key sync parameter, controlling initial phase of LFOs when activated by a key press. With the default of value of "on", the phase starts at zero. When value is set to "off", the LFO will instead start at a random point of the wave cycle.
  • Add pitch bend support. Parameters for upwards and downwards semitone range are accessible from the patch action dropdown menu.

v0.8.5

05 Apr 21:25
Compare
Choose a tag to compare

Added

  • Add square, triangle and saw operator waveforms. Patches created with previous versions should load from files perfectly. DAW projects should load perfectly in most cases, but if you've used automations on the waveform parameter, the effect will not be the same as before.

Fixed

  • Fix crashes on Windows when clearing patch bank or patches
  • Display file pickers on top of plugin window on macOS

v0.8.4

03 Apr 20:52
Compare
Choose a tag to compare

Added

  • Implement clap state extension

Changed

  • Use new patch bank / patch format with better provisions for forward compatibility. Patches created with previous versions are automatically converted when opened.
  • Upgrade to iced v0.8

Fixed

  • Make CLAP plugin GUI work in Bitwig on Windows; it still doesn't work in Bitwig on macOS and only sometimes on Linux
  • Fix clap miscompilation on Linux on aarch64

v0.8.3

14 Feb 20:07
Compare
Choose a tag to compare

Added

  • Add initial clap plugin support

Changed

  • Upgrade to iced v0.7

Fixed

  • Fix crashes when opening GUI

v0.8.2

22 Dec 18:01
Compare
Choose a tag to compare

Added

  • Support sustain pedals (MIDI CC 64)

Changed

Fixed

  • Improve detection of when mouse cursor hovers over envelope draggers

v0.8.1

29 Oct 21:04
Compare
Choose a tag to compare

This release features native Apple Silicon support, performance improvements and bug fixes, including making parameters automatable in Bitwig Studio and Carla.

Audio output is not bit-for-bit identical to version 0.8.0, but there shouldn't be any audible differences.

Added

  • Add Apple Silicon support. The macOS release is now built as a universal binary

Changed

  • Improve performance by around 10% in many cases by improving CPU cache behaviour in audio generation
  • Port several SLEEF functions to Rust to avoid relying on undefined behaviour, remove the need to use a nightly compiler and ease cross-compilation, e.g., for Apple Silicon. Unfortunately, performance of these functions is decreased somewhat.
  • In audio generation, skip extracting voice data if envelope is ended
  • Update dependencies

Fixed

  • Fix bug where plugin didn't properly tell host about automatable parameters, causing them not to be picked up by Bitwig, Carla and possibly other hosts
  • Tweak audio gen to fix (very minor) differences between simd widths
  • When envelope ends, set voice operator phase to 0.0

v0.8.0

28 Aug 17:15
Compare
Choose a tag to compare

This release features revamped stereo panning, shorter minimum envelope stage lengths, improved patch management, displaying of waveforms and various fixes.

This release contains breaking changes. Patches might not be able to be fully migrated. However, in many cases, importing patches from 0.7.0 and doing two changes will work:

  • Setting mod out values to 0.7071 of what they previously were
  • Setting LFO targets to the correct value (they may have been changed)

You can keep version 0.7.0 alongside this release, since they use different VST2 plugin IDs.

Added

  • Display (part of) left and right channel waveforms for all operators
  • Add patch section dropdown with actions for opening patch/bank files, saving patches/banks, renaming patches and clearing current patch/bank
  • Add functionality for setting parameter values exactly. Click on values to display a value input window.
  • Reintroduce master volume and master frequency parameters as LFO targets (removed in version 0.7)

Changed

  • Rework panning
    • Use true stereo panning (not just balance) for mix and modulation output
    • Stop using constant power panning for modulation output. Previously, when an operator was panned to the center, its modulation output would scale at cos(π/4) (approximately 0.7071) the rate of feedback but at the same rate when panned hard to a side, which is not very intuitive.
  • Decrease minimum envelope stage duration from 10ms to 3.33ms
  • When note off message is received during envelope attack phase, always go to release phase, even if it means that with low sustain volumes and a long release time, short notes might be loud for a lot longer than longer notes. This is how FM8 envelopes work.