Skip to content

Releases: overtone/overtone

v0.13.3177

05 Jan 12:48
Compare
Choose a tag to compare

Added

  • New loop-buf UGen, for looping samples (part of sc3-plugins "extras")
  • Watch for MIDI device plug/unplug, so that adding a device doesn't require a
    restart. These will also emit events: :midi-device-connected /
    :midi-device-disconnected / :midi-receiver-connected /
    :midi-receiver-disconnected
  • Add buffer-alloc-read-channel, like buffer-alloc-read (instruct the SC
    server to load a sound file), but only reads a single channel. Corresponds
    with the /b_allocReadChannel OSC message.

Fixed

  • Make sure we print the correct version when booting
  • Fix the license information in pom.xml (MIT)
  • Handle a 401 response from Freesound by asking for a new token, instead of retrying
  • Allow writing buffers that are bigger than MAX-OSC-SAMPLES
  • Reuse param :value atoms when re-evaluating a defsynth/definst, so that
    your synth settings aren't lost after a change

Changed

  • Use JNA Jack (via casa.squid.jack) to connect SuperCollider's audio output,
    instead of relying on jack_lsp which may not be available, especially on
    PipeWire-based systems
  • Reduce HTTP retries when downloading samples from 100 to 20
  • print BufferInfo as a reader conditional + map, to make it clear it's a data object

v0.12.3152

26 Dec 12:10
Compare
Choose a tag to compare

This is the first version without the internal SuperCollider server
(libscsynth). See this mailing list post
for the reasoning behind that change. This also means we could drop the bulk of our dependencies,
making Overtone much lighter.

Our work continues to keep Overtone relevant for years to come. We've fixed a
bunch of other long standing issues large and small, modernized the release
tooling, and improved and added many docstrings.

Since Linux users in particular face a rather confusing audio landscape, we've
added a Linux Audio Primer to the
wiki, to help you get situated.

Changed

  • Remove embedded (internal) SuperCollider server
  • Provide clearer output about what it's doing when starting an external scsynth
  • Remove project.clj, switch to full Clojure CLI based tooling (see bin/proj)
  • Use at-at from Clojars, rather than inlining it here
  • Detect PipeWire only systems, and prefix scynth with pw-jack, if it's available

Added

  • Add Karl Thorssens sampled trumpet instrument (overtone.inst.sampled-trumpet)
  • Added set-fret and slide-string to overtone.synth.stringed (#287)
  • Added freesound-sample-pack, for downloading a whole pack at once
  • Add an example file for the stringed synths (#287)
  • Add an alias lin-env for lin, for backwards compatibility
  • On the generated docstring for ugens that collide with Clojure built-ins, mention that you can add a final :force-ugen argument as a hint to treat it as a ugen (#505)
  • Store Freesound token in between sessions (#506)

Fixed

  • Fix an issue where Clojure fails to resolve the right Thread/sleep implementation on newer JVMs (#502)
  • Fix calling synths/instruments with 21 arguments or more (#504)
  • Fix the namespace overtone.inst.synth on Clojure 1.11 (#505)
  • Mark abs as a Clojure numerical function, to make sure it is treated as a UGen when its arguments are not numerical (#505)
  • Make synth/defsynth and inst/definst take the same form of params (fixes regression, and makes synth/inst more useful)
  • Ignore errors in jack_lsp. Wayland based systems often don't have this command, in which case people can connect SuperCollider to their audio device manually, we should not fail for that.
  • Handle a 429 "too many requests" from Freesound more gracefully

0.11.0 - New life for the old beast

03 Nov 10:29
2907605
Compare
Choose a tag to compare
  • Fix overtone.music.pitch/dec-last (#437)
  • Return notes in ascending order in overtone.music.pitch/chord
  • Fix printing of huge map when calling instruments with Cider (#432)
  • Fix size checks to multichannel buffer writes (#338)
  • Add clj-kondo support (#493)
  • Fix broken version comparison in args/SC-ARG-INFO (#449)
  • OSC: use #getHostScript to fallback on hostname string (#450)
  • Upgrade dependencies (#456)
  • Add support for the grain-buf ugen (#470)
  • use canonical URL for freesound API (#479)
  • Fix window paths to allow downloading samples (#487)
  • Removed obsolete JVM option CMSConcurrentMTEnabled (#488)
  • Read synthdef files correctly (#489)
  • Fix buffer reading (#490)
  • Add clj-kondo support (see overtone.linter) (#493)
  • Qualify the overtone ns in lein example (#495)

With thanks to contributors: Andréas Kündig, dvc, Hlöðver Sigurðsson, Lee Araneta, Markku Rontu, Matt Kelly, Nada Amin, Paulo Rafael Feodrippe, Perry Fraser, Phillip Mates, Wesley Merkel

0.10.6

03 Nov 10:29
Compare
Choose a tag to compare
  • major bug fix: make sure that deps.edn is loaded from the classpath if it's not found locally (version 0.10.5 will crash when used with leiningen)

0.10.5

18 May 13:44
Compare
Choose a tag to compare

Version 0.10.5 (18th May 2019)

  • overtone can now be used with tools.deps
  • fix classException for note and chord function $428
  • failures in the test runner fixed
  • alert linux users in case jack server wasn't started prior to external-server connection runner
  • fix configuration errors with max-buffers value

0.10.4

11 May 11:58
Compare
Choose a tag to compare

ugens

  • index now available on :ir rate, but keeps defaulting to :kr.

scsynth

  • now compiled against supercollider 3.9.3
  • scsynth-extras includes new plugins that can to be spec'd in metadata/extras
  • jna paths are explicitly set for every os
  • 64-bit architecture support for windows machines
  • native resources will be copied from target to project's root-dir, if present in target and missing in root-dir.

Breaking Changes

  • 32-bit support for internal-synths on windows is discontinued (use 64-bits instead)
  • Linux: Jack client name now defaults to Overtone instead of SuperCollider #409
  • load-samples now accepts many directory and/or file paths, this breaks the functionality of the previous varag sequence.
  • freesound.org samples are now saved with filename and extension, preserving safe-filenames for tmp storage (this causes all freesound.org samples to be redownloaded if they are cached from older overtone version)

Improvements

  • add parameter added to var-saw
  • overtone.music.pitch/rand-chord now vararg with inversions parameter
  • sampled-flute and sampled-piano now load faster from cache
  • Java9 compatability

New Fns

  • overtone.sc.sample/load-samples-async works like load-samples a faster but unsafer alternative to load-samples

0.10.3

11 Oct 12:10
Compare
Choose a tag to compare

Bug Fix

  • overtone.sc.vbap any? now called some-element? and doesn't rely on Clojure 1.9

0.10.2

30 Aug 21:21
Compare
Choose a tag to compare

Breaking Changes

  • inst? has been renamed to instrument?

New Fns

  • overtone.algo.euclidean-rhythm Generates euclidean rhythms using bjorklund's algorithm.

New example

  • overtone.examples.midi.keyboard sustain-ding Creates an midi instrument with a sustain parameter.

Improvements

  • overtone is now running on clojure-1.9-alpha
  • freesound gives better error message when file/sample is not found.
  • overtone.sc.vbap uses clojure 1.9's clojure.core.any?, removes replace symbol warnings.

Bug Fixes

  • Prevent double trigger of freesound samples by setting #318
  • Replace use with :use for Clojure 1.9 compatability.
  • Fix error when Supercollider version is in development
  • Fix warning for deprecated CMSIncrementalMode
  • connect-to-external-server logs correctly configured port number