Skip to content

Commit

Permalink
Merge branch 'syncleader'
Browse files Browse the repository at this point in the history
  • Loading branch information
ywwg committed Jul 19, 2021
2 parents eb76915 + 36781b1 commit 6fbf69a
Show file tree
Hide file tree
Showing 32 changed files with 812 additions and 780 deletions.
16 changes: 8 additions & 8 deletions res/controllers/American Audio VMS4.midi.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<info>
<name>American Audio VMS4/4.1</name>
<author>Anders Gunnarsson &amp; Sean M. Pappalardo</author>
<description>2-deck control/4-deck mixer preset for Mixxx 2.1.
<description>2-deck control/4-deck mixer preset for Mixxx 2.1.
Assumes "Post EQ" mode. (See Wiki for full setup instructions.)</description>
<manual>american_audio_vms4</manual>
</info>
Expand Down Expand Up @@ -295,13 +295,13 @@ Assumes "Post EQ" mode. (See Wiki for full setup instructions.)</description>
</control>
<control><!-- Shifted Play -->
<group>[Channel1]</group>
<key>sync_master</key>
<key>sync_leader</key>
<status>0x91</status>
<midino>0x0D</midino>
</control>
<control><!-- Shifted Play -->
<group>[Channel1]</group>
<key>sync_master</key>
<key>sync_leader</key>
<status>0x81</status>
<midino>0x0D</midino>
</control>
Expand Down Expand Up @@ -1000,13 +1000,13 @@ Assumes "Post EQ" mode. (See Wiki for full setup instructions.)</description>
</control>
<control><!-- Shifted Play -->
<group>[Channel2]</group>
<key>sync_master</key>
<key>sync_leader</key>
<status>0x91</status>
<midino>0x2F</midino>
</control>
<control><!-- Shifted Play -->
<group>[Channel2]</group>
<key>sync_master</key>
<key>sync_leader</key>
<status>0x81</status>
<midino>0x2F</midino>
</control>
Expand Down Expand Up @@ -1615,7 +1615,7 @@ Assumes "Post EQ" mode. (See Wiki for full setup instructions.)</description>
<Spread64 />
</options>
</control>

<!-- Mixer channel 3 -->
<control>
<group>[Channel3]</group>
Expand Down Expand Up @@ -1671,7 +1671,7 @@ Assumes "Post EQ" mode. (See Wiki for full setup instructions.)</description>
<Spread64 />
</options>
</control>

<!-- Mixer channel 4 -->
<control>
<group>[Channel4]</group>
Expand Down Expand Up @@ -1727,7 +1727,7 @@ Assumes "Post EQ" mode. (See Wiki for full setup instructions.)</description>
<Spread64 />
</options>
</control>

