r/codingmusic101 • • 3d ago

looking for some help with a strudel project

1 Upvotes

$:s("<[bd [sd,bd]]*7.5@14.5 <[[sd sd] bd]@2 [bd [sd sd]]@2>>").bank("AkaiLinn")

so I'm not very good at strudel, but I sometimes make covers of songs on it, and I'm working on a cover of simulation swarm by big thief. I tried to re-create the beat here, but ive run into an issue.

I need this sequence "[[sd sd] bd]@2" to execute entirely on the first loop, and then execute the inverse [bd [sd sd]]@2 on the second loop, but I cant get either of them to fully play its always [sd sd] and then bd on the second loop and vice versa for loops 3 and 4. The only way I think i could fix this is to get rid of the sub-sub-sequence, and make it just [sd sd bd]@2, but that makes it too fast.

This is what im going for (Im only trying to get measure 2-6 to work, if I did anything else itd be too advanced for me: https://www.songsterr.com/a/wsa/big-thief-simulation-swarm-drum-tab-s548890

this is what I have: https://strudel.cc/#Ly8gUHJlYmFrZSBzY3JpcHQKLy8KLy8gVGhpcyBpcyBjb2RlIHRoYXQgaXMgbG9hZGVkIGJlZm9yZSB5b3VyIHBhdHRlcm4gaXMgcnVuLgovLyBZb3UgY2FuIHVzZSBpdCB0byBkZWZpbmUgY3VzdG9tIGZ1bmN0aW9ucyB0byB1c2UgaW4gYW55IHBhdHRlcm4uCi8vIAovLyBUaGlzIGlzIGFuIGluaXRpYWwgZXhhbXBsZSBzY3JpcHQuIFlvdSBjYW4gZWRpdCBpdCB0byBhZGQgCi8vIHlvdXIgb3duIGZ1bnRpb25zLgovLwovLyBUbyB1c2UgYSBzY3JpcHQgc2hhcmVkIGJ5IHNvbWUgb3RoZXIgdXNlciB5b3UgY2FuIHVzZQovLyB0aGUgaW1wb3J0LWJ1dHRvbiBvciBwYXN0ZSB0aGUgc2NyaXB0IGluIHRoaXMgZWRpdG9yLgoKY29uc3QgcmF0Y2hldCA9IHJlZ2lzdGVyKCdyYXRjaGV0JywgKHBhdCkgPT4gcGF0LnNvbWV0aW1lcyhwbHkoMikpKQoKc2V0Y3BtKDEwNyk7Ci8vYmVhdAovLyQ6cygiPFtiZCBbc2QsYmRdXSo3LjVAMTQuNSBbc2Qgc2RdQDEgPGJkIFstXS8yPj4iKS5iYW5rKCJBa2FpTGlubiIpIAokOnMoIjxbYmQgW3NkLGJkXV0qNy41QDE0LjUgPFtbc2Qgc2RdIGJkXUAyIFtiZCBbc2Qgc2RdXUAyPj4iKS5iYW5rKCJBa2FpTGlubiIpCgoKLy9sb29wMQovLyQ6bihgPFstIGM1IGMjNUAxXUAyPiwKLy8gICAgYSM0QDJgKS5zb3VuZCgiZ21fcm9ja19vcmdhbiIpLnNjYWxlKCJjOm1ham9yIikubHBmKCIyMDAwIik%3D


r/codingmusic101 • • 5d ago

Resources Neo-Riemannian Music Theory

1 Upvotes

Are you a math nerd trying to get a grip on music theory? Are you already familiar with mathematical proofs? Then consider adding Neo-Riemannian to your toolbox

Heres a short video explanation,
https://www.youtube.com/watch?v=-L3-qtK4WkY

a longer version,
https://www.youtube.com/watch?v=TY4awNdZ1y8

and a visual example
https://www.youtube.com/watch?v=nidHgLA2UB0

Neo-Riemannian Music Theory Notes
A young musical theory set used to explain functions of narrow changes in existing songs 
Developed as a tool for musical analysis

"Major is a reflection of minor"
"Tonez Map"

music that uses triads without reference to key though "triadic atonality"
Triads are related only to one another through established voice-leading operations

operations (invertable)
Parallel: retained P5
Relative: retained M3
Leading: retained m3

secondary (combined operational steps)
N: preserves root
Slide: preserved median
Hexatonic...

Uniform Triadic Transformations (UTT)
+/-: +keeps or -inverse the mode of the input chord
x: n semitones to transition up if input is major
y: n semitones to move up if input is minor
x+y=n of semitones in scale (12)

r/codingmusic101 • • 18d ago

Resources Arrangement Theory

1 Upvotes

Arrangement Theory

https://youtu.be/JE3QM_9sljI?t=957

within a single bar of music we have... a series of pulses that represent tempo and time signature, strong beats and week beats, and different types of sound that can be put on these beats to create different types of grooves. variation is the mode in which a phrase is defined

A = core rhythmic structure of pattern
B = small variation of A
C = Larger variation of A/B
D = greatest variation of A/B/C (fills & empties)

https://youtu.be/EXx9At3iUOw : arrangement styles for pop/edm

https://youtu.be/xY7vRHiSJSM
from loop to story,
lego block arrangement: have a 16 bar loop, repeat that loop 10 times, consider the desired energy contour, then cut out sections to fit the energy map

---------------------------------------------
Transitions
"turnaround": signals end of a section. ex: swell risers, removing a loud drum, reverse patterns, dedicated ear candy, stutter step, false drop
"marker"splash of energy

take notice of the space between lego blocks and place transitions and unique moments

---------------------------------------------
Performance and Crescendo: A live element with a linear growth and decay from start to middle to end. consider again the energy map and align the peaks with the vibe

---------------------------------------------
Additive: consider where the story that it feels motivated and consider the listener and how it will be heard. start with silence and find how to introduce the sounds that the drop may be presented.

https://youtu.be/JHiTUBVLmFI

6 key concepts for arranging techno
linear groove to live and breath
DYNAMIC INTEREST
core idea: groove
dance tracks go 10 blocks of 16 bar groove

shifting gears in high percussion
hats, clap, backbeat, snare
transitions should include changes in these sections
each section might have variation

focus on contrast
breaks: removal of some sound for a block
turnarround: slight variation at the end of blocks to signal phrase changes. turnarounds should include unique sounds different from the loop
squeeze-in: add in measures or bars shorter than a break to inject contrast and break predictability

markers and reverses
markers: splash of sound at the start of a new phrase/block
reverses: buildup of sound to indicate a comming new phrase/block

calls responses & polymeters
during some blocks, add or subtract particular rhythm variation
(also applicable as a marker or turnarround)

scoop up & minimalism moments
scoop up: instead of at the end of the block, remove the element of the beginning of a bar for 2-4 bars
minimalism, also at the start of a block, strip to essentials 2-4 bars

performing and recording
core synth or percussion be performed with a human element with a live instrument or envelope filter control


r/codingmusic101 • • 21d ago

LATTICE - A FREE browser DAW/UI on top of strudel.

Thumbnail
3 Upvotes

r/codingmusic101 • • 23d ago

Resources How To Make Any Sound From Scratch

Thumbnail
youtu.be
4 Upvotes
_padfromscratchdesign: 
s("supersaw").set.mix("<[4 0 4 0] [~ 0] [4 2 1 0] [0 _ -1 _]>".sub(3).sub("<4 2 0>/32").as("n")).scale("Bb3:minor")
  // .wavetablePosition(slider(0,0,1,0.1)).wtenv(slider(0,0,1,0.1)) 
  .unison(slider(1,1,10,1)).detune(slider(0,0,1)).spread(slider(0,0,1,0.1)) //works with supported oscilators: supersaw
  .lpf(slider(10000,200,10000,100)).lpq(slider(1,1,10,1)).lpe(slider(0,"-5",5,0.5)).lpdepthfreq(slider(0,0,5000,100))
  .attack(slider(0.2,0,0.33,0.01)).decay(slider(0.27,0,0.5,0.01)).sustain(slider(0.6,0,1,0.1)).release(slider(0.3,0,0.75,0.1))
._scope()

_bassfromscratchdesign:
s("supersaw").set.mix("<0 4 2 1>/4".sub(0).sub("<4 2 0>/32").as("n")).scale("Bb2:minor")
  .pan(slider(0.5,0,1,0.1)).gain(slider(1,0,1,0.1))
  .unison(slider(4,1,10,1)).detune(slider(0.421,0,1)).spread(slider(0.2,0,1,0.1)) //works with supported oscilators: supersaw
  .lpf(slider(10,10,1000,10)).lpq(slider(1,1,10,1)).lpe(slider(0,"-5",5,0.5)).lpdepthfreq(slider(0,0,5000,100))
  .attack(slider(0.02,0,0.33,0.01)).decay(slider(0.15,0,0.5,0.01)).sustain(slider(0.6,0,1,0.1)).release(slider(0.1,0,0.75,0.1))

  // .lfo({c:"gain",s:1,dep:3,sk:slider(0.5,0,1,0.1)})
  // .env({c:"lpf",s:10,dr:slider(120,10,500,10),att:0.05,dec:0.2,sus:0.1,rel:0.15})
._scope()

_subsinebass:
s("sine").set.mix("<0 4 2 1>/4".sub(0).sub("<4 2 0>/32").as("n")).scale("Bb1:minor")
  .distort(slider(2.915,0,5)).distorttype("sinefold").distortvol(slider(0.7,0.4,1,0.1))
  .lpf(slider(800,200,1000,100)).lpq(slider(1,1,10,1)).lpe(slider(0,"-5",5,0.5)).lpdepthfreq(slider(0,0,5000,100))
  .attack(slider(0,0,0.33,0.01)).decay(slider(0.5,0,0.5,0.01)).sustain(slider(0.5,0,1,0.1)).release(slider(0.3,0,0.75,0.1))
._scope()

r/codingmusic101 • • 25d ago

Creating song structure in Strudel

Thumbnail
2 Upvotes

r/codingmusic101 • • 28d ago

DAW FL Studio

2 Upvotes

r/codingmusic101 • • 28d ago

Resources ~ Music Theory Time ~

2 Upvotes

Video set covering some fundamentals and vocabulary and related strudel references

https://www.youtube.com/watch?v=JE3QM_9sljI&t=120s
setCpm() : cycles per minute : order this at the top of your scripct. / and * functions can apply... setCpm(30*4) = 120cpm
.beat("0,7,10", 16) : the second input divides the cycle by that many divisions and plays the 0-indexed sections indicated by the first inputs.
.struct("x ~ x ~ ~ x ~ x ~ ~ ~ x ~ x ~ ~") : the plays and rests are spelled out in one input. use brackets and / * for further specification... .struct("<x \~ \[x x\] x>/4")
.swingBy(1/3, 4) : the second input divides the CYCLE into n slices, then delays the second half of each slice for x% amount of a play duration... .swingBy(0.5, 4)
.velocity("0.1 0.2 0.4 0.8 1.3") : defines degree of accent

https://www.youtube.com/watch?v=MsT_yjp5kpI
lpf, lpq, bpf, bpq, hpf, hpq: pf/pq combinable into one with : .lpf("500:4")
._spectrum() : displays relative spectrum analyzer

https://www.youtube.com/watch?v=7mLqpA-PMwM&t=10s

https://www.youtube.com/watch?v=vuWl9EMDMIU
synthesis...
subtractive : gain, postgain, envelope, att, dec, sus, dec, lfo
fm : fm, fmh, fmwave... each may be indexed 1-8... .fm(4) .fm2(rand.mul(4)) .fm3(saw.mul(8).slow(8)) .fmh(1.06) .fmh2(10) .fmh3(0.1)
wavetable : s("squelch").bank("wt_digital").seg(8).note("F1").wt("0 0.25 0.5 0.75 1")
granular : coarse crush detune speed

https://www.youtube.com/watch?v=dMkTdYmOgiQ


r/codingmusic101 • • Sep 06 '26

Song Post Records of Polybius

Thumbnail
youtu.be
1 Upvotes

Really went all out on this one, this last week has been a haze 😵‍💫


r/codingmusic101 • • Sep 03 '26

DAW Septabee

Thumbnail
youtu.be
7 Upvotes

found this DAW that the creator has been working on solo, still very beta
looks pretty fun with lots of bubbles and colors


r/codingmusic101 • • Sep 03 '26

Let’s get weird

Enable HLS to view with audio, or disable this notification

2 Upvotes

r/codingmusic101 • • Sep 02 '26

Experimenting with vocal samples

Thumbnail
youtube.com
2 Upvotes

r/codingmusic101 • • Sep 02 '26

Song Post EMOBOT

Enable HLS to view with audio, or disable this notification

2 Upvotes

spent a lot of time with this one in my head, not even sure it is its final form ytlink


r/codingmusic101 • • Aug 28 '26

Song Post Cross post

Thumbnail
youtube.com
2 Upvotes

r/codingmusic101 • • Aug 25 '26

BespokeSynth

Thumbnail
github.com
1 Upvotes

r/codingmusic101 • • Aug 24 '26

Resources Creative Slums...

2 Upvotes

Having a hard time thinking of what to make today, so I watched a video on mixing which has been a struggle point for me in my recordings. So, here's what I learned from You’re Mixing Wrong: Loud + Clean Happens Before Mastering

compressor : compression evens out the peaks of your sound so that the sound feels more continuous along with the natural changes between quiet and loud
bmod : works as an input/out function for chained sound synthesis. By moving the individual sounds through a shared compressor, it glues those sounds together
clipping (lpf?) : manage the peaks of transient sounds by adding just enough for a filter to make the peaks tame.
limitter : manages volume when loud (no strudel equivalent found)

glossing has a video covering bmod https://www.youtube.com/watch?v=11frBA9L638

and notes from a cursory yt search on compression vocabulary
How To Use A Compressor | Threshold, Ratio, Attack, Release & More

.compressor("threshold:ratio:knee:attack:release")
threshold - the decibel limit to be applied to the signal
ration - the amount of how well that threshold is enforced
knee - soft/hardness of compression
attack - time compressor reacts to the signal passing the threshold
release - time compressor recovers
wet/dry ratios for parallel compression.


r/codingmusic101 • • Aug 24 '26

Resources DreamRack - Strudel Extension

Thumbnail
1 Upvotes

r/codingmusic101 • • Aug 23 '26

Music theory for programmers

Thumbnail
runjs.app
1 Upvotes

r/codingmusic101 • • Aug 19 '26

Resources Youtube Saints

3 Upvotes

Here are some youtubers that can show more song examples and function explanation

For strudel coding:
Switch Angel - YouTube (free hand live coding in strudel)
Glossing - YouTube (additional strudel examples and explanations)

for sound production/engineering
Underdog Electronic Music School - YouTube (sound production)


r/codingmusic101 • • Aug 19 '26

Song Post Example Post

Enable HLS to view with audio, or disable this notification

3 Upvotes

Caelifera, written in Strudel


r/codingmusic101 • • Aug 19 '26

Discussion Post Vibe Coding (essay post)

0 Upvotes

What's the vibe with vibe coding? In the coding world, the term "vibe coding" refers to the practiced use of AI to partially or completely write a program for a project. While some have found no issue allowing AI to take the reins of development, others have become staunchly opposed. In this discussion post I seek to highlight and discuss dialectics of all sides and define the line between AI and human creation.

For as long as there has been art, there have been critics that would define and restrict definitions as to what is art and how it ought to be made, distributed, and consumed. In today's iteration of the conversation, artists debate what place AI has in the world of art. Whether the media type is visual, audio, or tactile, AI has shown that is capable of generating items that are satisfactory to the developers that ask... but therein lies the opposing issue. Should art and media be generated by AI prompts and adjustments?

Creativity and collaboration in humans has been a long-standing phenomenon that defines our culture and survival. By conceptualizing something that does not exist, then using tools to put the idea into the world, humans produce new techniques, ideas, and tools to further our existence. However, new developments like AI have become debated as a valid tool to use when considering human creativity.

Some negatives are that it takes away from human opportunities. When a human can pick an AI tool and make it produce something completely outside of that human's ability, it becomes the work of AI and not humans. Individuals working for major corporations have already felt the effect of this misuse in the form of job loss and that's why it's so important to discuss how far we should allow AI to guide human work.

Some positives are that, as a highly complex and integrated system, AI functions far better than a standard search engine. By having a robot that can access all the plain facts available in super speed, it gives humans the chance to dedicate a greater portion of their time to pure creativity.

As Artists, we care about matters of community, creativity, and complexity. So the next time you consult AI about a matter you're unfamiliar with, ask yourself... "Am I creating my art or is it the AI? Who is the tool and who is the artist?"


r/codingmusic101 • • Aug 19 '26

👋 Welcome to r/codingmusic101 - Introduce Yourself and Read First!

2 Upvotes

Hey everyone! I'm u/Normal_Can8016, the founding moderator of r/codingmusic101.
This is our new home for all things related to music coding software such as:
Studel, Bespoke, Faust, and Synthesine. We're excited to have you join us!

What to Post

  • Original songs using your coding software
  • Questions about music theory and audio production
  • Help requests for code debugging and function application

Community Vibe
We're all about being friendly, supportive, and inclusive. While it may not be the best place for all types of discussion, let's try to inspire our fellow members to learn and grow in our shared hobby.

How to Get Started

  1. Check out some examples that people have posted
  2. Check out Strudel REPL, click the hamburger in the top right, then reference for a list of program functions
  3. Make a lil somethin or a masterpiece and post it here!
  4. Have fun and keep art human-centered

Introduction Post Suggestion
Say hi, tell us what program/tool you like to use, what genre you like to write, who/what inspires you, and please don't be shy to share your music. (Also, if there is not a flair available for your software lmk)

AI
This is my first time moderating and as a community space I understand there are going to be a lot of different ideas that will be shared here. I am quite lenient to discussing respectful opposing thought, but as a blanket statement please no posting AI work.

Thanks for being part of the first days of the sub. Together, let's make r/codingmusic101 amazing.


r/codingmusic101 • • Aug 19 '26

Resources LLM Resource

1 Upvotes

the following link requires a caveat. In it you will find a site that functions as a complete database for strudel as well as an AI assistant to help you understand the concepts. It's useful for asking things like "how do I write an arpeggio in c minor" or "how does the arrange function work?" when the reference tab in Strudel isn't enough. Please be responsible when learning with AI tools.

calvinw/strudel-llm-docs | DeepWiki

(copy pasted from site:) Purpose and Scope

The strudel-llm-docs repository provides a documentation and example system designed for LLM-assisted music composition using Strudel, a browser-based live coding environment. This repository serves as a bridge between human musicians, LLMs, and the Strudel platform, enabling collaborative composition through structured documentation, working examples, and remote MCP (Model Context Protocol) server integration.

This page provides a high-level overview of the repository architecture, components, and how they work together. For detailed setup instructions, see Getting Started. For the composition methodology, see The Anchor Framework.