View Issue Details

IDProjectCategoryView StatusLast Update
0003121ardourbugspublic2010-07-06 18:16
Reporteroofus Assigned Tocth103  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
PlatformDell D830 core2duo T9300 2.5GHzOSMandrivaOS Version2010
Target Version3.0-beta1 
Summary0003121: When sending MMC and relocating the playhead with transport in play, Ardour 3 sends the wrong sequence of MMC commands
DescriptionWhen sending MMC and relocating the playhead with transport in play, Ardour 3 sends the wrong sequence of MMC commands.

Ardour is sending locate then play, then locate. This second locate causes the external machine to locate and stop. The sequence just needs to be locate followed by play.

Note: send MTC is off in this situation.
TagsNo tags attached.

Activities

oofus

2010-06-14 15:21

developer   ~0008239

This seems to have changed slightly recently. Every now and then a sequence that causes the correct behaviour is sent, even though this sequence looks ultimately incorrect as well, in as much as it sends too many messages. This sequence seems to be locate, locate, play. One too many locates ! The predominance is still for locate, play, locate to be sent though.

cth103

2010-06-25 21:57

administrator   ~0008328

I can see why this happens, but I'm rather afraid of breaking other things by tinkering. I think we need a list of the different situations in which transport locate / play occur so I can check.

oofus

2010-06-26 11:03

developer   ~0008330

Is there not just one code path that deals with the transport transitioning into play regardless of what happened prior to that ?

I'll think through where locate/ play happens and add it as a further comment.

paul

2010-06-27 15:52

administrator   ~0008336

there should only be Session::start_transport() and Session::stop_transport.

however, some of the work of stop transport is done asynchronously in a different thread, so stop_transport() is not quite as clean and simple as it may first appear. likewise, locate is done partly in a realtime thread, then partly in the butler thread and then is finished in the realtime thread again.

cth103

2010-06-28 17:26

administrator   ~0008348

This should be better, or fixed, in SVN.

cth103

2010-06-28 20:50

administrator   ~0008352

Fixed.

oofus

2010-07-06 18:16

developer   ~0008402

fixed

Issue History

Date Modified Username Field Change
2010-05-10 13:09 oofus New Issue
2010-06-14 15:21 oofus Note Added: 0008239
2010-06-14 20:47 cth103 cost => 0.00
2010-06-14 20:47 cth103 Target Version => 3.0-beta1
2010-06-25 21:31 cth103 Status new => confirmed
2010-06-25 21:57 cth103 Note Added: 0008328
2010-06-26 11:03 oofus Note Added: 0008330
2010-06-27 15:52 paul Note Added: 0008336
2010-06-28 17:26 cth103 Note Added: 0008348
2010-06-28 17:26 cth103 Status confirmed => feedback
2010-06-28 20:50 cth103 Note Added: 0008352
2010-06-28 20:50 cth103 Status feedback => resolved
2010-06-28 20:50 cth103 Resolution open => fixed
2010-06-28 20:50 cth103 Assigned To => cth103
2010-07-06 18:16 oofus Status resolved => feedback
2010-07-06 18:16 oofus Resolution fixed => reopened
2010-07-06 18:16 oofus Note Added: 0008402
2010-07-06 18:16 oofus Status feedback => closed
2010-07-06 18:16 oofus Resolution reopened => fixed