2 Punkte von GN⁺ 2025-10-15 | 1 Kommentare | Auf WhatsApp teilen
  • Strudel REPL ist eine Open-Source- und kostenlose Musik-Live-Coding-Umgebung, die im Webbrowser läuft
  • Musik in Echtzeit erzeugen und verändern ist allein im Browser möglich, ohne zusätzliche Software installieren zu müssen
  • Standardmäßig arbeitet es nach dem REPL-Prinzip (Read–Eval–Print Loop): Wenn Nutzer Code eingeben, werden Sound-Patterns sofort abgespielt
  • Hauptmerkmale

    • Nutzer können mit Code-Befehlen wie "s(\"[bd ]*2\").bank(\"tr909\").dec(.4)" ganz einfach Pattern-Sequencing, Instrumentenauswahl und Klangbearbeitung durchführen
    • Detaillierte musikalische Steuerung ist möglich, darunter verschiedene Drum-Sampler (bank) und Decay-(decay-)Einstellungen
    • Da Code in Echtzeit geändert und die Ergebnisse sofort angehört werden können, ist unmittelbares Feedback eine besondere Stärke
  • Zugänglichkeit und Einsatzmöglichkeiten

    • Auch ohne DAW (Digital Audio Workstation) oder komplexe Musiksoftware lässt sich mit einfachem Code Musik produzieren und damit experimentieren
    • Auch Einsteiger in Musik und Programmierung können dank der niedrigen Einstiegshürde Spaß haben und kreative Erfahrungen sammeln
    • Durch Open Source und Community-Support bietet es zudem Potenzial für künftige Erweiterungen und Zusammenarbeit
  • Vergleich und Vorteile

    • Gegenüber bestehenden Live-Coding-Plattformen wie TidalCycles oder Sonic Pi bietet die webbasierte Umgebung mehr Zugänglichkeit und Komfort
    • Ohne separate Installation oder Einrichtung kann jeder sofort mit Musik-Live-Coding beginnen

