github ossia/score v3.4.0

latest release: continuous
one day ago

Discord Open Collective backers and sponsors GitHub Sponsors

Full Changelog: v3.3.2...v3.4.0

ossia score 3.4.0 is a feature-packed release for the start of 2025.

New features

  • Introduce initial (very alpha, mainly to set the base architecture) support for loading AI models through onnxruntime. Right now supported models are BlazePose, YOLOv7 (blob detection), YOLOv8 (pose), ResNet. More to come, please mention any model you'd be interested in on our Discord! Feat. a cute new icon by @aklevy!

image

  • Introduce initial support for using Bitfocus Companion connections and modules directly from ossia score. This requires installing an additional package from the package manager.

image

  • Introduce initial support for MIDI control surfaces using the MCU protocol. Selecting a process will now make its parameters available over the control surface UI.

mcu

  • Introduce Array Combiner, Array Tool, Array Flattener, and Array Recombiner processes to efficiently process arrays in various ways.

image

  • Add a new Envelope Follower based on Kevin Ferguson's algorithm. Unlike other analyzers, this one stays in the audio domain to enable CV-like control of things.

image

  • Add a new 2D Point View visualizer to visualize arrays of 2D positions.

  • Add an initial implementation for 2D and 3D DBAP spatialization algorithm. Note that the implementation just generates the coefficients, and thus can be applied to any kind of spatial content, not just audio data.

dbap

  • Arraygen / Arraymap now provide an n variable to get access to the current number of elements.

  • Improve on-line help integration. Hitting F1 on any process will now open a browser with the help page of said object. Device explorer's protocol dialog now has a Help button linking to the relevant protocol documentation.

online-help

  • Integrate on-line help with Faust, VST and LV2 help page if available.

  • LED View now supports displaying input array as a lightness array.

  • Lightness Computer now supports RGBW output to facilitate use with this kind of LED strip.

rgbw

  • LV2: add a locally-built Suil for showing LV2 UIs as the latest release does not yet support Qt 6. Note that this does not ship with the release yet, it's only for source builds.

  • macOS: more video format support.

  • macOS: port away from PortAudio to MiniAudio for audio backend. This finally allows to select a different input and output device and overall looks much more stable all while being much easier to integrate.

  • Patternist: add support for Accent and Slide features to enable sick acid bassline patterns.

  • Patternist: add support for legato notes.

  • Patternist: add TB-3 (303-like) patterns to the pattern library.

  • Patternist: add patterns from "260 Drum Machine Patterns" (René-Pierre Bardet) to the pattern library (thanks @danielmroczek).

patternist-3 4

  • Soundfile: allow to choose three quality levels for the resampling mode (e.g. pitch shift instead of time stretch). Previous and default mode is the HQ one, based on high-quality sinc interpolation from libsamplerate.

image

  • Threedim addon moved into official score repo to track changes more easily.

Platform and CI changes

  • Compatibility with Boost 1.87.
  • Flatpak: add an AArch64 build in CI.
  • Flatpak: update to the latest toolchain.
  • Initial successful builds of libossia targetting ESP32, more to come :-)
  • Many updates to dependencies
  • Reduce duplication in Github Actions CI tasks.
  • Replace Azure entirely with Github Actions.
  • RPi build: improve the startup scripts to cleanup unwanted dependencies if running on more recent AArch64 operating systems, such as Arch Linux or Asahi Linux.
  • Ubuntu Lunar (23.10) was removed from CI due end-of-life.
  • Ubuntu Oracular (24.10) was added to CI.

Bugfixes and improvements

  • Audio Recorder: support relative paths like elsewhere.
  • Automation: big rework of the pen tool to make sure we never end up in invalid states.
  • Automation: fix a rare crash when editing a curve point's X position.
  • BSD: implement VST3 support.
  • Calibrator: fix crash on remove on macOS. Thanks @led78 for finding and reproducing it!
  • CSV Reader: multiple bugfixes, improve timestamping.
  • Dev: allow to bypass some harmless ASAN warnings through SCORE_SANITIZE_SKIP_CHECKS=1 env var.
  • Dev: fix missing include (thanks @aalex!).
  • Fix some save format cable-related issues.
  • Geometry Filter: allow to chain multiple identical filters (a small feature in appearance, which requires a full-blown GLSL parser in practice...).
  • Geometry Filter: support livecoding better.
  • Gfx: work on geometry output from nodes in the GPU node graph.
  • GPS: fix a memory safety issue.
  • JIT: re-add support on AArch64.
  • JS: implement a deviceToOSCQuery function to export the OSCQuery JSON of a given device.
  • JS: implement an enumerateDevices API to track added and removed devices like in the Device dialog.
  • Kinect: fix build, initial try for a registered point-cloud output.
  • MIDI: fix that devices would sometimes enumerate too early on macOS leading to them not being visible in the UI.
  • MIDI: fix Computer Keyboard support on macOS. Note that this requires Accessibility permissions.
  • MinGW: reenable addons on CI.
  • MSVC: reenable addons on CI.
  • OSC: add support for always sending bundles for devices that only understand bundles.
  • OSC: disable broadcast being locked to 255.255.255.255.
  • OSC: fix that OSC devices were not recreated leading to OSC not working after editing the device.
  • OSCQuery: improve compatibility with weird embedded webservers.
  • Package manager: support packages with multiple files to download.
  • Patternist: fix crash when changing current pattern.
  • Serial: work on allowing non-standard baud rates, if the system supports that.
  • Signal display: fix scaling issues.
  • UI: make a preset appear under the mouse when dropped.
  • UI: performance optimizations for process and filesystem views.
  • UI: improve behaviour of nodal view especially when rescaling and resizing things.
  • UI: improve behaviour of copy-paste in nodal view.
  • Video: do not hide cursor on embedded video windows.
  • Video: multiple fixes to color space shaders introduced in 3.3.2.
  • VNC: fill the requested screen resolution instead of a 1024x768 default square.
  • VST3: fix crash when closing and reopening JUCE plug-ins. Fixes #1620.
  • Many performance optimisations for the various math expression objects.
  • As always a slew of smaller bugfixes and improvements !

Don't miss a new score release

NewReleases is sending notifications on new releases.