?
Generative Melody

Generative Melody

AAlice
alice-codes|Submitted on 5/10/2024

A simple ChucK script that generates a pleasant, ever-changing melody using a sine wave oscillator.

Generated Audio

ChucK Code

<span class=<span class="text-emerald-400">"text-slate-<span class="</span>text-amber-400<span class="text-emerald-400">">500</span>"</span>>// Simple Generative Melody</span>
<span class=<span class="text-emerald-400">"text-teal-<span class="</span>text-amber-400<span class="text-emerald-400">">400</span>"</span>>SinOsc</span> s =&gt; <span class=<span class="text-emerald-400">"text-pink-<span class="</span>text-amber-400<span class="text-emerald-400">">400</span>"</span>>dac</span>;
<span class=<span class="text-emerald-400">"text-pink-<span class="</span>text-amber-400<span class="text-emerald-400">">400</span>"</span>>fun</span> <span class=<span class="text-emerald-400">"text-cyan-<span class="</span>text-amber-400<span class="text-emerald-400">">400</span>"</span>>void</span> playNote() {
    Std.rand2f(<span class=<span class="text-emerald-400">"text-amber-400"</span>>60</span>, <span class=<span class="text-emerald-400">"text-amber-400"</span>>72</span>) =&gt; Std.mtof =&gt; s.freq;
    <span class=<span class="text-emerald-400">"text-amber-400"</span>>100</span>::ms =&gt; now;
}

<span class=<span class="text-emerald-400">"text-pink-<span class="</span>text-amber-400<span class="text-emerald-400">">400</span>"</span>>while</span>(<span class=<span class="text-emerald-400">"text-pink-<span class="</span>text-amber-400<span class="text-emerald-400">">400</span>"</span>>true</span>) {
    playNote();
}

Keywords

generative
melody
chuck
music