Code Monkey home page Code Monkey logo

osx-push-to-talk's Introduction

OSX PushToTalk

OSX PushToTalk mutes and unmutes the microphone via a keypress. This globally works for multiple video conference solutions (Google meet, Zoom, Skype, etc).

usage animation

Features:

  • Hold a hotkey (default to Right-⌥) to unmute and release to mute
  • Double tap the hotkey to disable the app. It will unmute until the hotkey is pressed again
  • Configurable hotkey
  • Configurable device
  • Tested with Mojave & Catalina

The icon indicator will become red mic if the microphone is live (NOT muted).

Installation

If you run into issues when installing, ensure you have opened XCode at least once and installed the "additional required components."

HomeBrew

$ brew install yulrizka/tap/pushtotalk

or

$ brew tap yulrizka/tap # to update the tap repo
$ brew install pushtotalk

Read the Caveats

==> Caveats
The application was only built in "/usr/local/opt/pushtotalk/PushToTalk.app"

To make it available in the Application folder, create a symlink with:

    ln -s "/usr/local/opt/pushtotalk/PushToTalk.app" "/Applications/PushToTalk.app"

Build from source

$ git clone [email protected]:yulrizka/osx-push-to-talk.git
$ cd osx-push-to-talk
$ xcodebuild -target "PushToTalk" -configuration Release

This requires you to have Xcode installed. Once The building process is finished, you will have the application in build/Release/ folder. Move the PushToTalk.app to Applications directory.

Troubleshooting

The app is from an unidentified developer

The main reason the app is not signed is due to the costly yearly subscription of the Apple developer program. I do not obtain it my self since I am not mainly an Apple developer.

To enable an exception for this app, follow https://support.apple.com/kb/PH11436?locale=en_US

If you want to be sure, just compile the project, Archive & export PushToTalk.app

Uninstall

Delete PushToTalk.app in Applications directory

Acknowledgement

osx-push-to-talk's People

Contributors

duoi avatar jeremyellison avatar keatontaylor avatar khodges42 avatar nielubowicz avatar qoomon avatar yulrizka avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

osx-push-to-talk's Issues

[Feature Request] Floating Indicator

Love the app, a life saver since MicroSoft Teams lacks this feature and since we sometimes have multiple participants in the same office.

But for the people who don’t see the menu bar, a floating indicator would be helpful, I think.

Include compiled app in releases again

Up through v0.1.2, releases included a .dmg with an unsigned copy of the app. This was convenient because it was possible to install the app without first installing all of XCode and compiling it (albeit with some poking at system settings to get MacOS to be OK with it).

Can you please include the app in the releases again?

I see this was discussed in #26, which @qoomon resolved with a link to the build artifacts; however, the artifact has expired (looks like the maximum retention period is 90 days) and is no longer accessible so this seems unsuitable as a general solution.

BTW, thanks for making this app; it's been a great boon during these times of working from home.

Push to talk does not work

This does not seem to work on Google Meet, I have not tried it with other programs. Any thoughts? I am currently running on 11.2.3 macOS Big Sur with an external microphone.

Dim system audio when engaged

Hi, this is a feature request from a user. I'm an audio engineer, and I have remote clients use OSX Push to Talk so that they can leave the audio input open to a high quality audio stream, which unlike Meet or Zoom does not have an algorithm to cancel the audio that I am sending to them. In order to avoid feedback, the client has to use headphones, which is inconvenient on several levels.

The solution to the resultant feedback loop is to have their system audio "dim," i.e. reduce by a user-adjustable amount, when their push-to-talk is engaged. In the pro audio world, every console has a Talkback button, and every Talkback button has an associated circuit to dim the control room speakers. This would accomplish the same thing for anyone, on any laptop, anywhere. I have not found any software product (paid or free) that can accomplish this simple task.

Use CapsLock when it's disabled in system preferences?

Hi and thanks for this very handy app :)

