Professional Documents
Culture Documents
A Visual Programming Interface For Digital Luthiery: Implementing Circuits With Veneer
A Visual Programming Interface For Digital Luthiery: Implementing Circuits With Veneer
A Visual Programming Interface For Digital Luthiery: Implementing Circuits With Veneer
Unit-Delay Feedback for Elementary DSP These environments support unit-delay feedback,
but pay a significant price in performance when do-
The capability of expressing unit-delay feedback
ing so in an interpreter or a virtual machine (Norilo
paths is essential for programming signal processors.
2015). As such they should suffice for exploration
Music languages typically schedule and route blocks
and study of signal processing algorithms, but may
of samples rather than individual samples for reasons
run into problems if a larger number of instances is
of efficiency (Dannenberg and Thompson 1997).
required in a musical piece.
Several established environments have support for
per-sample processing, however, and thus unit-delay
feedback.
Diversity of Scheduling and Expression
PWGLSynth is a real-time synthesizer for the
PWGL environment (Laurson, Norilo, and Ku- Music languages use different strategies for dealing
uskankare 2005). Built primarily for auralizing with time. Regularly sampled signal flows are uti-
scores with physics-based instrument models, it has lized for audio and control signals, which require
a per-sample scheduled ugen graph. determinism and precise synchronization. Many
Csound has gained support for user-defined music languages provide a built-in set of clock do-
opcodes (Lazzarini et al. 2016) that call a user- mains such as block rate, control rate, and audio
defined routine at the control rate (krate). Because rate. Csound (Lazzarini et al. 2016) allows instru-
Csound allows locally specified control rates, a ments to specify local control rates. Max and Pure
user-defined opcode can be made to run at the audio Data (Puckette 1996) offer asynchronous message
rate and support unit-delay feedback. passing for flexible scheduling of low-bandwidth sig-
ChucK (Wang, Cook, and Salazar 2015) offers the nals. ChucK features concurrent interacting threads
possibility of processing audio in a “chugen,” a unit with explicit control of time (Wang and Cook 2003).
generator with a custom callback for producing a Xtlang, Nyquist, and Csound share the highly gen-
sample of audio. eral scheduling mechanism of temporal recursion
Survey Results
Recreate and Transcribe
The workshop results were assessed with web sur-
While independently recreating a patch or an tran- veys the participants returned prior to the first ses-
scribing an implementation from literature, the sion and after the last session. Twelve participants
focus is on the learner’s own thinking and acting. answered the first survey (A), and nine participants
There is a lot of ground for discovery, experimen- answered the second survey (B). The answers were
tation, knowledge manipulation, and application. collected with Google Forms.
Errors may be common, but are secondary to design
principles and strategies. They may also lead to
“free experimentation,” “creatively failing,” and Quantitative
“serendipitous” discoveries.
Constructing the knowledge of the environment Survey A contained a section on the interests of the
is done by manipulating and directly interacting participants, shown in Figure 10. The bars indicate
with the concepts and objects: not only the software the mean of the responses, with standard error of the
environment, but also the block diagrams, literature, mean shown as a range. The participants reported
and sketches that “surround and embellish the interest in a wide range of topics and activities
code” (Noss and Clayson 2015). For example, as broadly related to DSP. They generally reported
students independently implemented synthesis most interest in artistic activities, followed by
with feedback amplitude modulation (Kleimola academic topics. Some ambivalence was shown
et al. 2011), a series of creative answers emerged towards engineering and design.