From 4391e9eaeee10bf498955a4ddb2d464f8b153321 Mon Sep 17 00:00:00 2001 From: Faye Li Date: Tue, 3 Jan 2017 12:57:08 -0800 Subject: [PATCH] send the mic level from js --- scripts/system/tablet-ui/tabletUI.js | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/scripts/system/tablet-ui/tabletUI.js b/scripts/system/tablet-ui/tabletUI.js index 50c76d6b0f..2d7b69ad38 100644 --- a/scripts/system/tablet-ui/tabletUI.js +++ b/scripts/system/tablet-ui/tabletUI.js @@ -71,33 +71,33 @@ var accumulatedLevel = 0.0; // Note: Might have to tweak the following two based on the rate we're getting the data var AVERAGING_RATIO = 0.05; - var AUDIO_LEVEL_UPDATE_INTERVAL_MS = 100; + var MIC_LEVEL_UPDATE_INTERVAL_MS = 100; - // Calculate audio level with the same scaling equation (log scale, exponentially averaged) in AvatarInputs and pal.js - function getAudioLevel() { + // Calculate microphone level with the same scaling equation (log scale, exponentially averaged) in AvatarInputs and pal.js + function getMicLevel() { var LOUDNESS_FLOOR = 11.0; var LOUDNESS_SCALE = 2.8 / 5.0; var LOG2 = Math.log(2.0); - var audioLevel = 0.0; + var micLevel = 0.0; accumulatedLevel = AVERAGING_RATIO * accumulatedLevel + (1 - AVERAGING_RATIO) * (MyAvatar.audioLoudness); // Convert to log base 2 var logLevel = Math.log(accumulatedLevel + 1) / LOG2; if (logLevel <= LOUDNESS_FLOOR) { - audioLevel = logLevel / LOUDNESS_FLOOR * LOUDNESS_SCALE; + micLevel = logLevel / LOUDNESS_FLOOR * LOUDNESS_SCALE; } else { - audioLevel = (logLevel - (LOUDNESS_FLOOR - 1.0)) * LOUDNESS_SCALE; + micLevel = (logLevel - (LOUDNESS_FLOOR - 1.0)) * LOUDNESS_SCALE; } - if (audioLevel > 1.0) { - audioLevel = 1.0; + if (micLevel > 1.0) { + micLevel = 1.0; } - return audioLevel; + return micLevel; } Script.setInterval(function() { - var currentAudioLevel = getAudioLevel(); - // TODO: send the audio level to QML - - }, AUDIO_LEVEL_UPDATE_INTERVAL_MS); + var currentMicLevel = getMicLevel(); + var tablet = Tablet.getTablet("com.highfidelity.interface.tablet.system"); + tablet.updateAudioBar(currentMicLevel); + }, MIC_LEVEL_UPDATE_INTERVAL_MS); }()); // END LOCAL_SCOPE