For a realtime-ish solution I wonder if you've seen Ninjam[1]? It used to be that most evenings one could find various populated rooms; the serverlist[2] shows that the infrastructure's all sat there ready for people to come.
You play over the most recent (eg) 16 bar repeat. At the end of each repeat, everyone gets the updated loop. It's easier to experience than describe but is surprisingly effective and bypasses a whole class of latency issues.
I recently saw a talk of the developer who basically bootstrapped this. Open source and all, and he talked about the idea of collaboration and showed some features and forks that sounded like what you want.
I’m working on something close to that. At the moment it’s just for ableton. The idea is to be able to sync a daw project, binaries will be saved on cloudflare and then use git for certain cases where it’s possible to merge. In case one person is working on a bass line and another is working on a guitar part. I’ve been using git for this workflow but the idea to have use interface that’s legible for non git users
Bandlab is decent enough for this, yeah. It's not "version control" in the way that programmers are used to, not by any means. More like "Google Docs" but for a DAW session. Certainly good enough for "my brother who plays keys lives in a different city but we want to collaborate on something".
I think this git but for music you are suggesting is quite interesting (or more like a figma for music maybe).
My musician friends still use dropbox and google drive to push around files to each other. Honestly, I would be all for it but I have a feeling that musicians are a tough crowd when it comes to these services. So maybe if somebody like Bandcamp who has already demonstrated good will with the community steps up and builds something that would be a delight.
This is roughly the idea but the platform is very clunky. My band also somehow lost access to some tracks due to permissions vagueries and in general the experience is very enshittified. I would not recommend it.
Yes. I’ve wanted something like this for a while. I’ve always wondered why there isn’t version control for DAWs. So many times I’ve spent hours editing a track and accidentally saved it without specifying a unique file name. Only to open it later and wish I could go back to before the changes that fucked it up.
The good version controls used for code & text are line-oriented; most DAW session file formats are semantically scoped, and so the VC tools won't work well.
Most DAWs allow you to "snapshot" a session at any time, and return to it as you want to. Certainly Ardour does that.
DAW projects aren't text. They can include audio files, plug-ins, automation curves, MIDI data, and more.
A complete reconstruction would have to save and freeze all of those elements.
You can save references to save space, but you still need a complete collection of everything as a starting point.
And DAWs themselves regularly change their saved file formats.
For a completely secure reconstruction you'd have to save a complete virtual machine with the current DAW version, current OS, current installed plug-ins - with licensing and DRM - and all of the project data.
The problem is not the non-text elements, because in a non-destructive non-linear editor, those elements are rarely, if ever, modified after creation.
The rest of the state can easily be represented as text, but as I noted in my other comment (a sibling of yours) the format is rarely line oriented which makes most VC tools not particularly suitable.
Apple will certainly jump on this. They already have GarageBand and they are making the hardware more accessible in the form of the Neo MacBooks. They are good at capitalizing on that FOMO power. And by making it a part of GarageBand (which already makes use of iCloud), they can keep it in their ecosystem. Collaboration is already doable with shared files, but I’m sure they can streamline the process
Edit: and another comment alerted me to the existence of live jam sessions, so this would be a possible extension of it
this is exactly what i thought - but i guess the discoverability is missing. where you can say, "hey, i have this guitar riff, any drummers?". it's more of a community + access to the same daw.
As a side note, is there any online community where you find people willing to do this? I’ve always struggled most with finding people eager to play and create music, especially as I get older. What you describe sounds like fun.
With software, the code is a tool. And you can give the code away and still make money on hosting, support, enterprise sales, consulting, recruiting, whatever.
With music, the stem is the product.
If the drum loop is mediocre, nobody cares. If it's actually good, the creator usually wants ownership, licensing, royalties, exclusivity, or at minimum, attribution. But even at that level, it's trivial. Once you remove the triviality of it, it becomes art, which is the product.
People absolutely want cloud collaboration though. Shared sessions, async recording, version history, stem exchange, all of that makes sense.
But public forks of high quality musical material don't really compound the way software tools do. Most musicians are not trying to maximize downstream reuse of their riffs by strangers on the internet.
Could be pretty easy to do with atproto accounts. Users could save/share their music as a tangled.sh repo and other people could contribute or fork as they please. A nice UI could hide all of that and make it fun to collaborate on music.
I want to "check out" someone's drum loop and add a guitar riff. Check it into a branch.
Someone else checks out the drum+guitar, adds a bass line. Checks in.
"Jamming" with other people is one of the most fun things. To the degree that you can "get close" on the web…
RiffHub, anyone?