Last active
August 16, 2026 21:03
-
-
Save bxt/90e55a1813be6f9feb5bba33a1adb65e to your computer and use it in GitHub Desktop.
My first Strudel song
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| // Hello, World! by @bxt | |
| // sound("crow piano steinway numbers numbers:3") | |
| setcpm(120 / 4) | |
| /* | |
| const drumkits = sound("<bd hh sd oh bd hh sd oh>*8") | |
| .bank("<AkaiLinn RhythmAce RolandTR909 RolandTR808 RolandTR707 ViscoSpaceDrum>") | |
| */ | |
| const kickdrum = sound( | |
| "<<bd*2 bd> <- bd> - <bd - bd bd> bd - - <- - - bd>>*8", | |
| ).bank("RolandTR909") | |
| const hats = sound("<hh hh*<1 2> <- hh> hh hh hh*<1 2> hh*0 hh>*8") | |
| .bank( | |
| "RhythmAce", | |
| ) | |
| const deco = sound("<- - sd <- oh>>*8") | |
| .bank("AkaiLinn") | |
| const breakdown = sound("<-!3 ht ht ht mt*2 lt*3 cr -!56 >* 8") | |
| .bank( | |
| "RolandTR909", | |
| ) | |
| const claps = sound("<- - cp*<1 2> - - <cp -> cp ->*8") | |
| .bank("RolandTR909") | |
| .gain(0.7) | |
| const melody = "c4 a3 e4 d4".slow(4) | |
| const base = melody | |
| .add(-24) | |
| .note() | |
| .sound("gm_acoustic_bass") | |
| .gain(1.2) | |
| const lead = melody | |
| .add(-36) | |
| .ply(8) | |
| .add("<<0 0> <7 12>>*8") | |
| .note() | |
| .sound("casio") | |
| const voice12 = sound("numbers") | |
| .n("<1 2 - ->") | |
| .early(0.1) | |
| const voice34 = sound("numbers") | |
| .n("<- - 3 4>") | |
| .early(0.2) | |
| const voice = stack(voice12, voice34) | |
| .room(0.5) | |
| .gain(1.2) | |
| $: kickdrum | |
| $: hats | |
| $: deco | |
| $: claps | |
| $: base | |
| $: lead | |
| $: voice | |
| $: breakdown |
Author
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Check it out here: https://strudel.cc/#Ly8gSGVsbG8sIFdvcmxkISBieSBAYnh0CgovLyBzb3VuZCgiY3JvdyBwaWFubyBzdGVpbndheSBudW1iZXJzIG51bWJlcnM6MyIpCgpzZXRjcG0oMTIwIC8gNCkKCi8qCiBjb25zdCBkcnVta2l0cyA9IHNvdW5kKCI8YmQgaGggc2Qgb2ggYmQgaGggc2Qgb2g%2BKjgiKQogICAgLmJhbmsoIjxBa2FpTGlubiBSaHl0aG1BY2UgUm9sYW5kVFI5MDkgUm9sYW5kVFI4MDggUm9sYW5kVFI3MDcgVmlzY29TcGFjZURydW0%2BIikKICovCgpjb25zdCBraWNrZHJ1bSA9IHNvdW5kKAogICI8PGJkKjIgYmQ%2BIDwtIGJkPiAtIDxiZCAtIGJkIGJkPiBiZCAtIC0gPC0gLSAtIGJkPj4qOCIsCikuYmFuaygiUm9sYW5kVFI5MDkiKQpjb25zdCBoYXRzID0gc291bmQoIjxoaCBoaCo8MSAyPiA8LSBoaD4gaGggaGggaGgqPDEgMj4gaGgqMCBoaD4qOCIpCiAgICAuYmFuaygKICAiUmh5dGhtQWNlIiwKKQpjb25zdCBkZWNvID0gc291bmQoIjwtIC0gc2QgPC0gb2g%2BPio4IikKICAgIC5iYW5rKCJBa2FpTGlubiIpCmNvbnN0IGJyZWFrZG93biA9IHNvdW5kKCI8LSEzIGh0IGh0IGh0IG10KjIgbHQqMyBjciAtITU2ID4qIDgiKQogICAgLmJhbmsoCiAgIlJvbGFuZFRSOTA5IiwKKQpjb25zdCBjbGFwcyA9IHNvdW5kKCI8LSAtIGNwKjwxIDI%2BIC0gLSA8Y3AgLT4gY3AgLT4qOCIpCiAgLmJhbmsoIlJvbGFuZFRSOTA5IikKICAuZ2FpbigwLjcpCgpjb25zdCBtZWxvZHkgPSAiYzQgYTMgZTQgZDQiLnNsb3coNCkKCmNvbnN0IGJhc2UgPSBtZWxvZHkKICAgIC5hZGQoLTI0KQogICAgLm5vdGUoKQogICAgLnNvdW5kKCJnbV9hY291c3RpY19iYXNzIikKICAgIC5nYWluKDEuMikKCmNvbnN0IGxlYWQgPSBtZWxvZHkKICAuYWRkKC0zNikKICAucGx5KDgpCiAgLmFkZCgiPDwwIDA%2BIDw3IDEyPj4qOCIpCiAgLm5vdGUoKQogIC5zb3VuZCgiY2FzaW8iKQoKY29uc3Qgdm9pY2UxMiA9IHNvdW5kKCJudW1iZXJzIikKICAgIC5uKCI8MSAyIC0gLT4iKQogICAgLmVhcmx5KDAuMSkKY29uc3Qgdm9pY2UzNCA9IHNvdW5kKCJudW1iZXJzIikKICAgIC5uKCI8LSAtIDMgND4iKQogICAgLmVhcmx5KDAuMikKY29uc3Qgdm9pY2UgPSBzdGFjayh2b2ljZTEyLCB2b2ljZTM0KQogICAgLnJvb20oMC41KQogICAgLmdhaW4oMS4yKQoKJDoga2lja2RydW0KJDogaGF0cwokOiBkZWNvCiQ6IGNsYXBzCiQ6IGJhc2UKJDogbGVhZAokOiB2b2ljZQokOiBicmVha2Rvd24%3D