Skip to content

Releases: processing/processing-sound

v2.4.0

22 Mar 17:25
Compare
Choose a tag to compare

What's new in this version

Fixes

  • no more memory leaks/stutter/lag/crashes when repeatedly playing back audio samples (#17, #74) and envelopes (#29)
  • improved audio file decoding support for mp3 (#32), ogg (#53), 8 bit wav files (#15) and more
  • added support for 24 bit audio interfaces on Windows (#85)
  • all-around much improved documentation, see the Sound library web reference

New features

Please refer to the Javadoc reference for now, the Processing website reference will only be updated at the time of the official release

  • a new AllPass filter, contributed by @pixmusix (#78)
  • FFT.analyzeSample() method, contributed by @damaru-inc
  • flexibly route sounds to any output on multi-channel devices through the brand new MultiChannel class (with example sketch)
  • ability to choose PortAudio drivers on all platforms using the new MultiChannel.usePortAudio() method
  • a brand new PitchDetector class with example sketch
  • control the resonance/Q factor of filters through the new res() method (#46)

With many thanks to all contributors and testers, in particular @trackme518 and @daniel-tran

See the full changelog

Experimental features

  • Frequency and amplitude modulation of oscillators by passing other oscillators to freq() and amp()

Known issues

  • laggy sound when playing over AAC bluetooth devices on OSX
  • Android currently only supports decoding of 16 bit wav and aiff files (#86)

Latest release of the Processing Sound library

15 Aug 16:16
Compare
Choose a tag to compare

This is the stable tag for downloading the latest version of the Processing Sound library through Processing's Contribution Manager menu.

v2.4.0-preview

24 Sep 00:27
Compare
Choose a tag to compare

This is a preview build of the upcoming 2.4.0 version release of the Sound library, available for manual download/installation until it gets pushed to the contribution manager.

How to test

Download sound.zip and extract the sound directory into your sketchbook's libraries folder (this is usually in Documents/Processing/libraries/). (On Windows, you will need to close Processing while doing this.)

We are particularly interested to know whether old sketches of yours that use the sound library still work as expected using the new library version. PLEASE REPORT ANY AND ALL BUGS, CRASHES OR EXCEPTIONS YOU GET WHILE USING THE CURRENT PREVIEW BUILD AT THE FOLLOWING LINK: #89

What's new in this version

Fixes

  • no more memory leaks/stutter/lag/crashes when repeatedly playing back audio samples (#17, #74) and envelopes (#29)
  • improved audio file decoding support for mp3 (#32), ogg (#53), 8 bit wav files (#15) and more
  • added support for 24 bit audio interfaces on Windows (#85)
  • all-around much improved documentation, see the Sound library web reference

New features

Please refer to the Javadoc reference for now, the Processing website reference will only be updated at the time of the official release

  • a new AllPass filter, contributed by @pixmusix (#78)
  • FFT.analyzeSample() method, contributed by @damaru-inc
  • flexibly route sounds to any output on multi-channel devices through the brand new MultiChannel class (with example sketch)
  • ability to choose PortAudio drivers on all platforms using the new MultiChannel.usePortAudio() method
  • a brand new PitchDetector class with example sketch
  • control the resonance/Q factor of filters through the new res() method (#46)

With many thanks to all contributors and testers, in particular @trackme518 and @daniel-tran

See the full changelog

Experimental features

  • Frequency and amplitude modulation of oscillators by passing other oscillators to freq() and amp()

Known issues

  • laggy sound when playing over AAC bluetooth devices on OSX
  • Android currently only supports decoding of 16 bit wav and aiff files (#86)

javasound-portaudio-preview dev build

15 Sep 11:21
Compare
Choose a tag to compare
Pre-release

Dev build of commit 2afba78 by kevinstadler from the main branch

v2.3.1

18 Mar 13:12
Compare
Choose a tag to compare

What's new in this version

  • removed unnecessary/incorrect redtext warning when calling read(int) on stereo samples (#65)
  • added audiosample.read(int, int) method
  • added Soundfile > StereoSample example to demonstrate/compare the two read() methods
  • truncated example audio file to reduce library download size (#66)

v2.3.0

03 Mar 12:19
Compare
Choose a tag to compare

What's new in this version

  • BeatDetector analyzer class contributed by @alexdmiller (addresses #58)
  • Implements #47. Caching of decoded SoundFile data (which used to block audio samples from being garbage collected) can now be disabled in two ways:
    • set the (new) third constructor argument to false: new SoundFile(this, filename, false)
    • method: soundfile.removeFromCache()

v2.3.0 test build

15 Nov 07:09
Compare
Choose a tag to compare
v2.3.0 test build Pre-release
Pre-release

Implements #47. Caching of decoded SoundFile data (which used to block audio samples from being garbage collected) can now be disabled in two ways:

  • set the (new) third constructor argument to false: new SoundFile(this, filename, false)
  • method: soundfile.removeFromCache()

v2.2.3

31 Jul 10:53
Compare
Choose a tag to compare

What's new in this version

  • add AudioSample(PApplet, int, int) constructor in line with examples and documentation (fixes #41)
  • improve how AudioSample determines whether it is playing or not, which in turn fixes issues with cue() (see #40) as well as jump() (see #44)

v2.2.2

14 Jul 07:15
Compare
Choose a tag to compare

What's new in this version

  • make AudioSample.isPlaying() check whether the sample has finished (fixes #39)

v2.2.1

23 Jun 06:13
Compare
Choose a tag to compare

What's new in this version

  • fix UnsupportedOperationException when using sound library in Android mode without a RECORD_AUDIO permission manifest (fixes #37)
  • implement choice of which input device to choose on Android using new Sound(this).inputDevice(deviceID), using the device ids according to Android's MediaRecorder.AudioSource (expands on #20)