diff --git a/.gitignore b/.gitignore
index d8f0b11274f787754546a06a55e6cb9f1a924c8d..42d6d13a7b5a058591c0e2dddf7775726f1fb3fa 100644
--- a/.gitignore
+++ b/.gitignore
@@ -34,3 +34,4 @@ clients/flash/**/.gradle
 **/.idea/*
 *.iml
 *~
+**/node_modules/
diff --git a/bigbluebutton-html5/imports/ui/components/actions-bar/component.jsx b/bigbluebutton-html5/imports/ui/components/actions-bar/component.jsx
index f5ab6664d3795e89c280f63f16ebac935deeacd9..95d8be778e9711bc0fad60527f431a57d6d00f84 100755
--- a/bigbluebutton-html5/imports/ui/components/actions-bar/component.jsx
+++ b/bigbluebutton-html5/imports/ui/components/actions-bar/component.jsx
@@ -330,7 +330,7 @@ class ActionsBar extends PureComponent {
                       aria-label={intl.formatMessage(intlMessages.translatorMicrophoneLabel)}
                       color={!amIAsTranslatorMuted ? 'primary' : 'default'}
                       ghost={amIAsTranslatorMuted}
-                      icon={amIAsTranslatorMuted ? 'mute' : 'unmute'}
+                      icon={amIAsTranslatorMuted ? 'mute' : AudioManager.$translatorSpeakingChanged.value ? "mute_filled": 'unmute'}
                       size="lg"
                       circle
                   />
diff --git a/bigbluebutton-html5/imports/ui/services/audio-manager/index.js b/bigbluebutton-html5/imports/ui/services/audio-manager/index.js
index 00f0710ab57f3c86217b9d98c986bda84b60976a..69b64724008047a9476d586d194a7dbed06878c0 100755
--- a/bigbluebutton-html5/imports/ui/services/audio-manager/index.js
+++ b/bigbluebutton-html5/imports/ui/services/audio-manager/index.js
@@ -58,6 +58,8 @@ class AudioManager {
     this.translatorSpeechEvents = null;
 
     this.$translatorSpeechDetectionThresholdChanged = new BehaviorSubject(TRANSLATOR_SPEECH_DETECTION_THRESHOLD)
+    this.$translatorSpeakingChanged = new BehaviorSubject(false)
+
     this.defineProperties({
       isMuted: false,
       isConnected: false,
@@ -95,6 +97,7 @@ class AudioManager {
         this.translatorSpeechEvents.setThreshold(val);
       }
     });
+
   }
 
   init(userData, audioEventHandler) {
@@ -844,22 +847,21 @@ class AudioManager {
         this.translatorStream = inputStream
         this.translatorSpeechEvents = hark(inputStream, speechEventsOptions);
         this.translatorSpeechEvents.on('speaking', () => {
-          console.log("Speaking")
+          this.$translatorSpeakingChanged.next(true);
           Meeting.changeTranslatorSpeackState(languageExtension, true);
         });
 
         this.translatorSpeechEvents.on('volume_change', () => {
           const translatorIsSpeaking = this.translatorSpeechEvents.speaking;
           if (translatorIsSpeaking && (!this.translatorSpeechEvents.lastTimestamp || Date.now() - this.translatorSpeechEvents.lastTimestamp > 2000)) {
-            console.log("Check is translator speaking");
             this.translatorSpeechEvents.lastTimestamp = Date.now();
             Meeting.changeTranslatorSpeackState(languageExtension, translatorIsSpeaking);
           }
         });
 
         this.translatorSpeechEvents.on('stopped_speaking', () => {
+          this.$translatorSpeakingChanged.next(false);
           Meeting.changeTranslatorSpeackState(languageExtension, false);
-          console.log("stopped speaking")
         });
 
         const callOptions = {