ref: 0acd2208855ac7e5c1e2499614c50828a1ace0de
parent: 797776a72fd34a7ca773f906a55d37c3ae3e227c
author: Sigrid Haflínudóttir <[email protected]>
date: Sat Dec 28 20:13:50 EST 2019
a bit more description
--- a/README.md
+++ b/README.md
@@ -4,3 +4,26 @@
server, provide UI to control DSP, etc.
WIP, nothing to look at yet
+
+## Description
+
+A DSP fs presents an interface to create instances of a DSP class by
+reading the `clone` file. In the resulting directory `ctl` is used to
+read general info about the dsp, `raw` is used to supply input to the
+DSP (if it has any inputs) by writing to it, and output can be read
+from it. The format is raw stream of `float`. `pcm` is the same but
+is of format directly supported by `/dev/dsp` (two channels, 44100Hz).
+
+Each DSP instance, in addition to the mentioned files, provides a file
+tree that reflects the UI elements. UI elements may provide `ctl`
+file to read initial and current, maximum and minimum, step, and may
+be used to write a new value to it. File `value` is for watching the
+value of the UI element change: first read gives current value and a
+number of samples processed before the change, next read is blocked
+until the value is changed.
+
+Several DSPs may be connected by chaining their `raw` interfaces
+together. If some parameters need to be changed dynamically during
+processing with frame accuracy, it can be achieved by running the
+chain for a chunk of data, changing the parameters, then continuing
+processing.