From b2a49ce1dd6f1b64ba13fc19d8981101719aded1 Mon Sep 17 00:00:00 2001 From: Brian Smith Date: Thu, 5 Sep 2013 17:51:29 -0400 Subject: [PATCH] VRFS-554 me vs. others mixer --- app/assets/javascripts/faderHelpers.js | 20 ++++++++++++++++++++ app/assets/javascripts/session.js | 18 +++++++++++------- app/views/clients/_session.html.erb | 4 ++-- 3 files changed, 33 insertions(+), 9 deletions(-) diff --git a/app/assets/javascripts/faderHelpers.js b/app/assets/javascripts/faderHelpers.js index 2de97935e..21ea1f3ae 100644 --- a/app/assets/javascripts/faderHelpers.js +++ b/app/assets/javascripts/faderHelpers.js @@ -176,6 +176,26 @@ } }, + convertLinearToDb: function(input) { + var temp; + temp = 0.0; + // coefficients + var a = -8.0013990435159329E+01; + var b = 4.1755639785242042E+00; + var c = -1.4036729740086906E-01; + var d = 3.1788545454166156E-03; + var f = -3.5148685730880861E-05; + var g = 1.4221429222004657E-07; + temp += a + + b * input + + c * Math.pow(input, 2.0) + + d * Math.pow(input, 3.0) + + f * Math.pow(input, 4.0) + + g * Math.pow(input, 5.0); + + return temp; + }, + setFaderValue: function(faderId, faderValue) { var $fader = $('[fader-id="' + faderId + '"]'); this.setHandlePosition($fader, faderValue); diff --git a/app/assets/javascripts/session.js b/app/assets/javascripts/session.js index 2cd3dcf70..5cbb00f36 100644 --- a/app/assets/javascripts/session.js +++ b/app/assets/javascripts/session.js @@ -273,8 +273,8 @@ range_high: 20, volume_left: context.jamClient.SessionGetMasterLocalMix() }; - var gainPercent = percentFromMixerValue( - l2m_mixer.range_low, l2m_mixer.range_high, l2m_mixer.volume_left); + // var gainPercent = percentFromMixerValue( + // l2m_mixer.range_low, l2m_mixer.range_high, l2m_mixer.volume_left); var faderId = '#l2m'; // also the selector for renderFader @@ -290,16 +290,17 @@ }; context.JK.FaderHelpers.renderFader(faderId, faderOpts); context.JK.FaderHelpers.subscribe(faderId, l2mChanged); - // Visually update fader to underlying mixer start value. - context.JK.FaderHelpers.setFaderValue(faderId, gainPercent); + + // initialize to middle (50%, 0dB) per Peter's request + context.JK.FaderHelpers.setFaderValue(faderId, 50); + context.jamClient.SessionSetMasterLocalMix(0); } /** * This has a specialized jamClient call, so custom handler. */ function l2mChanged(faderId, newValue, dragging) { - // TODO - assuming -80 to 20 db range on l2m. - var dbValue = newValue - 80; + var dbValue = context.JK.FaderHelpers.convertLinearToDb(newValue); context.jamClient.SessionSetMasterLocalMix(dbValue); } @@ -728,7 +729,10 @@ context.trackVolumeObject.volR = sliderValue; // Special case for L2M mix: if (mixerId === '__L2M__') { - context.jamClient.SessionSetMasterLocalMix(sliderValue); + logger.debug("L2M volumePercent=" + volumePercent); + var dbValue = context.JK.FaderHelpers.convertLinearToDb(volumePercent); + context.jamClient.SessionSetMasterLocalMix(dbValue); + // context.jamClient.SessionSetMasterLocalMix(sliderValue); } else { context.jamClient.SessionSetControlState(mixerId); } diff --git a/app/views/clients/_session.html.erb b/app/views/clients/_session.html.erb index 9015eaded..d21473bf8 100644 --- a/app/views/clients/_session.html.erb +++ b/app/views/clients/_session.html.erb @@ -28,9 +28,9 @@
MIX:
-
me
-
others
+
+
me