alt.hn

5/16/2025 at 2:46:18 AM

Cracked – Method chaining/CSS-style selector web audio library

https://github.com/billorcutt/i_dropped_my_phone_the_screen_cracked

by stephenhandley

5/16/2025 at 4:23:26 AM

Hmm seems like the jQuery of Web Audio API? How are the browser support on mobile?

Edit: with a bit pure data flavor mixed in... super nice!

by freeamz

5/16/2025 at 4:56:55 AM

This is wonderful - a very immediate and intuitive way to construct and create audio graphs!

by jeremyleach

5/16/2025 at 3:53:41 AM

Just in case you scrolled past it, the live demo was in the github website link:

https://idroppedmyphonethescreencracked.tumblr.com/

by nailer

5/16/2025 at 3:24:36 PM

I think i-dropped-my-phone-in-the-toilet-and-the-audio-stopped-working-and-yes-i-checked-the-mute-switch because it does not seem to generate any sound on iOS Safari, not supported?

by thenthenthen

5/16/2025 at 4:38:32 AM

THese all sound awful. I don't get it.

by hdjrudni

5/16/2025 at 4:51:08 AM

I think the idea is that you can use this to build synths that you then control woth midi, etc

by promiseofbeans

5/16/2025 at 9:09:10 AM

You didn't even like this one!? https://idroppedmyphonethescreencracked.tumblr.com/post/9350...

That said, guessing a bunch of those are meant to be concise examples.

For what its worth my quick take on a lot of the text-based sound coding environments [1] is that they provide a relatively quick way to approach creating audio programmatically differently compared to a more traditional spatial / grid-based daw.

One nice thing about Cracked is that you can treat it as an audio input in Ableton, Logic, etc. and so you could use it to generate a sound to sample / process further in a daw arrangement. I had stumbled across it originally from the author's Wikipedia page which mentions that he uses it to create longer albums / pieces https://en.wikipedia.org/wiki/Bill_Orcutt

Interview with him about it https://www.thewire.co.uk/news/41540/bill-orcutt-releases-op...

[1] https://tidalcycles.org/ https://sonic-pi.net/ https://chuck.stanford.edu/ https://supercollider.github.io/

by stephenhandley

5/16/2025 at 6:13:02 AM

Would this also work for adding effects to existing audio? A simple reverb and pitch bend on a recorded vocal would make me a lot more excited than experimental synth effects.

by DrSiemer

5/16/2025 at 3:08:03 AM

This is brilliant! I'm gonna use it to prototype synths for my drum patterns/bass lines website.

by wesz

5/16/2025 at 11:28:04 AM

You should check out webaudiomodules and sequencer party.

by gravitronic

5/16/2025 at 5:50:06 AM

Can it handle "nodes" that emit a different number of audio samples than they consume?

I'm thinking of time stretch effects like mine https://github.com/bungee-audio-stretch/bungee

by xipix

5/16/2025 at 9:12:18 AM

It's basically just a wrapper around WebAudio, I've generally just used the builtin nodes, but I think you could do sample-level processing with this? https://developer.mozilla.org/en-US/docs/Web/API/AudioWorkle...

love the demo https://bungee.parabolaresearch.com/change-audio-speed-pitch

have you thought about wrapping it as an audio unit or vst via juce/clap/iplug so its usable in a daw?

https://juce.com/ https://cleveraudio.org/developers-getting-started/ https://github.com/iPlug2/iPlug2

by stephenhandley

5/16/2025 at 9:09:42 AM

if you are looking for some performant declarative web audio lib in js, check:

https://glicol.js.org/

it's ported from Rust

by chaosprint

5/16/2025 at 9:19:54 AM

looks cool but wasn't able to get audio output from the stackblitz demo

by stephenhandley

5/16/2025 at 5:10:45 AM

Would love to plug this into https://synthia.app

by tristanMatthias

5/16/2025 at 9:29:37 AM

cool app. maybe its already possible but i'm missing how but would be awesome if dragging a new node between an existing connection it would automatically insert it between the nodes to avoid the steps to disconnect / reconnect

by stephenhandley

5/16/2025 at 6:17:46 AM

Nice app!

by jeremyleach

5/16/2025 at 4:36:31 AM

Interesting library with a rather weird name.

by phantomathkg

5/16/2025 at 6:15:09 AM

Its just social engineering to make people who drop their phones get involved in audio creation.

by mattigames

5/16/2025 at 8:33:35 AM

I find the underlying premise a bit odd. I can name values in Javascript just fine:

const whatever = ...

I would rather refer to them by these names than by strings. It's both faster and safer to do so.

by noelwelsh

5/16/2025 at 6:00:34 PM

This provides ID + class based selection of nodes with a syntax which allows combining multiple filters. It's more akin to the methodology of selecting nodes in the DOM than just providing a name alone.

by zamadatix

5/16/2025 at 2:45:54 PM

[dead]

by frshOffTheBoat

5/16/2025 at 5:47:15 AM

This is super cool, Im definitely gonna mess around with it for my own synth experiments!

by gitroom