sound_flow

Crates.iosound_flow
lib.rssound_flow
version0.3.0
sourcesrc
created_at2022-12-03 18:31:28.812207
updated_at2023-05-21 14:43:34.138005
descriptionExecute graphs of functions in real time
homepage
repositoryhttps://gitlab.com/dawn_app/sound_flow
max_upload_size
id729204
size65,123
Reinis Mazeiks (rMazeiks)

documentation

README

This crate offers structures for constructing graphs of functions and executing them in real time. It is intended for audio applications with customizable "patches".

What is a function graph?

Some applications provide an interface for configuring a graph of nodes to process some data. Each node is a function (stateful in the case of this crate) that accepts some inputs and provides some outputs. Outputs can be linked to inputs of other nodes.

For example, Blender, the open source 3D graphics package, provides nodes for configuring many things, from textures and materials to geometry.

Another example is Bespoke Synth, which provides a similar interface of nodes for creating complex instruments. The goal of this crate is to provide a "backend" for "executing" such a graph configuration.

You provide the nodes and the data types (e.g. you can define an audio buffer type and a MIDI buffer type, and mix them), and configure the connections. This library then "runs" the graph.

State

Crate is unfinished and documentation is nonexistent. You're on your own. Check tests/graph_execution.rs for an idea of how this is supposed to be used.

Commit count: 31

cargo fmt