cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2275
Views
5
Helpful
2
Replies

How to detect if microphone is currently muted?

How can an external program tell whether or not Webex Meetings microphone state is muted or live?  This is on Windows 10. My use case: The red muted mic icon is WAY too subtle for me.  I have a big red ON AIR lighted sign hanging on my wall that I can control from my PC.  I want to turn the sign on when Webex has the mic live. This not only helps me, it helps family members to know when they should be quiet when they come into my home office.

 

Things I've tried:

  • Detecting the system mic state via the registry.  No good, when Webex is muted it leaves the mic open so it can monitor audio and present the "You need to unmute" message. The mic doesn't get muted as far as the OS is concerned.
  • Toggling the mic on/off at the OS level rather than the application level.  I can set up a hotkey to turn the mic on and off via the registry, and just leave the Webex application unmuted all the time.  The drawbacks are that I lose the ability to control the mic by other means (such as the mute control on my headset) and I don't appear muted to the other meeting participants.
  • Detecting the state of the "Mute Me" and "Unmute Me" items in the Participant menu.  In theory this would work well, because exactly one of those is greyed out at any given time. In practice, the Webex program is using its own UI toolkit rather than the standard Microsoft controls so I don't have any good way to examine the menu item state.
  • Detecting the mic icon in the window titlebar.  Again, a nonstandard UI means I can't easily get this info from the OS. I could do an image search for the icon itself, but that doesn't work in fullscreen since the titlebar is hidden.
  • Image processing the video window looking for the red "Muted" icon.  This is super cheesy but it kind of works.  The drawbacks are that it's pretty processor-intensive, and the icon is semi-transparent so it's really difficult to match the colors against various backgrounds when it's overlaid on a speaker's video feed.  I've had to de-tune the image match so much that anyone wearing a red shirt triggers it as if the red "Muted" icon was present.

So, is there any other way I can programmatically detect whether Webex Meetings has the mic live or muted?

2 Replies 2

An update to this.  Still having a hard time.  The most reliable way to get the mic state is to do an image search of the screen for the muted icon.  This is somewhat easier with the current release of Meetings/Teams because the icon is no longer transparent with the video running behind it.  It's now on an opaque bar. But the non-standard UI framework the application uses can make it difficult to identify which window to search.  The controls are implemented in their own OS-level window/pane/container/whatever-you-call-it so the automation tool I use gives me ambiguous results.

 

@Fritz_H: Thanks for the suggestion of a hardware switch.  It's similar to a software solution I had earlier, where I toggled the state of the microphone via the registry, bypassing Webex altogether.  That has two disadvantages: 1) No one else on the meeting can tell that I'm muted.  If someone else is unmuted and noise is coming through, I'm suspected of the bad behavior because my little "muted" icon is off. 2) If the state also gets set to mute in Webex for whatever reason (like, I want to turn on my little "muted" icon so people know that's not *MY* dog barking in the background) the external toggle doesn't re-enable it.  Though it does re-enable my sign, making me think I'm unmuted.

Webex really seems to be trying hard to prevent automation attempts.  They seem to have exactly one end-user use case in mind, and tough luck if you don't conform to that.  You'd think they'd have these features for accessibility reasons if nothing else.

Fritz_H
VIP Alumni
VIP Alumni

How about switching (and reading) the microphone-state in hardware?

some kind of "Switch" or a mixing-desk (like a DJ..) etc.?


This method will allow you to use any VideoCall-Software and still have your "on air" sign-feature since it´s not depending on the Software but only on the audio-hardware you are using.