Ardour 7 to 6 session file conversion

I often edit session files with some shell scripts I’ve made.

I’m trying to convert from Ardour 7 to 6 right now, and I’ve noticed a few differences.

In Ardour 6 a region’s start, length etc. are the number of samples. But in Ardour 7 it looks like this:

start="a424084786440" 
length="a596473080@a91289022720" 
sync-position="a424084786440"

And it isn’t as easy as dropping the “a”

How do I interpret these values?

Ardour 7 changed how internal time is represented. Here is a link to brief description of this change

But I understand that you probably look for deeper insight into it

1 Like

Ardour sessions are backward compatible, but not forward compatible.
You can load old sessions in new versions of Ardour, but not the other way around.

When you first opened an Ardour 6 session in Ardour 7, a backup was made. There should be a file session_name-6000.ardour, use that to if you need to continue working with Ardour 6.

As @PMB_Sound already mentioned time representation was completely overhauled. There are now two distinct time-domains: audio (sample time) and tempo-dependent music-time (bar/beats).

the “a” are sample-rate independent super-clock values. Search the session-file for superclocks-per-second (usually this is 2^10 × 3^2 × 5^4 × 7^2). Ardour6 used samples, so to convert back, multiply by the sample-rate, and divide by superclocks-per-second.

You will however run into a lot more issues than just changing time-representation.

Is there a specific reason why you want to go back? Ardour 6 is riddled with bugs, and I don’t envy anyone who has not yet updated to 7.2.

2 Likes

Usually my scripts aren’t for changing version like this. And I already knew and don’t expect v6 to open v7 files (except for where it makes a backup like you said).

I’ve been trying to upgrade to v7 for a while, but bugs send me back to v6. I really like that there is native Opus support now in 7.2. And I finished a podcast edit in v7.2, only to have painful crashes when I started my mixing pass that made use of plugins. Plugins that work fine in v6.9

So that is my reasoning.

Also, I have almost finished a PHP script that will work for most of what is important to me. When it’s done, maybe I should put that somewhere…

Looking forward to moving to v7 when I can!

Since posting I created 2 extremely similar sessions from scratch, one in v6.9 and the other in v7.2, and deduced that every second was 282240000 units long, which turned out to be a multiple of the sample rate. But I’m guessing the actual super-clocks in a second could vary for a number of reasons, so it’s good to know that it’s actually specified in the file! I didn’t discover that on my own…

1 Like

That is a first! There are currently no known issues of plugins that work in v6 but not v7.
Please file a bug report when you have time.

1 Like

I will! But these were Waves VST plugins used via yabridge…