Dark Mode

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Jan 7, 2024. It is now read-only.

iXab3r/MicSwitch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

216 Commits

Repository files navigation

Intro

There are dozens of different audio chat apps like Discord, TeamSpeak, Ventrilo, Skype, in-game audio chats, etc. And all of them have DIFFERENT ways of handling push-to-talk and always-on microphone functionality. I bet many of you know how distracting it could be when someone forgets to turn off a microphone. I will try to explain what I mean using a feature matrix.

App Microphone status overlay Keyboard support Mouse buttons support Audio notification
MicSwitch
Discord In-game only
TeamSpeak
Ventrilo Has a bug dating 2012
Skype Hard-coded Ctrl+M

MicSwitch allows you to mute/unmute your system microphone using a predefined system-wide hotkey which will affect any program that uses microphone (no more heavy breathing during Skype conferences, hooray!) Also it supports configurable mute/unmute sounds(similar to TeamSpeak/Ventrilo) and a configurable overlay with scaling/transparency support. All these features allow you to seamlessly switch between chat apps and use THE SAME input system with overlay and notifications support.

Features / Bugfixes priority (click to vote or post feature/bug request)

Installation

  • You can download the latest version of installer here - download.
  • After initial installation application will periodically check Github for updates

Features

  • Multiple microphones support (useful for streamers) - ALL microphones in your system could be muted/unmuted by a single key press
  • System-wide hotkeys (supports mouse XButtons)
  • Always-on-top configurable (scale, transparency) Overlay - could be disable if not needed
  • Mute/unmute audio notification (with custom audio files support)
  • Customizable tray and overlay icons
  • Multiple hotkeys support
  • Auto-startup (could be Minimized by default)
  • Three Audio modes: Push-to-talk, Push-to-mute and Toggle mute
  • Overlay visibility could be linked to microphone state, i.e. it will be shown only when Muted/Unmuted
  • Auto-updates via Github

Media

Overlay with configurable size/opacity

Configurable Audio notification when microphone is muted/unmuted

Customizable overlay/tray icons

Auto-update via Github

How to build application

  • I am extensively using git-submodules so you may have to run extra commands (git submodule update) if your git-client does not fully support this tech. I would highly recommend to use Git Extensions which is awesome, free and open-source and makes submodules integration seamless
  • The main "catch-up-moment" is that you need to run InitSymlinks.cmd before building an application - this is due to the fact that git symlinks are not supported on some older versions of Windows and I am using them to create links to submodules
  • I am usually using Jetbrains Rider so there MAY be some issues if you are using Microsoft Visual Studio, although I am trying to keep things compatible

Build from command line

  1. git clone https://github.com/iXab3r/MicSwitch.git
  2. cd MicSwitch
  3. remove submodule DeploymentTools - MicSwitch's installer built and oublished as a part of another project and it's not included into this repository
  4. git submodule init
  5. git submodule update --checkout
  6. InitSymlinks.cmd
  7. dotnet build Sources/MicSwitch

That's it. Portable version will be in bin folder. Framework-dependent version

Linux/MacOS Support ?

Probably not going to happen in the nearest future because in it's core MicSwitch is a WPF application, technology that Microsoft does not want to port at all. Migrating to something cross-platform like Avalon, Xamarin is an option, but not a cheap one, unfortunately I don't have so much spare time to do it now.

Meanwhile you could take a look at

MacOS

MuteKey (thanks to benpeter for finding it): https://apps.apple.com/us/app/mutekey/id1509590766?mt=12

Linux

???

Contacts

About

MicSwitch is a tool which allows you to mute/unmute your microphone using a predefined hotkey

Topics

Resources

Readme

Stars

Watchers

Forks