Featured post

Register Until 2025-04-20 23:59

if you are interested in participating please contact Dennis P Paul at dennis.paul@hfk-bremeb.de until 2025-04-20 23:59. since resources are very limited the number of participants is also very limited.

Preface ( Preparation for the Workshop )

hej everyone,

as promised, here are a few words, resources, hints, and leads for you to read, watch, consume, and follow up on as preparation for the upcoming workshop. but before you do, we propose to keep the following mental model in mind:

Return on Investment: the more you prepare, the more you will get out of the workshop

it might be a bit obvious or blunt, but we REALLY want to encourage each one of you to prepare because we would love to jump right into it when the workshop actually starts.

so what are we actually asking you to prepare? well, as you might remember, the class is called Oscillators and is described as follows:

this class is about making things, and fast. it will oscillate between crazy sounds, mad skills, awkward interfaces, bizarre sensors, creative limitations, smooth textures, and a curious little development platform and handheld console called Klangstrom, developed right here at HfK. no planning, no research, no worries.

we thought the best preparation for you is to get to know a few of the basic building blocks for working with oscillators in a digital sound synthesis context — or more specifically, in a Digital [Audio] Signal Processing (DSP) context. since the field is HUUUUUGE, but we are small and the devices we will be working on are even smaller, we want to propose a curated set of elements that you should get acquainted with:

  1. Oscillators ( + Wavetables )
  2. Wavetables
  3. Samplers
  4. Filters ( in particular high-pass, low-pass, and band-pass filters )

these are actually all the building blocks you need for this class.

we also thought that you’re all different people with diverse backgrounds and different approaches to things, so we suggest two different approaches to the topic:

Reading

some of you might appreciate the reading approach. there are many books out there on the topic of DSP. however, allegedly the gold standard of computer music is this book:

Curtis Roads: The Computer Music Tutorial, 1996

luckily, the book is available in our library in paper form or as a digital version on archive.org: Curtis Roads: The Computer Music Tutorial. TBH, i have never read the 1.5k pages from start to end, but it is a fantastic encyclopedic resource. we tried to identify a few relevant chapters, but it is a bit hard to define those … so happy browsing 😉 or just read the full 1.5k pages 😉 😉

additionally, we really want to encourage you to chat with an LLM ( e.g. Le Chat or ChatGPT ) about the topic.

Watching

if you prefer to learn by watching videos, here is a VERY random collection of videos.

but there are sooo many more videos out there.

PS { slightly OT and just because it TOTALLY blew my mind, also watch: 3Blue1Brown: But what is the Fourier Transform? A visual introduction — “everyone is throwing around the term FFT … but how does it actually work?!?” }

Tinkering

personally, i ( dpp ) learn best and most from just tinkering around with actual code.

Umfeld Logo

for this class we want you to use Umfeld ( a C++-based Processing spin-off ). it should be very easy to install with this Quickstart guide. i’ve also recorded two videos to help you get started ( pretty shitty quality … this was just a first attempt 😉 ):

Klangstrom KLST_PANDA

the second tutorial Creating_Audio_Application discusses how to produce sounds in Umfeld using the built-in sound library. however, since we will be using the Klangstrom board in this class ( programmed with the Arduino IDE ), we will ( probably or mostly ) be using DaisySP, developed by the fine people at Electrosmith, and also used on their board Daisy Seed ( which might also be a good alternative platform if Klangstrom is not for you in the future ).

but this is where Umfeld comes in handy. since it is all C/C++, it was straightforward to make DaisySP usable in Umfeld. make sure to check out the DaisySP Umfeld Library. an example looks something like this:

#include "Umfeld.h"
#include "UmfeldDaisySP.h"
#include "daisysp.h"

using namespace umfeld;
using namespace daisysp;

Overdrive  drive;
Oscillator osc, lfo;

void settings() {
    size(1024, 768);
    audio(0, 2);
}

void setup() {
    osc.Init(audio_sample_rate);
    lfo.Init(audio_sample_rate);
    lfo.SetAmp(.8f);
    lfo.SetWaveform(Oscillator::WAVE_TRI);
    lfo.SetFreq(.25f);
}

void draw() {
    background(0.85f);
}

void audioEvent() {
    float sample_buffer[audio_buffer_size];
    for (int i = 0; i < audio_buffer_size; i++) {
        drive.SetDrive(fabsf(lfo.Process()));
        const float sig  = drive.Process(osc.Process());
        sample_buffer[i] = sig;
    }
    merge_interleaved_stereo(sample_buffer, sample_buffer, audio_output_buffer, audio_buffer_size);
}

make sure to also tap into the resources provided by the Electrosmith Daisy Seed + DaisySP community!

as a fallback, if Umfeld does not work for you, but you still want to program DSP sketches, you can also look into Wellen, a Processing-based audio library.

so where should you go from here?

well, essentially we want to ask you to pick one, two, or all three approaches — and then: Make Some Noise: Oscillators Oscillate Oscillators

share your questions, process, progress, or results with us in the channel oscillators on mattermost. it is a lot to take in for some of you, but let’s do this together! we are curious …

Toshio Iwai: Electroplankton :: “an interactive music video game [which] allows the player to interact with animated plankton and create music through one of ten different plankton themed interfaces.” video

Information

the dates for the workshop sessions are:

  • BLOCK 1 :: 2025-09-22 > 2025-09-26 :: input + exercises
  • BLOCK 2 :: 2025-09-29 > 2025-10-02 :: projects + final

the workshops will take place in Speicher XI A. the class is limited to 10 students.

Abstract

this class is about making things and fast. it will oscillate between crazy sounds, mad skills, awkward interfaces, bizzare sensors, creative limitations, smooth textures, and a curious little development platform and handheld console called Klangstrom, developed right here at HfK. no planing, no research, no worries.

the class is a block-shaped workshop focused on crafting sound and music with small machines. hard work, soft skills, hardware, soft sounds, hard skills. it will take place after the lecturer period in september. the exact date will be discussed and announced in 2025-04.

this class happens in collaboration with Felix Fisgus.