I'd like to be able to configure it to use CapsLock even when it's disabled in the system preferences. Right now this app doesn't react to CapsLock when it's set to "No Action" in system preferences, but I know it's possible since I'm doing this with discord. Discord is requesting Input Monitoring permissions to do it. Is this something that can be added to this app? It would be very handy to just have a system-wide push-to-talk on a button that doesn't occupy any other action.

Use Capslock as HotKey

Is it possible to add support for using Capslock as the HotKey? Or am I misunderstanding the UI and is this already possible?

Status of the icon for automation

Hi,

I hide my menubar and use Touch Bar to show the mic status.

I use MTMR app for Touch Bar automation, I'm not able to detect the mic status from an AppleScript if muted by push-to-talk app. Is it possible to query the current status on the icon? probably, a file to indicate if the mic is muted?

Any help or suggestions would help?

Brew install requires Xcode

As far as I understand the installation instructions, installation of PushToTalk via brew should not require Xcode. However, this is not the case:

$ brew tap yulrizka/tap
$ brew install pushtotalk
==> Installing pushtotalk from yulrizka/tap
pushtotalk: A full installation of Xcode.app is required to compile
this software. Installing just the Command Line Tools is not sufficient.

Xcode can be installed from the App Store.
Error: An unsatisfied requirement failed this build.

Would be great if there was a way to install PushToTalk without Xcode!

Double tap lock/unlock

Sometimes it's useful to keep it pushed while I can continue to do my work.
Could you add such functionality ?

Failed to install

Hello,

i have this error when i try to install it with brew :

MacOS Catalina version 10.15.7 (19H2)

❯ brew install yulrizka/tap/pushtotalk
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/cask).
==> Updated Casks
macpilot

==> Installing pushtotalk from yulrizka/tap
==> Downloading https://github.com/yulrizka/osx-push-to-talk/archive/v0.1.5.tar.gz
Already downloaded: /Users/jmenan/Library/Caches/Homebrew/downloads/1a5ea18d0cc9c93bae9a5b6ea97a1603913bf305b9fc0560c8365826391c3921--osx-push-to-talk-0.1.5.tar.gz
==> xcodebuild -project PushToTalk.xcodeproj CODE_SIGN_IDENTITY=- -configuration Release SYMROOT=build
Last 15 lines from /Users/jmenan/Library/Logs/Homebrew/pushtotalk/01.xcodebuild:
	15  ibtoold                             0x0000000106b8ede5 IBIDEInitialize + 52
	16  ibtoold                             0x0000000106b8dfdf main + 1622
	17  libdyld.dylib                       0x00007fff6baf6cc9 start + 1
	18  ???                                 0x0000000000000015 0x0 + 21
)
libc++abi.dylib: terminating with uncaught exception of type NSException
Command CompileXIB failed with a nonzero exit code

** BUILD FAILED **


The following build commands failed:
	CompileAssetCatalog /tmp/pushtotalk-20201103-24209-3s0kkl/osx-push-to-talk-0.1.5/build/Release/PushToTalk.app/Contents/Resources /tmp/pushtotalk-20201103-24209-3s0kkl/osx-push-to-talk-0.1.5/PushToTalk/Images.xcassets
	CompileXIB /tmp/pushtotalk-20201103-24209-3s0kkl/osx-push-to-talk-0.1.5/PushToTalk/Base.lproj/MainMenu.xib
(2 failures)

If reporting this issue please do so at (not Homebrew/brew or Homebrew/core):
  https://github.com/yulrizka/homebrew-tap/issues

Feature request: watch for apps opening the mic programmatically.

Some apps (e.g. vidyo, skype) seem to open the mic programmatically when opening a stream.

Would be really nice to add a feature that watches for this. Mute my mic (not open source afaik) has a force mute feature which fixes this problem as it ensure the mic stays muted when in the muted state and it re-mutes if it detects an app changing the mic state. Not how mutemymic does this - whether they just poll or there's a way to actually see an event.

