MantisBT

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0004656ardourbugspublic2012-01-25 08:132012-01-31 07:52
Reportercolinf 
Assigned To 
PrioritynormalSeverityminorReproducibilityalways
StatusnewResolutionopen 
PlatformOSOS Version
Product Version 
Target Version3.XFixed in Version 
Summary0004656: aux sends not restored with session template
DescriptionEven if aux sends are defined in a session saved as a template, creating a new session from that template won't create them.
TagsNo tags attached.
Attached Files

- Relationships
related to 0005814new Using sends in templates does not get added properly in new sessions 

-  Notes
(0012718)
paul (administrator)
2012-01-30 18:02

This is a rather complex issue. The session may not contain the target of the aux send, and worse, the target is specified as an ID, not a name, which means we cannot try to find it.

Changed target to 3.X because its really part of the overall "aux send" issue.
(0012722)
colinf (updater)
2012-01-31 03:27

I can't see how it should be possible to create a session template with an aux send but without its corresponding target. I suppose matching multiple aux sends with their potential targets would still be a problem if there's no way of finding the name of the target for a given send.

Would it be a 'good enough' solution just to save aux sends in session templates, and use their names to determine their targets when creating a session from a template?

I know that would break if a send was renamed, but it'd be better than nothing. Maybe 'Save as template' could even warn about that case?
(0012723)
paul (administrator)
2012-01-31 07:10

1) i missed that this was for a session template. that makes things a bit easier, maybe. i'm not 100% sure that the object IDs will all be restored, but i think they are.

2) there's some fairly deep work to be done to make aux sends/busses really work in the way that they should. i'd rather focus on a superficial fix for now. it could be that this is really just a missing couple of lines of code.
(0012724)
colinf (updater)
2012-01-31 07:52

This one-liner makes aux sends get saved in (both session and route) templates:

Index: libs/ardour/route.cc
===================================================================
--- libs/ardour/route.cc (revision 11397)
+++ libs/ardour/route.cc (working copy)
@@ -1914,7 +1914,7 @@
             boost::shared_ptr<InternalSend> is;
 
             if ((is = boost::dynamic_pointer_cast<InternalSend> (*i)) != 0) {
- if (is->role() == Delivery::Aux || is->role() == Delivery::Listen) {
+ if (is->role() == Delivery::Listen) {
                     continue;
                 }
             }

Now, if I save a template with aux sends, sessions created from that template get the aux sends back, so yes, the IDs do come back the same.

The downside is that creating a route from a route template with aux sends saved with this patch causes errors like:

"rvrb - cannot find any track/bus with the ID 295 to connect to".

It'd be lovely if routes knew whether they're being created from a template, so they could search for their aux send targets by name rather than by ID, but even without any other changes I don't think the behaviour of complaining about unconnectable aux sends when creating a route from a template is any worse than silently discarding the aux sends when the template is saved.

- Issue History
Date Modified Username Field Change
2012-01-25 08:13 colinf New Issue
2012-01-26 00:53 cth103 cost => 0.00
2012-01-26 00:53 cth103 Target Version => 3.0-beta3
2012-01-30 18:02 paul Note Added: 0012718
2012-01-30 18:02 paul Target Version 3.0-beta3 => 3.X
2012-01-31 03:27 colinf Note Added: 0012722
2012-01-31 07:10 paul Note Added: 0012723
2012-01-31 07:52 colinf Note Added: 0012724
2014-01-09 04:08 colinf Relationship added related to 0005814


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker