Skip to content

Releases: ossia/score

v3.0.1

14 Jan 10:40
Compare
Choose a tag to compare

New features

  • JS: add a Device.system method to run system shell commands
  • JIT: log more errors and give line numbers when an error occurs

Bugfixes

  • VST: Replace assert by softer safety check in case of missing plug-in
  • Magnetism: Add a safety in case some magnetism value ends up negative
  • Magnetism: Fix magnetism in sub-scenarios
  • Protocols: Multiple protocols fix in libossia when opening multiple documents (joystick and artnet)
  • Performance: Optimize curve rendering by caching common powers
  • Performance: Do not translate some strings as they show up in perf traces for now
  • Performance: Cache some texts that were being unneededly re-rendered
  • Various small code tidyings and fixes
  • VST3: Fix Vital loosing parameters upon save...
  • Midi: workaround some issue when dropping a midi and putting it in loop if there is already a nodal
  • LV2: Initialize sample rate correctly
  • UI: Various improvements for musical bar display
  • UI: Do not create connections between inlets when double-clicking from the process library
  • Rename Value Filter into Smooth as it is shorter and more specific
  • Refactor Micromap and normal mapping, add a po / pov variable and pa/pb/pc to access the previous output and previous values for a,b,c
  • 2D spline: Improve rendering smoothness of playback
  • JIT: Add rnd to jit in debug build to give access to a fast random value generator
  • Math expression: fix wrong samplerate for audio
  • UI: fix incorrect preset indexing
  • Optimize binary size by disabling some unused features in fmt

v3.0.0

05 Jan 13:58
Compare
Choose a tag to compare

New features

  • JSFX support available on Linux / Mac / Windows releases.
  • Many new functions in the JS console to serve generative needs. See https://vimeo.com/662325572 for an example.

Fixes & updates

  • Processes names have been reorganized a bit in categories. Audio plug-ins are now in a "plugins" category, as many plug-ins aren't audio effects or instruments, but for instance midi <-> midi, etc. Likewise, "Mappings" was put under "Control"
  • Add various missing licenses in the About dialog.
  • FFT with KFR will now use AVX, etc.. if available.
  • Ton of build fixes for various platforms
  • Update VST3 SDK to latest version.
  • Appveyor disabled until we have some time for fixing MSVC (and someone actually asks for it)
  • Save / reload for LV2.
  • Various fixes for VST.
  • Linux builds are now done under centos:8 (soon rockylinux:8).
  • Various accuracy fixes for Looper.
  • Various fixes for analysis plug-ins. Added a small filter as input to the pitch detector which makes it much more accurate
  • Fix support for some formats with shmdata.

v3.0.0-rc7

29 Dec 13:15
Compare
Choose a tag to compare

New features

  • Add support for JSFX (Reaper) plug-ins through the ysfx library. Note that this is not part of the release yet and has to be built from source.

  • VST: controls being created for plug-ins with large amounts of controls is now opt-in with a new button in the inspector:

edit

This is going to be extended to other plug-in APIs soon.

  • Pattern sequencer: visual feedback

pattern

  • Image process: wip: allow to tile input images
  • Value generator: allow to return arrays
  • WIP on new console functions for creating automations programmatically
  • [Linux only] Support shmdata as a way to send / receive video frames between applications.
  • Audio analysis plug-ins merged into score directly: pitch recognition, onset detection, etc. are now all available out-of-the-box, thanks to the Gist library !

Analysis plugs

  • Add a Leapmotion device. Note that this is not part of the release yet and has to be built from source.
  • Allow to control the UI execution update rate (rate at which the UI reads the new state from the execution engine).
  • Micromap: support input of array types with xv / pxv variables.
  • JIT: Automatically create controls with the information available.
  • MIDI: Added note deletion using the Delete Key for Piano Roll plugin. Thanks @RobinMontferme !

