13
0

Compare commits

...

6 Commits

Author SHA1 Message Date
ca551ed07a add the correct control to a ControlGroup when adding a Route to a RouteGroup 2024-05-10 17:37:34 -06:00
1f262d83ee send gain control for MasterSend must use GainAutomation parameter to be groupable
ControlGroups don't admit controls with a different parameter type, and a RouteGroup's
_gain_group uses GainAutomation as its parameter type.
2024-05-10 17:37:34 -06:00
857ef78417 second application of 41c68ffc19
This is reapplied to allow us to remain in sync with ardour/master more easily
2024-05-10 17:37:34 -06:00
9f98b4ab4e second application of f9a76829f3 after revert in ardour/master
This is reapplied to allow us to remain in sync with ardour/master more easily
2024-05-10 17:37:34 -06:00
0b73ff4daf Revert "ensure that the master send is directly before the main outs."
MasterSends are not (currently) part of Ardour.

This reverts commit dcdcaf4b47.
2024-05-10 17:37:34 -06:00
d931a2d83e Revert "fix for metering of a MasterSend (internal send)"
MasterSends are not (currently) part of Ardour.

This reverts commit de1a425704.
2024-05-10 17:37:34 -06:00
2 changed files with 19 additions and 4 deletions

View File

@ -33,9 +33,11 @@
#include "ardour/amp.h"
#include "ardour/audio_track.h"
#include "ardour/debug.h"
#include "ardour/internal_send.h"
#include "ardour/monitor_control.h"
#include "ardour/route.h"
#include "ardour/route_group.h"
#include "ardour/profile.h"
#include "ardour/session.h"
#include "ardour/surround_send.h"
#include "ardour/vca.h"
@ -187,7 +189,11 @@ RouteGroup::add (std::shared_ptr<Route> r)
_solo_group->add_control (r->solo_control());
_mute_group->add_control (r->mute_control());
_gain_group->add_control (r->gain_control());
if (ARDOUR::Profile->get_livetrax()) {
_gain_group->add_control (r->master_send()->gain_control());
} else {
_gain_group->add_control (r->gain_control());
}
std::shared_ptr<Track> trk = std::dynamic_pointer_cast<Track> (r);
if (trk) {
_rec_enable_group->add_control (trk->rec_enable_control());
@ -258,7 +264,11 @@ RouteGroup::remove (std::shared_ptr<Route> r)
_solo_group->remove_control (r->solo_control());
_mute_group->remove_control (r->mute_control());
_gain_group->remove_control (r->gain_control());
if (Profile->get_livetrax()) {
_gain_group->remove_control (r->master_send()->gain_control());
} else {
_gain_group->remove_control (r->gain_control());
}
std::shared_ptr<Track> trk = std::dynamic_pointer_cast<Track> (r);
if (trk) {
_rec_enable_group->remove_control (trk->rec_enable_control());

View File

@ -108,8 +108,13 @@ Send::Send (Session& s, std::shared_ptr<Pannable> p, std::shared_ptr<MuteMaster>
{
//boost_debug_shared_ptr_mark_interesting (this, "send");
std::shared_ptr<AutomationList> gl (new AutomationList (Evoral::Parameter (BusSendLevel), *this));
set_gain_control (std::shared_ptr<GainControl> (new GainControl (_session, Evoral::Parameter(BusSendLevel), gl)));
if (role() == MasterSend) {
std::shared_ptr<AutomationList> gl (new AutomationList (Evoral::Parameter (GainAutomation), *this));
set_gain_control (std::shared_ptr<GainControl> (new GainControl (_session, Evoral::Parameter (GainAutomation), gl)));
} else {
std::shared_ptr<AutomationList> gl (new AutomationList (Evoral::Parameter (BusSendLevel), *this));
set_gain_control (std::shared_ptr<GainControl> (new GainControl (_session, Evoral::Parameter (BusSendLevel), gl)));
}
gain_control ()->set_flag (Controllable::InlineControl);
add_control (gain_control ());