Ardour 8.7 fails to load old projects

Hi.
I’m Marco Cannavo and it’s the first time I write here. I have a problem with 8.7 release, on Linux … don’t know if it’s the right place to report a problem.
I’ve just installed new 8.7 version and now Ardour doesn’t load the projects created/managed with older versions. I’ve tried to reinstall 8.6 version and checked that with 8.6 all works fine.

Launching 8.7 from command line and trying to load a project leads to the following messages, and an Error Dialog reporting problems in the GUI:

*$ Ardour8 *
Ardour8.7.0 (built using 8.7 and GCC version 6.3.0 20170516)
Ardour: [INFO]: Your system is configured to limit Ardour to 4096 open files
Ardour: [INFO]: Loading system configuration file /opt/Ardour-8.7.0/etc/system_config
Ardour: [INFO]: Loading user configuration file /home/marcoc/.config/ardour8/config
Ardour: [INFO]: CPU vendor: AuthenticAMD
Ardour: [INFO]: AVX capable processor
Ardour: [INFO]: AVX with FMA capable processor
*Ardour: [INFO]: CPU brand: AMD Ryzen 7 5800U with Radeon Graphics *
Ardour: [INFO]: Using AVX and FMA optimized routines
Ardour: [INFO]: Loading plugin meta data file /opt/Ardour-8.7.0/share/plugin_metadata/plugin_tags
Ardour: [INFO]: add_lrdf_data ‘/home/marcoc/.config/ardour8/rdf:/opt/Ardour-8.7.0/share/rdf:/usr/local/share/ladspa/rdf:/usr/share/ladspa/rdf’
Ardour: [INFO]: read rdf_file ‘file:///usr/share/ladspa/rdf/ladspa.rdfs’
Ardour: [INFO]: read rdf_file ‘file:///usr/share/ladspa/rdf/guitarix.rdf’
Cannot xinstall SIGPIPE error handler
Ardour: [INFO]: Loading default ui configuration file /opt/Ardour-8.7.0/etc/default_ui_config
Ardour: [INFO]: Loading 461 MIDI patches from /opt/Ardour-8.7.0/share/patchfiles
Ardour: [INFO]: Loading user ui configuration file /home/marcoc/.config/ardour8/ui_config
Ardour: [INFO]: Loading color file /opt/Ardour-8.7.0/share/themes/dark-ardour.colors
Ardour: [INFO]: Loading ui configuration file /opt/Ardour-8.7.0/etc/clearlooks.rc
Ardour: [INFO]: Loading bindings from /opt/Ardour-8.7.0/etc/ardour.keys
Loading ui configuration file /opt/Ardour-8.7.0/etc/clearlooks.rc
Found nothing along /home/marcoc/.config/ardour8/templates:/opt/Ardour-8.7.0/share/templates
lilv_world_load_bundle(): warning: Ignoring bundle <file:///usr/lib/lv2/avldrums.lv2/>
lilv_world_load_bundle(): note: Newer version of http://gareus.org/oss/lv2/avldrums#BlackPearl loaded from <file:///home/marcoc/.lv2/avldrums.lv2/>
lilv_world_load_bundle(): warning: Ignoring bundle <file:///usr/lib/lv2/avldrums.lv2/>
lilv_world_load_bundle(): note: Newer version of http://gareus.org/oss/lv2/avldrums#BlackPearl loaded from <file:///home/marcoc/.lv2/avldrums.lv2/>
VST3 not a valid bundle: ‘/usr/lib/vst3/AuburnSounds/Auburn Sounds Lens.vst3/Contents/x86_64-linux/Auburn Sounds Lens.so’
Region Take5_Federica-1 has length a63569408000@a0 which is longer than its (first?) source’s length of a63569403240
Region Take5_Acustica Yamaha-1 has length a63569408000@a0 which is longer than its (first?) source’s length of a63569403240
Region Take5_Federica-1.1 has length a63569408000@a0 which is longer than its (first?) source’s length of a63569403240

Log Messages:
INFO: Scanning folders for bundled LV2s: /opt/Ardour-8.7.0/lib/LV2
WARNING: LV2https://www.jahnichen.de/plugins/lv2/BShapr-cv: Port 6 (‘CV Output 1’) has unsupported data type.
WARNING: LV2https://www.jahnichen.de/plugins/lv2/BShapr-cv: Port 7 (‘CV Output 2’) has unsupported data type.
WARNING: LV2https://www.jahnichen.de/plugins/lv2/BShapr-cv: Port 8 (‘CV Output 3’) has unsupported data type.
WARNING: LV2https://www.jahnichen.de/plugins/lv2/BShapr-cv: Port 9 (‘CV Output 4’) has unsupported data type.
WARNING: Cannot access file: Error opening directory “/usr/lib/vst3/AuburnSounds/Auburn Sounds Lens.vst3”: Permission denied
WARNING: VST3</usr/lib/vst3/AuburnSounds/Auburn Sounds Lens.vst3>: Invalid VST3 Module Path: ‘’
INFO: xjadeo version: 0.8.14
INFO: harvid version: 901
INFO: Loading menus from /opt/Ardour-8.7.0/etc/ardour.menus
INFO: Cannot set I/O Priority for disk read/write thread
ERROR: Session: cannot create Region from XML description. Can not load state for region ‘Take5_Federica-1’
ERROR: Session: cannot create Region from XML description. Can not load state for region ‘Take5_Acustica Yamaha-1’
ERROR: Playlist: cannot create region from XML
ERROR: Session: cannot create Playlist from XML description.
ERROR: Session: failed to load active playlists
ERROR: Could not set session state from XML