Interestingly the muted state in the Audio Midi Setup app doesn't appear to change but you can see audio level on the mic input prefs screen.

As a workaround you can hit the ptt key once and that re-mutes the mic - but having this work by default or be an option would be handy.

Cannot install: SHA256 mismatch

I am unable to install this, because I get a mismatch error.

brew install pushtotalk
==> Fetching yulrizka/tap/pushtotalk
==> Downloading https://github.com/yulrizka/osx-push-to-talk/archive/v0.1.5.tar.gz
==> Downloading from https://codeload.github.com/yulrizka/osx-push-to-talk/tar.gz/refs/tags/v0.1.5
######################################################################## 100.0%
Error: pushtotalk: SHA256 mismatch
Expected: dd0c639c1ba131c8b700d7fbf6475ed564be3b849e23990f39309df7b2c7e170
  Actual: 975dcded533bd31216f8b50dbad613bf0c0acebf8d4f94f1e413c2183f04de1f

Audio output is muted when mic is muted when using airpods

When I use push-to-talk on my airpod mic, the audio out stream is also interrupted.

Installed through macports v0.1.5
Computer Info:
Model Name: MacBook Pro
Model Identifier: MacBookPro18,1
Chip: Apple M1 Pro
Total Number of Cores: 10 (8 performance and 2 efficiency)
Memory: 16 GB
Mac OS Monterey 12.0 (21A344)
Airpods Pro

Remember changed hotkey

The active hotkey can be changed from the app's menu while it's running, but it always reverts back to hotkey 61 when the app is relaunched. Can the custom hotkey be stored as a persistent configuration somewhere please?

Systembar Icon Design

The new icons a so much better the the last ones, so thanks a lot.

I have to minor ideas for improvement

  • Grey out the icon if mic is disabled
  • Shrink the icon size a little, it is to big in comparison with other system bar icons, just a couple of pixels

Thanksagain for this great app, I use it every day.

Support multiple microphones

For multi-devices scenarios (e.g., interviews or calls with two USB microphones connected to the same Mac) it would be great to have the ability to use PTT on multiple devices, with separate shortcuts for each device

sometimes the icon is white but microphone is active

i do not know how to replicate this at this time but i have experienced this at this time.

im not too concerned about when the button is being pressed and the icon is white, i am more concerned of the push to talk being disabled by hitting the key twice and having the icon be white.

Black and white icons

The icon stands out from a general style of macos icons.
It attracts a lot of attention and I have to quit PushToTalk every time I'm not using it.
image
I'm not a designer but I can try to draw different icons.
Will you merge it if I do it and you like it?

Hotkey Issues

I can easily change the hotkey. I However, I noticed that if I hold the hotkey the microphone is unmuted, but when I release it the microphone is still unmuted. I tested it on Online Mic Test and with a friend.

Sign application / release to Mac App Store

Hi,

I have an active Apple Developer Account and I would be willing to use it to sign this application and/or even release it to the Mac App Store (for free). What would your opinion about this, @yulrizka? Is there a way that I can sign the application without giving you access to my account/keys?

I also started modifying it slightly to my needs about a month ago, but haven't gotten around to actually creating a proper fork or even submitting a PR. I see that there has been a new release just recently which includes some of the changes I did as well, so I will go from there. I also added something like #8, except that I used triple tap instead (we could make it configurable).

Edit: I could use something like https://github.com/wei/pull to automatically update my fork from your repo and set up an automated build that signs the application with my developer account.

[Feature Request] React on mic gets activated from 3rd party app

Problem

MS Teams seams so enable mic on it own, however system bar icon stays white.
Current workaround is to hit the PushToTalk hotkey once after each MS Teams call started.

Feature Request

Would be great if PushToTalk displays the right mic state all the time by checking periodically for current mic state or somehow register a listener on mic state change events.

Or maybe enforce PushToTalk mic state.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.