processing / processing-sound

Audio library for Processing built with JSyn
https://processing.org/reference/libraries/sound/
GNU Lesser General Public License v2.1
149 stars 50 forks source link

Implement start-to-finish on-the-fly playback for large audio files #88

Open kevinstadler opened 1 year ago

kevinstadler commented 1 year ago

The current SoundFile implementation decodes and loads the entire content of the audio file into RAM, which is the only reliable way to allow low-level buffer access, editing and scrubbing.

A currently unsupported use case is straightforward on-the-fly playback of long audio files that are too big to be kept in memory. This should be feasible by implementing a wrapper around the current JavaSound decoding functionality in SoundFile and packing it inside a UnitGenerator that passes the incrementally decoded audio to JSyn for immediate playback. (Pausing and restarting could even be supported, just no scrubbing/skipping or editing.)