<!-- Samplers -->
<!-- 1 -->
<control>
Expand Down
4 changes: 2 additions & 2 deletions res/controllers/Hercules DJ Control MP3 e2-scripts.js
Original file line number Diff line number Diff line change
Expand Up @@ -731,7 +731,7 @@ HerculesMP3e2.jogWheel = function(midino, control, value, status, group) {

// drive master tempo led connected to sync_mode
HerculesMP3e2.syncmode = function(value, group, control) {
// Following code was used for sync_master control.
// Following code was used for sync_leader control.
// Deactivated for now due to https://bugs.launchpad.net/mixxx/+bug/1456801
// currently (2015-05-20) explicit master mode is not supported.
// Switched to sync_enabled (binary) control
Expand Down Expand Up @@ -1004,4 +1004,4 @@ HerculesMP3e2.filterMid = function(midino, control, value, status, group) {

HerculesMP3e2.filterLow = function(midino, control, value, status, group) {
HerculesMP3e2.filterKnob(group, "parameter1", value);
};
};
8 changes: 4 additions & 4 deletions res/controllers/Hercules DJControl Starlight.midi.xml
Original file line number Diff line number Diff line change
Expand Up @@ -202,7 +202,7 @@
// Sync
<control>
<group>[Channel1]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SHIFT + Sync: Sync Master</description>
<status>0x94</status>
<midino>0x05</midino>
Expand Down Expand Up @@ -266,7 +266,7 @@
// Sync
<control>
<group>[Channel2]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SHIFT + Sync: Sync Master</description>
<status>0x95</status>
<midino>0x05</midino>
Expand Down Expand Up @@ -1082,7 +1082,7 @@

<output>
<group>[Channel1]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SYNC LED Deck A(SHIFT mode)</description>
<minimum>0.5</minimum>
<maximum>1</maximum>
Expand Down Expand Up @@ -1130,7 +1130,7 @@

<output>
<group>[Channel2]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SYNC LED Deck B(SHIFT mode)</description>
<minimum>0.5</minimum>
<maximum>1</maximum>
Expand Down
8 changes: 4 additions & 4 deletions res/controllers/Hercules_DJControl_Inpulse_200.midi.xml
Original file line number Diff line number Diff line change
Expand Up @@ -283,7 +283,7 @@
<!--Sync-->
<control>
<group>[Channel1]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SHIFT + Sync: Sync Master</description>
<status>0x94</status>
<midino>0x05</midino>
Expand Down Expand Up @@ -349,7 +349,7 @@
<!--Sync-->
<control>
<group>[Channel2]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SHIFT + Sync: Sync Master</description>
<status>0x95</status>
<midino>0x05</midino>
Expand Down Expand Up @@ -1181,7 +1181,7 @@
</output>
<output>
<group>[Channel1]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SYNC LED Deck A(SHIFT mode)</description>
<minimum>0.5</minimum>
<maximum>1</maximum>
Expand Down Expand Up @@ -1225,7 +1225,7 @@
</output>
<output>
<group>[Channel2]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SYNC LED Deck B(SHIFT mode)</description>
<minimum>0.5</minimum>
<maximum>1</maximum>
Expand Down
8 changes: 4 additions & 4 deletions res/controllers/Hercules_DJControl_Inpulse_300.midi.xml
Original file line number Diff line number Diff line change
Expand Up @@ -364,7 +364,7 @@
<!--Sync-->
<control>
<group>[Channel1]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SHIFT + Sync: Sync Master</description>
<status>0x94</status>
<midino>0x05</midino>
Expand Down Expand Up @@ -443,7 +443,7 @@
<!--Sync-->
<control>
<group>[Channel2]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SHIFT + Sync: Sync Master</description>
<status>0x95</status>
<midino>0x05</midino>
Expand Down Expand Up @@ -1693,7 +1693,7 @@
</output>
<output>
<group>[Channel1]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SYNC LED Deck A(SHIFT mode)</description>
<minimum>0.5</minimum>
<maximum>1</maximum>
Expand Down Expand Up @@ -1759,7 +1759,7 @@
</output>
<output>
<group>[Channel2]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SYNC LED Deck B(SHIFT mode)</description>
<minimum>0.5</minimum>
<maximum>1</maximum>
Expand Down
8 changes: 4 additions & 4 deletions res/controllers/Hercules_DJControl_Jogvision.midi.xml
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@
</control>
<control>
<group>[Channel1]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SHIFT + Sync: Sync Master</description>
<status>0x90</status>
<midino>0x35</midino>
Expand Down Expand Up @@ -594,7 +594,7 @@
</control>
<control>
<group>[Channel2]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SHIFT + Sync: Sync Master</description>
<status>0x91</status>
<midino>0x35</midino>
Expand Down Expand Up @@ -1473,7 +1473,7 @@
</output>
<output>
<group>[Channel1]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SYNC LED Deck A(SHIFT mode)</description>
<minimum>0.5</minimum>
<maximum>1</maximum>
Expand Down Expand Up @@ -1550,7 +1550,7 @@
</output>
<output>
<group>[Channel2]</group>
<key>sync_master</key>
<key>sync_leader</key>
<description>SYNC LED Deck A(SHIFT mode)</description>
<minimum>0.5</minimum>
<maximum>1</maximum>
Expand Down
8 changes: 4 additions & 4 deletions res/controllers/Novation-Launchpad MK2-scripts.js
Original file line number Diff line number Diff line change
Expand Up @@ -2202,9 +2202,9 @@ var NovationLaunchpadMK2 = (function () {
name: 'sync_enabled',
type: 'binary'
},
sync_master: {
sync_leader: {
group: "[".concat(type).concat(i, "]"),
name: 'sync_master',
name: 'sync_leader',
type: 'binary'
},
sync_mode: {
Expand Down Expand Up @@ -6765,9 +6765,9 @@ var NovationLaunchpadMK2 = (function () {
}
}, function () {
if (bindings.syncMode.getValue() === 2) {
deck.sync_master.setValue(0);
deck.sync_leader.setValue(0);
} else {
deck.sync_master.setValue(1);
deck.sync_leader.setValue(1);
}
});
}
Expand Down
8 changes: 4 additions & 4 deletions res/controllers/Novation-Launchpad-scripts.js
Original file line number Diff line number Diff line change
Expand Up @@ -2202,9 +2202,9 @@ var NovationLaunchpad = (function () {
name: 'sync_enabled',
type: 'binary'
},
sync_master: {
sync_leader: {
group: "[".concat(type).concat(i, "]"),
name: 'sync_master',
name: 'sync_leader',
type: 'binary'
},
sync_mode: {
Expand Down Expand Up @@ -6765,9 +6765,9 @@ var NovationLaunchpad = (function () {
}
}, function () {
if (bindings.syncMode.getValue() === 2) {
deck.sync_master.setValue(0);
deck.sync_leader.setValue(0);
} else {
deck.sync_master.setValue(1);
deck.sync_leader.setValue(1);
}
});
}
Expand Down
4 changes: 2 additions & 2 deletions res/controllers/Roland_DJ-505-scripts.js
Original file line number Diff line number Diff line change
Expand Up @@ -629,8 +629,8 @@ DJ505.Deck = function(deckNumbers, offset) {
// If already explicit leader, reset explicit state
// (setting it to 0 may still make it implicit leader and
// immediately resetting it to 1).
var value = (engine.getValue(this.group, "sync_master") === 2) ? 0 : 2;
engine.setValue(this.group, "sync_master", value);
var value = (engine.getValue(this.group, "sync_leader") === 2) ? 0 : 2;
engine.setValue(this.group, "sync_leader", value);
} else {
engine.setValue(this.group, "sync_enabled", 1);
}
Expand Down
6 changes: 3 additions & 3 deletions res/controllers/Traktor-Kontrol-S4-MK2-hid-scripts.js
Original file line number Diff line number Diff line change
Expand Up @@ -380,7 +380,7 @@ TraktorS4MK2.registerOutputPackets = function() {

Output1.addOutput("[Master]", "!usblight", 0x2A, "B");
Output1.addOutput("[Master]", "!quantize", 0x31, "B");
Output1.addOutput("[InternalClock]", "sync_master", 0x30, "B");
Output1.addOutput("[InternalClock]", "sync_leader", 0x30, "B");
Output1.addOutput("[Recording]", "status", 0x34, "B");

this.controller.registerOutputPacket(Output1);
Expand Down Expand Up @@ -550,7 +550,7 @@ TraktorS4MK2.registerOutputPackets = function() {
TraktorS4MK2.linkChannelOutput("[EffectRack1_EffectUnit2_Effect3]", "enabled", TraktorS4MK2.outputChannelCallback);

TraktorS4MK2.linkChannelOutput("[PreviewDeck1]", "play_indicator", TraktorS4MK2.outputChannelCallback);
TraktorS4MK2.linkChannelOutput("[InternalClock]", "sync_master", TraktorS4MK2.outputChannelCallback);
TraktorS4MK2.linkChannelOutput("[InternalClock]", "sync_leader", TraktorS4MK2.outputChannelCallback);

if (TraktorS4MK2.RemixSlotButtonAction === "SAMPLES") {
TraktorS4MK2.linkChannelOutput("[Sampler1]", "play_indicator", TraktorS4MK2.outputChannelCallback);
Expand Down Expand Up @@ -723,7 +723,7 @@ TraktorS4MK2.init = function(id) {

TraktorS4MK2.controller.setOutput("[Master]", "!usblight", 0x7F, true);

TraktorS4MK2.outputChannelCallback(engine.getValue("[InternalClock]", "sync_master"), "[InternalClock]", "sync_master");
TraktorS4MK2.outputChannelCallback(engine.getValue("[InternalClock]", "sync_leader"), "[InternalClock]", "sync_leader");
TraktorS4MK2.outputChannelCallback(engine.getValue("[Recording]", "status"), "[Recording]", "status");
TraktorS4MK2.controller.setOutput("deck1", "!on_air", engine.getValue("[Recording]", "status")*0x7F);
TraktorS4MK2.controller.setOutput("deck2", "!on_air", engine.getValue("[Recording]", "status")*0x7F);
Expand Down
6 changes: 3 additions & 3 deletions res/skins/LateNight/decks/rate_controls.xml
Original file line number Diff line number Diff line change
Expand Up @@ -80,10 +80,10 @@
<SetVariable name="Size">48f,22f</SetVariable>
<SetVariable name="BtnSize">sync</SetVariable>
<SetVariable name="ConfigKey"><Variable name="Group"/>,sync_enabled</SetVariable>
<SetVariable name="ConfigKeyRight"><Variable name="Group"/>,sync_master</SetVariable>
<SetVariable name="ConfigKeyRight"><Variable name="Group"/>,sync_leader</SetVariable>
</Template>
<PushButton>
<TooltipId>sync_master</TooltipId>
<TooltipId>sync_leader</TooltipId>
<ObjectName>SyncLeader</ObjectName>
<Size>48f,22f</Size>
<NumberStates>3</NumberStates>
Expand All @@ -103,7 +103,7 @@
<Pressed scalemode="STRETCH">skin:/<Variable name="BtnScheme"/>/buttons/btn_<Variable name="BtnType"/>_sync_active.svg</Pressed>
</State>
<Connection>
<ConfigKey><Variable name="Group"/>,sync_master</ConfigKey>
<ConfigKey><Variable name="Group"/>,sync_leader</ConfigKey>
<ButtonState>LeftButton</ButtonState>
</Connection>
</PushButton>
Expand Down
9 changes: 6 additions & 3 deletions src/controllers/controlpickermenu.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -224,8 +224,11 @@ ControlPickerMenu::ControlPickerMenu(QWidget* pParent)
tr("One-time beat sync (phase only)"),
syncMenu);
syncMenu->addSeparator();
addControl("[InternalClock]", "sync_master", tr("Internal Sync Master"),
tr("Toggle Internal Sync Master"), syncMenu);
addControl("[InternalClock]",
"sync_leader",
tr("Internal Sync Leader"),
tr("Toggle Internal Sync Leader"),
syncMenu);
addControl("[InternalClock]", "bpm", tr("Internal Master BPM"),
tr("Internal Master BPM"), syncMenu);
addControl("[InternalClock]", "bpm_up", tr("Internal Master BPM +1"),
Expand All @@ -239,7 +242,7 @@ ControlPickerMenu::ControlPickerMenu(QWidget* pParent)
addControl("[InternalClock]", "bpm_down_small", tr("Internal Master BPM -0.1"),
tr("Decrease internal master BPM by 0.1"), syncMenu);
syncMenu->addSeparator();
addDeckAndSamplerControl("sync_master", tr("Sync Master"), tr("Toggle sync master"), syncMenu);
addDeckAndSamplerControl("sync_leader", tr("Sync Leader"), tr("Toggle sync master"), syncMenu);
addDeckAndSamplerControl("sync_mode", tr("Sync Mode"),
tr("Sync mode 3-state toggle (OFF, FOLLOWER, MASTER)"), syncMenu);

Expand Down
4 changes: 2 additions & 2 deletions src/engine/controls/bpmcontrol.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -302,7 +302,7 @@ void BpmControl::slotControlBeatSync(double value) {
}

bool BpmControl::syncTempo() {
if (getSyncMode() == SYNC_MASTER_EXPLICIT) {
if (getSyncMode() == SyncMode::LeaderExplicit) {
return false;
}
EngineBuffer* pOtherEngineBuffer = pickSyncTarget();
Expand Down Expand Up @@ -1063,7 +1063,7 @@ void BpmControl::slotBeatsTranslateMatchAlignment(double v) {
const mixxx::BeatsPointer pBeats = pTrack->getBeats();
if (pBeats) {
// Must reset the user offset *before* calling getPhaseOffset(),
// otherwise it will always return 0 if master sync is active.
// otherwise it will always return 0 if sync lock is active.
m_dUserOffset.setValue(0.0);

double sampleOffset = getPhaseOffset(getSampleOfTrack().current);
Expand Down
4 changes: 2 additions & 2 deletions src/engine/controls/bpmcontrol.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ class BpmControl : public EngineControl {
return m_pLocalBpm ? mixxx::Bpm(m_pLocalBpm->get()) : mixxx::Bpm();
}

// When in master sync mode, ratecontrol calls calcSyncedRate to figure out
// When in sync lock mode, ratecontrol calls calcSyncedRate to figure out
// how fast the track should play back. The returned rate is usually just
// the correct pitch to match bpms. The usertweak argument represents
// how much the user is nudging the pitch to get two tracks into sync, and
Expand Down Expand Up @@ -176,5 +176,5 @@ class BpmControl : public EngineControl {
mixxx::BeatsPointer m_pBeats;

FRIEND_TEST(EngineSyncTest, UserTweakPreservedInSeek);
FRIEND_TEST(EngineSyncTest, FollowerUserTweakPreservedInMasterChange);
FRIEND_TEST(EngineSyncTest, FollowerUserTweakPreservedInLeaderChange);
};
Loading

0 comments on commit 6fbf69a

Please sign in to comment.