Coredump with tempo ramping

Hi there,

tl;dr: Ardour explodes while editing|adding tempo markers

To reproduce :

  • Start ardou8 (8.10.0) from terminal on a freshly upgraded archlinux system.
  • Start a new session with nothing in it.
  • Fiddle with tempo and time signatures
    • set 12/8 time at 001|01|0000
    • Ramp tempo from 85 at 001|01 to 80 at 001|04
    • Ramp tempo from 80 at 001|04 to 70 at 001|07
    • Continue this way adding (4~5 more) tempo ramps until ardour explodes with this message :
CASE 1: 80 .. 65 1/4 RAMPED notes per minute (211680000 .. 260529231 sc-per-1/4) P@307992478/1:960/1|4|0  ramp to 65 omega = -5.90513985638e-10
 scpqn = 211680000
 for 12:0 @ 1:960 | 307992478 + log (-1.31250000504) -1.16315079368 - omega = 5.90513985638e-10 => -1661733594
[1]    2963 IOT instruction (core dumped)  ardour8 | 
       2964 done

I’m starting this song from scratch. I never had that many tempo changes before. It is for a classical orchestra recording session for 2025+ where there needs to be multiple tempo ramps. inb4: There is no midi file provided from which I could take the tempos. The only thing I have is a complete orchestra score and the conductor indications.

Core dump ? What gives ? Any thoughts ?

It’s a bug. Please attempt to generate a tiny (empty, from the sound of it) session that crashes when you add the next tempo, then attached an archive of it to this thread or a bug report at tracker.ardour.org

I’ll take a look as soon as I can.

Sir! Yes! Sir!

http://de.gauthier.pl/pour/.ardour/2025-01-08-160900.zip

Where and with what tempo should I add a new tempo marker to induce the crash?

I was editing my post to include that information sorry.

Edit the second tempo mark at 001|004 edit the 70 to a 65 then apply. Works every time here.

Can anyone here replicate the issue reliably (from my file provided) ?

Here -----_also.

Looking at it now. 12/8 eh? :slight_smile:

OK, I have fixed the immediate problem. However, there are two problems:

  1. changing anything tempo map related is fraught with danger, and we need to test extensively before committing the change.
  2. there will be no more 8.x releases, so the change will only be available to self-builders, until 9.0 is released

The actual issue was that when editing a tempo, the position was forced to a quarter note position, rather than using the note value given by the meter (in your case, 1/8th note)

The fix passed our unit tests, and from a code review does not appear to be extensive in its impact. It has been pushed to the master repository.

1 Like

So no fixed 8.XX nightlies either?

I don’t know how far off 9 is but between this tempo mapping and these potential session corrupting region size bugs we are not in a good interim place here as Users… I’m back all the way to a random nightly 8.2.5 and only luckily and from another generous User could I get it.

Ardour is great, I love it to bits and I’m a long time supporter and distributor but I feel like we should have a battleship quality build to work with between major versions. 8.10 is no 5.12, that’s for sure…

1 Like

Yes, nightlies are fixed, but “nobody should be using 9.0-pre0 for anything”. This bug only affected people ramping tempo with time signatures that are not denominated in 4 (quarters notes/crotchets).

We don’t know when the region size bug was introduced. It may have been 8.0. Until we get some reproduceable pathway to it, it is going to remain a mystery.