Bugfixes & changes

  • VST: many small compatibility fixes from trying various plug-ins. Also always set a stereo speaker arrangement until we find a better way of handling that.
  • LV2: small correctness fix
  • FFT can now use KFR instead of FFTW which makes it easier to build in some cases
  • Main tempo is now saved correctly
  • Various buffer allocation optimizations
  • Fix image loading when a palette is used
  • Optimize image loading for image process
  • Looper: add a small fade-in / fade-out
  • Looper: fix blank output when switching to an empty input
  • Fix process name when creating with drag and drop
  • JSFX: fix ports created at the wrong place
  • Cables will now always be shown at the same hierarchy level
  • Fix corner cases for musical quantization
  • Minor qt6 fixes
  • Refactor and fix infinite scrolling for ui widgets
  • Various drag'n'drop fixes
  • Fix that nodal view execution position had disappeared
  • Various video pixel format fixes, e.g. for ARGB, YUYV and YUV422. Support more formats being decoded on the GPU.
  • Library: support for subcategories in processes.
  • The old envelope plug-in is now deprecated. Use the new ones which support gain adjustment.
  • Refactor rescaling and camera input and fix many bugs in the process.
  • Various drag'n'drop improvements.
  • Fix issue when hitting ctrl-c when no document is loaded.
  • Refactor the viewport bounding code.
  • JIT: Add seemingly missing flag for EH handling.
  • JIT: Preserve ports when editing script
  • MIDI: handle note selection properly
  • Linux: Fix startup crashing under offscreen Qt QPA, useful for gui-less on small underpowered SBCs.
  • UI: Improve comboboxes
  • Fix that adding processes through the library would add them to every document.

Special thanks

  • @VastareMetal for testing the JIT process in-depth and reporting many bugs.

v3.0.0-rc6

09 Dec 04:36
Compare
Choose a tag to compare

New features

  • Allow to create after a selected process or port by double clicking in the library ; the newly created process will be selected. If there's an address, it will be moved to the output of the new process.
example-ports.mp4
  • OSC device: allow to create addresses with paths and brace expansion
example-expansion-osc.mp4
  • New processes (thanks @thibaudk !) : Value Filter and Rate Limiter. Value Filter allows to apply various smoothing algorithms (1€ filter, lowpass, average, median). Rate limiter allows to limit the rate of incoming values.
example-value-filter.mp4
  • Mapper device: allow to use the [{address: "foo:/bar", value: 123}] syntax as output of read: to be able to output to any address in the tree.

  • Serial device: allow to select baud rate (thanks @thibaudk !)

  • WIP on libmapper support.

Bug fixes

  • Improve drag and drop area on intervals
  • Fix selection of intervals below the max bound of another interval
  • OSC: properly reload ports & settings from exported devices
  • Accessors are now correctly handled in automatic mappings, e.g. setting window:/cursor/absolute@[position.cart2D.y] in a slider will apply the whole range of the y axis of the window to the slider.
  • Add a lot of missing tool-tips (thanks @thibaudk !)
  • Fix a small issue in window device deletion
  • window: give a domain to the parameters such as cursor position, etc.
  • Fix that opening a newly created interval in full view was super zoomed
  • Fix that info panel text would disappear after a few seconds

v3.0.0-rc5

30 Nov 16:12
Compare
Choose a tag to compare

New features