The projects are not loaded. It happens with more, if not all, my old ardour projects.

For now I’ve reinstalled 8.6 version. Can you help me to find what’s wrong?

Thanks in advance
MarcoC

Ok, I’ve found that all my failing projects have in XML:

<ProgramVersion created-with=“Ardour 7.3” modified-with=“Ardour 7.3”/>

while, some other, older, files, created with 6.3 version, but having “modified-with” version 8.2, like this:

<ProgramVersion created-with=“Ardour 6.3.0~ds0-1” modified-with=“Ardour 8.2”/>

are loaded by Ardour 8.7 and works correctly.

I remember that, in older versions of Ardour (like 8.2), it checked the project version at loadtime and prompted to change/update project file, saving old versions with another name (I have some “ProjectFilename*-6000**.ardour*” files).

Should it work in that way or there’s something missing?
Should I try to save old project files with and Ardour 8.x version before trying to load them in 8.7?

Thanks
MarcoC

Hello

It is always advisable not to move a project from one version of ardour to the next, especially if you have many plugins loaded and if they include a lot of midi data.

It is better to finish the project in the version created.

You can also export the stems of the tracks and load them in the most recent version of ardour and continue from there.

In my case, what I do is install a version of ardour without uninstalling the previous one.

What I do is open the new version of ardour, let’s say 8.6.0 and load the project created in version 8.2.0, and check if there are any problems with the files and plugins, which is what usually gives the most problems, if there are many in the project made in another version of ardour.

If I can solve the problem that arises by doing it this way, then that project will be opened with the newest version of ardour.

Mainly the amount of midi data (automations and others), other project data and plugins and the amount of them that the project contains, the more complex the project is, the easier it is for a project in a different version to not load correctly.

The most important thing is that the folders where ardour searches for the plugins are the same, because as in my case I add some more to those that ardour searches by default.

greetings

The following line:

Region Take5_Federica-1.1 has length a63569408000@a0 which is longer than its (first?) source’s length of a63569403240

Is the same type of error I have been recieving.

My solution:
Open it in V7, save a copy, open in V8.

This has nothing directly to do with versions. There’s a bug which we do not have a recipe for at this point that leads to this impossible condition. There’s a region which is somehow (at bit) longer than the file from which its data comes.

Do you need more examples of the error to work with?

No, we need a recipe for creating the error.

Thanks Dave for you reply and suggestions.

I’ll try to follow your advice, even if my failing projects are very simple (some of there have only two tracks and no effects or MIDI).
Anyway, I’ve never had problems opening old projects with newer Ardour versions; it happened only now, with 8.7 release, and the same projects work, with 8.6 version, without a glitch; so it seemed strange to me.

Thanks
MarcoC

Paul,

I’ve tried in AVLinux MX WildFlower and Libretto versions, Debian Bookworm, and Linux Mint.
Different O.S.es, different disks with the same project, same results: the project is opened and works with 8.6, but fails with 8.7.
So, I don’t have a recipe to reproduce the problem, I have just a project and the use case is quite simple (trying to open the project). It (the ardour project) is not professional or protected in any way, so if you want it to give it a try I can send it.

Also, the error dialog box in GUI, shows:

Session “/home/marcoc/Ardour/Ardour8/Ardour7Projects48K/GlicineAcoustic (snapshot GlicineAcoustic Speaker)” did not load successfully:
Cannot initialize session/engine: Invalid or corrupt session state.

—ERROR: Could not set session state from XML
ERROR: Session: failed to load active playlists
ERROR: Session: cannot create Playlist from XML description.
ERROR: Playlist: cannot create region from XML
ERROR: Session: cannot create Region from XML description. Can not load state for region 'Take5_Acustica Yamaha-1'
ERROR: Session: cannot create Region from XML description. Can not load state for region 'Take5_Federica-1'

I suspected a change in libs/ardour/region.cc or libs/ardour/session_state.cc or in (external) libraries managing XML files (if any).

Maybe I’ll try with Windows version and let you know if I have the same problem.

Thanks in advance
MarcoC

Ok Paul
I’ve got the recipe you needed … I think.

My failing projects have been created originally with 44.1 KHz sample rate, and, some time ago, converted to 48 KHz, applying sndfile-resample -to 48000 -c 0 wavfile to convert the sample rate of every WAV file of the project, as well as changing "sample-rate=“44100” to "sample-rate=“48000” in .ardour project XML files.

I remember that after every project conversion I should realign markers along the projects, due to Ardour internal timing algorithm (I think) that was broken with the “conversion trick”, but I thought there were no other side effects, and it was good for me. Now I’ve “learned” to use 48 KHz sampling rate from the start.

I found Ardour 8.7 opens correctly the original, 44.1 KHz, project files (signaling sample rate mismatch with 48 Khz Jack/Pipewire, as expected) and it seems all ok.

Now I’ve realized that the dirty conversion trick I’ve used before is valid until 8.6 version and, starting from version 8.7, shouldn’t be used anymore.

Sorry for wasting your time.

Thanks a lot
MarcoC

This session can be made to load by removing those regions from the .ardour session file using a text editor.

They likely did not load in older versions correctly either (and only caused issues later on when trying to read more sample than the file has).

Robin,

should I remove the entries in Sources, Regions or Playlists stanza of the ardour project XML file?

Thanks
MarcoC

I expect all of them (you can search for the ID of the source file).


PS. and don’t forget to first backup the session file, if you have no yet done so. Just in case.