Skip to content

Instantly share code, notes, and snippets.

@nik-gnomic
Last active September 2, 2024 09:45
Show Gist options
  • Save nik-gnomic/4d62f2c785bdbb843f9e86a24106b801 to your computer and use it in GitHub Desktop.
Save nik-gnomic/4d62f2c785bdbb843f9e86a24106b801 to your computer and use it in GitHub Desktop.
Pulseaudio VOIP Mix
#!/bin/bash
# ~/.local/bin/PulseaudioVoipMix.sh
# reconfigure Pulseaudio for microphone mix with audio playback for VOIP calls and/or recording
### Names of microphone source and headphone sink MUST be edited to match system devices ***
#= use 'pactl list sources' to find correct 'Name' for microphone source
microphone=alsa_input.pci-0000_00_00.0.analog-stereo
## use 'pactl list sinks' to find correct 'Name' for headphone sink
headphone=alsa_output.pci-0000_00_00.0.analog-stereo
# create null sink for mix to voip caller
pactl load-module module-null-sink sink_name=voipmix remix=0
# create microphone loopback to voipmix
pactl load-module module-loopback latency_msec=30 source=$microphone sink=voipmix
# create simultaneous output for audio to voipmix and headphones
pactl load-module module-combine-sink channels=2 slaves=voipmix,$headphone
# set the default source for voip caller to hear voipmix
pactl set-default-source voipmix.monitor
exit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment