View Issue Details

IDProjectCategoryView StatusLast Update
0009533ardourbugspublic2025-02-15 19:31
Reportererdavis7 Assigned Topaul  
PrioritynormalSeverityminorReproducibilityalways
Status assignedResolutionopen 
PlatformApple MacintoshOSMacOSOS Version10.12 or later
Product Version8.1 
Summary0009533: Automation Inconsistency
DescriptionIn the attached file, the pitchbend is set at neutral for bars 1-2, and then set to maximum for bars 3-4. When played from the beginning, it sounds as expected. However, if after playing past measure 3, playback is resumed at measure 2, then measure 2 will sound with the pitchbend at maximum (the last value that was played), rather than at neutral (the last value that was set in the timeline).

Whenever resuming playback, automatable parameters ought to be set either to the last value that was set in the timeline, or to neutral if there was no previous setting in the timeline.
Tagsautomation

Activities

erdavis7

2023-11-11 20:34

reporter  

paul

2023-11-14 19:39

administrator   ~0028331

does this still happen if you set the automation style for pitchbend as "interpolated" ?

erdavis7

2023-11-15 02:40

reporter   ~0028332

It happens in both "Discrete" and "Linear" modes.

DonJaime

2023-11-18 22:06

reporter   ~0028338

This is a manifestation of a more general phenomenon (which could justifiably be seen as a problem): Ardour plays MIDI sequentially and doesn't in general try to restore the track state to what it would have been if it had played from the start. If there are patch changes in a track, for example, this can lead to the wrong "instrument" being played. (I haven't checked if the same problem arises with all CC messages, but if it doesn't, that would be a (welcome) inconsistency.)

paul

2023-11-18 22:56

administrator   ~0028340

we actually have the internal "technology" to do the "catch up with current total MIDI state" now.

the actual problem is deciding when to emit any MIDI messages. for example, in the specific case of this bug, doing it on completion of a locate is potentially wasteful, because the user may just locate again. they may also edit the information that is earlier than the current playhead position, which will make the MIDI sent be inaccurate. that would suggest doing it just before we start rolling (playing), but it can be tricky to ensure the ordering of messages is 100% accurate.

still thinking.

flirora

2025-02-15 18:49

reporter   ~0029219

paul > does this still happen if you set the automation style for pitchbend as "interpolated" ?
erldavis7 > It happens in both "Discrete" and "Linear" modes.

In particular, from experimenting in my own session, I found that in linear mode, the parameter updates once the value on the curve changes while playing. So for example, if you automate the Expression parameter and have the points

(m1, 0) – (m7, 2) – (m8, 127)

and play to m8 and then play back at m2, then the parameter only updates once you hit m4, when it would go from 0 to 1.

Paul, any updates on this issue? I can still reproduce it on Ardour 8.11.0.

paul

2025-02-15 19:31

administrator   ~0029220

No updates from me. We're very busy working on things that are mostly not in the bugtracker.

Issue History

Date Modified Username Field Change
2023-11-11 20:34 erdavis7 New Issue
2023-11-11 20:34 erdavis7 File Added: automation-inconsistency.zip
2023-11-11 20:34 erdavis7 Tag Attached: automation
2023-11-14 19:39 paul Assigned To => paul
2023-11-14 19:39 paul Status new => feedback
2023-11-14 19:39 paul Note Added: 0028331
2023-11-15 02:40 erdavis7 Note Added: 0028332
2023-11-15 02:40 erdavis7 Status feedback => assigned
2023-11-18 22:06 DonJaime Note Added: 0028338
2023-11-18 22:56 paul Note Added: 0028340
2025-02-15 18:49 flirora Note Added: 0029219
2025-02-15 19:31 paul Note Added: 0029220