16 comments

[ 3.3 ms ] story [ 48.0 ms ] thread
Compressing XML files is not exactly uncommon. Microsoft Office does it too.
The headline lead me to believe Ableton Live actually includes a Ruby gem in the "Ableton Live Set". This is not the case, the article discusses a Ruby gem for parsing these live set files.
I have actually used the fact that you can "easily" read these projects by eye in the past.

1. Some tracks have some really odd BPMs ... not 127, but 127.0346867 or something. Live unfortunately only ever shows two digits in the clip view. So if after a while you want to know the exact bpm you figured out, you have a slight problem: But, the XML exposes the accurate value. Unfortunately not for the global project BPM, though ... so don't figure out a bpm via that ...

2. I was reconstructing some film music stuff and needed copy clip fades exactly to another clip, but those clips didn't originally start and end at the same time (so any solution regarding replacing the source file wouldn't have worked). So I manually copied the clip fades in the XML somehow, I don't exactly remember how it worked, but I did get the exact same fades in the end.

They only switched to this format with Live 9 btw, Live 8 uses some proprietary binary format.

The first version using gzipped XML was 8.2.2
Ah, that is interesting. For a specific reason I'm still keeping a copy of 8.2.1 around, the version just before that, but I've actually currently forgotten that reason. I think the way it renders audio files, newer versions write the whole thing twice, that version only once, which helps with huge audio files sometimes where I only need to do basic processing.
I wonder what happened to Michael (author of this article). Radio silence for nearly a decade.
His last GitHub commit was 2016. Try email him?

I also haven't updated my blogspot blogs in a long time.

His last commit was actually in 2012; the repository you looked at had an issue opened more recently (or a star, not sure how GitHub’s “last updated” feature works).

Hoping he responds to my email.

So are MSO and libreoffice files. I actually like the idea: it allows me to extract image, text and view some structures without the need of any specialized tools.
Those are zip archives with multiple xml files and assets, not just gzipped xml.
This is very, very useful for something I'm currently working on.
So you're telling me you're developping version control for Ableton projects ? Because that's something I need !
The DAW Renoise also saves to a zip file of xml and sample data.
This is genius. I work in Logic and for whatever reason (right brain left brain prejudice?) never thought to look at the source files. Wondering is anyone has done similar things with Logic?
This is why Bitwig was recently able to add Ableton project import.
I guess not all people investigate files out of curiosity. If you are into save files for games a lot of them use gzip->xml, gzip->json or gzip->weird list.