Bugfixes

  • Fix that a drop would sometimes end up at the top of the score instead of the mouse position in the Y axis.
  • Fixes for loading externals in the Pd integration. Note that externals must be built with #define PDINSTANCE 1 for this to work !
  • Fix off by one error in bar computation
  • Pd: look for externals in the folder of the loaded patch
  • GFX bugfix when removing a window
  • Fix issues where a deleted item could still be shown in the inspector, leading to... complications
  • Various build fixes on various platforms
  • Allow to build against Qt 6.2 directly on Arch since it now provides all the required libraries
  • ALSA: fix period count to support RPi Audio Injector Ultra
  • Mapper: use floats even in the int case. Fixes #1085
  • Fix issue when removing an OSCQuery device. Fixes #1317
  • Various LV2 bugfixes on Ubuntu 20.04 (#1319)
  • Compatibility with latest PortAudio CMake
  • PureData: use port metadata to allow automatic mapping
  • Disable GL if only OpenGL 1.1 is available (don't laugh)
  • CI: Use Big Sur / Xcode 13 for building macOS

v3.0.0-rc4

20 Nov 12:06
Compare
Choose a tag to compare

Bugfixes

  • Fix some issues with audio buffer allocation
  • Fix building on a system that has Lilv and Suil but not LV2.

v3.0.0-rc3

19 Nov 23:58
Compare
Choose a tag to compare

New features

  • Automatic mapping between parameters from the explorer and controls.
    That is, assigning a MIDI CC (0..127) to a VST (0..1) or Faust (20..20000, -1..1 or anything really) parameter will automatically scale to the correct target range. See https://vimeo.com/647930195 for a demo.

  • Simplified version of the LFO to take that into account.

  • New "Value display" process to easily see the value of something in the score.

  • Recenter-and-fit option in nodal view to show things at 1x zoom.

v3.0.0-rc2

18 Nov 17:55
Compare
Choose a tag to compare

New features

  • Linux (experimental): add a direct ALSA implementation for some special hardware

Bugfixes

  • Many CI fixes
  • Fix issues when scanning VSTs
  • Fix a note off bug with the Arpeggiator processor
  • Fix that ArtNet universes weren't handled
  • Fix a rare crash with Pd process
  • Fix that intervals after a graph node looping back to the beginning of a trigger would get stuck
  • Fix various issues when editing a faust DSP in a way that changes ports
  • Improve VST2 compatibility
  • Fix an error when a vst could not be instantiated
  • Editing devices: prevent changing the protocol used
  • Handle nodes that did not create their renderer (#1313)
  • Fix an invalid factor in triangle waves in LFO (they had too much amplitude)
  • Fix a lot of warnings
  • Improvements to context menus
  • Imrpovements to add-ons being JIT-compiled
  • Compatibility with FFMPEG 4.4 and LLVM 13

v3.0.0-rc1

30 Sep 13:53
Compare
Choose a tag to compare

New features, changes

  • New bigger and more readable icons for presets and showing plug-ins & script UIs (thanks @aklevy !)
    ui
  • Show a warning if a file could not be saved due to insufficient permissions or stuff like that (thanks @aklevy !)
  • Inspector : use same name in widget and in object tree (thanks @aklevy !)
  • Add help tips in a lot of places in the central view
  • Remove the add process "+" button ; use the library instead (or drop content directly !)
  • Add support for pinch-to-zoom for instance on Mac touchpads

Bugfixes

  • Fix issues with some network updates being done in two threads at the same time causing crashes
  • Fix that window device settings did not reload
  • Fix various timing issues due to bugs in the quantization code, for instance with the pattern sequencer.
  • Fix issues with the trigger quantization logic which wasn't correct
  • Fix issues when using the "play from here" feature (the start of the score would also start playing since b5 due to a change in the execution engine)
  • Fix various issues with vst3 support, add support for MIDI pitch bend, and channel aftertouch.
  • Fix issues when merging events in a chain of intervals
  • Fixes for scrolling which should now correctly follow system settings

v3.0.0-b9

25 Sep 16:00
Compare
Choose a tag to compare

New features

  • Two processes are added to convert a pair of LSB/MSB MIDI CC into a high-res value and conversely (Midi hi-res input / Midi hi-res output).
  • Add a lot of status information in the score elements to improve documentation.

Bugfixes

  • Improve timing accuracy for video playback
  • Fix #1295 (Thanks @thibaudk !)
  • Fix #786 by simplifying the execution settings which were pretty much unused anyways
  • Improve detection of local IPs for ArtNet
  • Fix an issue with the first ports of some processes not being able to change their address during execution of the score.
  • Fix a rare crash when switching to nodal mode.
  • Save the git commit and tag used in the save files (Fix #1280).