Skip to content

v0.5.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@ideoforms ideoforms released this 28 Oct 22:01
· 17 commits to master since this release
  • Replaced the libsoundio audio abstraction layer with miniaudio, heralding first-class Windows and Linux support.
  • Retired historical AudioOut classes for different operating systems, and refactored querying of inputs/outputs/backends
  • AudioGraphConfig: Added auto_record flag, to automatically record all output in timestamped audio files
  • Added support for instantiating AudioGraph and AudioGraphConfig with the path of a config file
  • Modified AudioGraph to become a singleton, and throw a warning instead of an exception upon attempting to create a second AudioGraph
  • Added Python bindings and added unit tests for SampleRingBuffer and SampleRingQueue classes
  • Nodes:
    • Added Bus node, to act as a fixed-channel summer with variable inputs
    • Added Maraca node, a simple physically-inspired model of a shaker, after Cook (1997)
    • Added ChannelOffset node to offset a node's output by N channels, and node.play(output_channel=N) syntax
    • Added SelectInput node, to pass the output of an input whose index can be modulated at audio rate
    • Added HistoryBufferWriter node to capture a rolling signal history window, useful for oscilloscope UI display
    • Added Accumulator node, to accumulate energy with some leaky decay coefficient, and accompanying calculate_decay_coefficient function
    • Added abstract VariableInputNode class
    • Added stutter_probability and stutter_advance_time inputs to Stutter