Skip to content

Push-to-Talk: Seamless Integration with Wayland, X11, PulseAudio & PipeWire for linux ๐ŸŽค

License

Notifications You must be signed in to change notification settings

cyrinux/push2talk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Push-to-Talk Logo

Push-to-Talk: Seamless Integration with Wayland, X11, PulseAudio & PipeWire

๐Ÿฅ… Quick Start

Upon initialization, the application mutes all microphones. To unmute, press Control_Left+Space, and release to mute again.

  • Suspend/resume functionality available via SIGUSR1.

โš ๏ธ Prerequisites

Membership in the input or plugdev group may be necessary. Check /dev/input/* for your specific distribution.

sudo usermod -a -G plugdev $USER
sudo usermod -a -G input $USER

๐Ÿ“ฆ Installation Methods

๐ŸŽค Usage

  • Start push2talk binary.
  • Systemd unit provided: systemctl --user start push2talk.service.

๐ŸŽค Advanced Configuration

  • Trace mode for key and source device identification: env RUST_LOG=trace push2talk.
  • Custom keybinds via environment variables: env PUSH2TALK_KEYBIND="Control_L,Space" push2talk.
  • Debug logging: RUST_LOG=debug push2talk.
  • Specify a particular audio source: env PUSH2TALK_SOURCE="OpenComm by Shokz" push2talk.
  • Systemd unit provided: systemctl --user start push2talk.service.

๐Ÿ˜… Additional Information

  • Excludes Easy Effects sources to prevent unintentional "push-to-listen" scenarios.

๐Ÿ‘ฅ How to Contribute

Contributions are highly welcome.

๐Ÿ’‘ Acknowledgments

Made with love by @cyrinux and @maximbaz.