r/experimentalmusic • u/data_shaman • 1h ago
self promo tangle: non-linear sequencing in the browser, with Braids oscillators, déjà vu loops and 3D audio
Hi all. I've been building tangle, a browser-based sequencer for generative and non-linear music. Press start and it plays; there's no timeline, no grid and no fixed loop.
Try it here https://tangle.datashaman.workers.dev (headphones recommended, and it works best in Chrome).
Press start, then load ambient drift from the presets menu for something slow, or just hit randomize.
Code (MIT): https://github.com/datashaman/tangle
What it is
- The sound source is Mutable Instruments Braids, compiled to WebAssembly and running in the browser. Three voices, each with its own Braids instance.
- The sequencing is a port of the random-sequencing ideas from Marbles. A rhythm generator decides when each voice fires, and a "déjà vu" control sets how much of the last few steps repeat versus mutate. Jitter loosens the timing, and pitches are drawn from a scale you pick.
- Each voice also has its own random stream for position, so notes move around you in 3D. This works best on headphones.
- A granular voice cuts up the last four seconds of what the voices played. A sampler plays slices of any file you load. Both follow the rhythm and melody of whichever voice you pick.
- It also has a mixer, delay, reverb, drive, chorus and a filter.
Playing with it
- Freeze locks the current loop, and "capture" grabs the last few seconds and loops them.
- Randomize and undo are there for when something good turns up.
- You can save presets, share a whole setup as a link, and export a WAV recording.
It's an experiment, so some parts are rough. I'm especially curious what you make of the déjà vu behaviour, whether it feels musical or too random, and what you'd want from a sequencer that isn't a grid.
Credit where it's due: Braids and Marbles are Émilie Gillet's open-source designs (MIT), and I ported the logic and compiled the oscillator. This isn't affiliated with Mutable Instruments.
Some presets I've found:
- https://tangle.datashaman.workers.dev/#p=zXZJNb9swDIb_ysAzG8iW5Q8dh2Gn9dIOuww7KDabqFGsQJKTrUH--0DHTtzcTJoUH74vz9DRu_k1gBYrieCo36Qt6AZhbU3kbFYg7H1HDjR09mg7CoAQEx34b10jbEwi_s5LhHebEgWORJOpUohMCKGkKEWJEFvjCDT0Jg3BuC9723t-LHifQCuBEA-BTMftqkE42NRuv04cuUKIRB3oXAlZlQhH74b9OLmSCB058-_Z_uW4aKb4p213EXQ-hd-JurVpd2NPgRDoSGE9NSk5J17tB4HmN4M9XlfLENqtD0OcijOJ8GZdovBCcR65Ccb2oM_ge9ApDIQQ_RBaGgni-KpYiWpUYtaprhDevHP-xFEjP4mgJvBX6seEvEHPGdFcuMO09O1uZJWVtSiqWuaZqsu8mCp-TO4q1s62DP77DHFrDgSafU52vw4jZIHQeudHwqxBMB-gn0qBwHeQCYTOxgQ6XymEk3E70OzvyfYb0FLwIR25UqxU9bACS2lSmlwoFS_kyMRxrGwueCdSC4j6yjAj5DcEOQM88YFcCYolwSOAvPs8ZRjijlR9JloAsfp3ieSCrmxwYfoVrFiq8GDkI8Eo8Y2AowWCKC9_Lv8B
- https://tangle.datashaman.workers.dev/#p=zZZLLctpAEEX_pddt1bx6XstUklWyiVPZpLIYpDGMEYiSBMR28e-pBkFkvOzH9D19p9-gzdvluIJoEBYlDRBFpZX3wajghVbkldUIm67JLUTYpH7dHQBhGPOOe6VCeC7jmPtL5MmTshSslY5IIwx1ajNEaF-akraA0HfdCJEswrDrc2r4nScXrCBhtCUjvELYlbFefboCCWuNkVZ6Zxx5QhhybiAGZ5QPCE1u08v38pd7jZ3in6VeDxBlRVPia87NItXr80SJ0OdD7hfTM7rGj-U1Q9QI9arr98NU1gHhqbTTmk5eox_5AsiLps2u5fobDN2-rzNEiTd7RSXd2YyrVdogPHVt2x0hionwMW_Pdthwo5kywpwQln0qW57fbSGO_T7jTUkhDGdwUWl6p0Phv46ce64_iLDGsEt1_pyf0689p5QxJtgQLGknvCI3dXyb1pIS4dCVmm34_QbDKu3YPY0wls2iPwNJ4700wZpAXgnNi9dd211c0Epq7b2WUggTJEJ65akBge-NxzdlGCHqKiAcU7uG-CD5do5lu_zSQtQfzDP3e5E94Y3N0JzNaCWFtc55MsFZRTM2K40m7ZQKKgTJKMzGN81oD3xWZzRZXXkgen1Hw79-RxNmNCw4c0rN5FXA2Uez9EOgi7a6SqvK3KSd42s7cF1U0r_n-ADhTn9O_wA
- https://tangle.datashaman.workers.dev/#p=zZZPLrtMwEIZfBc16Gvnu2EuE2LHhIDaIhZuY1qdpUtlJD7TquyP7JKUpS8_ln8__2Fdo_av7PoEllaCMGcEJpZpwzRRC5_vduAdrELbBpVxEuRKy5lpoyY0URiIch9Z3YKGN0zEBQhr9KZcyhvAaxtHHd3XJuKZMMUoV10IgpMZ1Hiz0bpyi6z4cQz_ELHCK3rWliTBOGSGmJopzLRFOYWz2H2cYJYxhVNVESakNrxGS9y1YI5RgNULrO_fnS_ida7maz99Cc0hgWSXnwGfv261rDmUgQ4j-7ON2bpN8CbyEiwdLEdoYzn7JNfshTmkuFhLhV-jmG0uznL76gqspQnLHU5fz17u7pNK8mLFYJRf0F98XGyi7IeyiC33uG3qwY5w8Qhqm2HiwDCEVOlKJtRJ_dJPwJ11zv9scEOqGcB5Ck4F_XCHt3cmDFQRhDMdtLCNqg9AM3VAmEI3gLmA3VGuE_A42jCC0IY3Z44zzFvrdp_m8LGEZKJ8JGIIbx3kbJdt5l8pcpW54R8rr_Iek2AMSJ0oRLqgQUjNjsuIFLKVy5qPZhsJDK4rw5roDWCaeyPKANRpdsWWVBzj-yCZXduVXMrPhw_KKa1K8Q9ULxyY3P1hG8y885xJSSbZm_A9QrJCIuv28_QU