1 Kommentare

 
GN⁺ 2025-10-15
Hacker-News-Kommentare
  • Es gibt wirklich viele großartige Live-Coding-Sessions mit Strudel auf YouTube; als Beispiel empfehle ich dieses Video
    • Die Videos von Switch Angel sind besonders beeindruckend, auch die Instagram-Tutorials dieser Person sind sehenswert
    • Eines meiner absoluten Lieblingsvideos ist dieses hier, bei dem sich die Erzählstimme dank des Voice-Filters wie ein Teil des Tracks anfühlte; das hat besonders Spaß gemacht
    • Es wäre ziemlich spannend, wenn jemand den Audio-Track dieses Videos inklusive Vocals remixen würde
    • Es sieht so aus, als wäre derselbe Link zweimal eingefügt worden; ich frage mich, welcher zweite Link eigentlich gemeint war, den würde ich auch gern sehen
  • Strudel ist ein JavaScript-Port von TidalCycles (Haskell); anders als TC, das SuperCollider als Synth verwendet, scheint Strudel eine eigene Implementierung namens superdough zu nutzen. Ich lerne gerade SuperCollider sclang und würde ein Versions-Upgrade gern auf HN teilen, weil es zu diesem Thema immer tiefgehende Diskussionen gibt. Allerdings ist sclang so etwas wie das PHP der Musikwelt: noch hässlicher und noch weniger konsistent. Trotzdem ist es mächtig und macht Spaß
    • Im SuperCollider-Forum gibt es Diskussionen darüber, SuperCollider nach wasm zu portieren (Beitrag zur WebAssembly-Unterstützung); ich frage mich, ob das später hier eingesetzt werden könnte
    • Ich habe auch mit TidalCycles herumgespielt und wollte es wegen der Haskell-Syntax benutzen, aber die Strudel-UI ist so glatt und ausgereift, dass ich die JS-Syntax in Kauf nehme. Dadurch habe ich auch erstmals von superdough erfahren, was meine Neugier geweckt hat
    • Als ich früher SuperCollider benutzt habe, habe ich Overtone verwendet; Overtone kapselt alles in eine Closure-API, sodass man Sound mit s-Ausdrücken statt mit sclang definieren kann. Ich weiß nicht genau, ob Overtone heute noch gepflegt wird, aber es scheint noch etwas Aktivität zu geben (offizielle Website)
    • Meiner Erfahrung nach fühlt sich sclang wie eine Mischung aus Smalltalk und Ruby an. Es ist wirklich die reinste „Inkonsistenz“, gleichzeitig fremd und seltsam vertraut, aber ich halte es trotzdem für deutlich eleganter als PHP
  • Strudel ist deshalb so cool, weil bestehende Musik-Tools oft etwas alt wirken und unter dem NIH-Syndrom (not invented here) zu leiden scheinen, während man eigentlich etwas braucht, das in JS läuft. Als die vorherige Tool-Generation erschien (sonic pi usw.), war so etwas noch schwierig, aber jetzt ist das Timing genau richtig. Ich hoffe, dass die nächste Generation eine Oberfläche bringt, in der Visualisierung und Code wirklich bidirektional miteinander kommunizieren. Die aktuellen Slider finde ich bereits ein wirklich großartiges Element; Bret Victor wäre vermutlich stolz
  • Es gibt auch ein Tool namens flok, das den Strudel REPL mit den Visuals von hydra kombiniert. Es bietet auch andere Algorave-Umgebungen wie sclang, und alles wird synchronisiert (vermutlich per CRDTs), was für Remote-Jams mit Freunden großartig ist (Link zu flok)
  • Ich habe nicht viel musikalisches Talent, aber ich habe so etwas gebaut
    $: arrange(
     [4, "<sh09_bd>(4,8)"],
     [4, "<sh09_bd>(4,8)"],
     [1, "<sh09_bd mfb512_sd>(6,6)"]
    ).s().fast(2).layer(x=>x.add("0,2")).gain(".4!2 .5").phaser(2).phasercenter("<4000 800 4000 4000>")
    
    $: s("gm_tinkle_bell").distort("<1 2 1 2:.5>").crush("<8 8 8 6 6 8 8>").chop(4)
    
    $: arrange(
     [2, "<c4 e4 g4>(3,8)"], 
     [1, "<f4 a4 c5>(3,8)"], 
     [1, "<c4 e4 g4>(3,8)"] 
    ).note().chop(4).fast(4).distort("<3:.5>").phaser(4).phasercenter("<800>").fm(4).fmdecay("<.05 .05 .1 .2>").fmsustain(.4)._scope()
    
    Ich verstehe selbst kaum die Hälfte davon, was hier passiert, aber es hat riesigen Spaß gemacht und ist wahrscheinlich eines meiner Lieblingsprojekte überhaupt. Am meisten Spaß gemacht hat mir, dass die Referenzdokumentation direkt auf der Seite verfügbar ist, sodass ich einfach alles Mögliche ausprobieren und sofort das Ergebnis sehen konnte
  • Diese Fehlermeldung erscheint
    Uncaught (in promise) ReferenceError: AudioContext is not defined
     ln https://strudel.cc/_astro/spectrum.Bf7jMx6O.js:1
     W https://strudel.cc/_astro/spectrum.Bf7jMx6O.js:1
     un https://strudel.cc/_astro/spectrum.Bf7jMx6O.js:1
     c https://strudel.cc/_astro/spectrum.Bf7jMx6O.js:1
    
    Ich frage mich, was ich in meinen Sicherheitseinstellungen ändern muss, damit das funktioniert
  • Ich teile meine Remix-Version von DJ_Daves Array unter meinem Namen Lil Data (Strudel-Mix, YouTube-Video)
  • Dieses Einführungsvideo gefällt mir (YouTube-Link)
  • Weil Strudel textbasiert ist, wird es für KI wirklich leicht, Musik automatisch zu erzeugen. Ich warte auf einen Strudel-Agenten, der Musik in Strudel-Notation mitschreibt
    • Ich komponiere zwar lieber mit der Hand, aber wenn KI per Prompt sogar das Sounddesign übernehmen könnte („ähnlich wie der Lead-Synth im Song XYZ, aber etwas schmutziger, und die ABC-Parameter bitte separat regelbar“), wäre das revolutionär
    • Ich denke, Agenten werden bald sogar die Musik selbst anhören und analysieren können, wie wir sie zuvor bewertet haben
  • Ich habe die Strudel-Oberfläche kürzlich auf YouTube gesehen; zuerst wirkt sie wie eine Konsole, aber mit Elementen wie Slidern fand ich sie interessant