Commande pour désactiver et réactiver un microphone

23

Pendant les conversations vocales / vidéo en ligne, je voudrais désactiver / réactiver le microphone sans avoir à passer par toutes ces étapes à chaque fois:

  • Indicateur de son, Préférences sonores, Sélectionner l'entrée, Désactiver ou réactiver le microphone.

Je recherche soit:

  • une application qui peut le faire à partir de la ligne de commande,
  • une façon dont je peux attribuer un raccourci clavier qui peut activer / désactiver le microphone
Lucian Adrian Grijincu
la source
1
Si vous utilisez Empathy pour le chat vocal, il dispose d'un bouton de sourdine intégré (qui fonctionne avec Google Talk au moins, Skype n'est pas encore pris en charge).
janvier 2010
Je cherche quelque chose qui peut être fait pour exécuter un raccourci, similaire au bouton bascule du volume principal de l'ordinateur portable.
Lucian Adrian Grijincu

Réponses:

32

Aller à

Préférences Système puis Clavier et cliquez sur Raccourcis puis Raccourcis personnalisés:

Cliquez sur Ajouter

Remplir:

Toggle microphone

et

amixer set Capture toggle

Pour les webcams USB, vous devez choisir un appareil (-c 1), ou peut-être un autre numéro.

amixer -c 1 sset Mic toggle

Cliquez sur Appliquer, puis associez une nouvelle clé à cette commande (par exemple, la Pause/Breakclé).

Lucian Adrian Grijincu
la source
Fonctionne-t-il avec les versions récentes? Merci.
Diego V
1
Ça marche; merci à Lucian. J'ai une touche "Audio mute" sur mon ordinateur portable, je l'ai mappée sur shift + Audio mute, ce qui est très facile à retenir :)
Pierre-Antoine
La commande fonctionne amixer set Mic toggle(pas Capture) pour moi dans le terminal, mais aucun raccourci clavier attribué ne semble réellement s'exécuter. J'ai essayé ctrl+Audio Mutemais aussi ctrl+M(capturé par des touches du clavier)
Jason Kleban
Confirmé, cela fonctionne également avec Ubuntu 16.10.
Kushal
Sur MATE, les menus pour ajouter le raccourci clavier sont un peu différents, mais cela fonctionne de la même manière. Merci!
Stephen Angelico
9

Vous pouvez désactiver le microphone avec

amixer set Capture nocap

et réactivez le microphone avec

amixer set Capture cap
Hickersson
la source
1
qui a très bien fonctionné avec Raspberry Pi, sauf que vous remplacez Mic par Capture
WhiskerBiscuit
6

pacmdest l'interface de ligne de commande de PulseAudio (le sous-système audio utilisé dans les versions récentes). Je ne sais pas quelle est la commande exacte dont vous auriez besoin mais je pense que vous voudriez jouer avec la set-sink-input-mutefonction.

pacmd est interactif lorsqu'il est exécuté sans instructions, vous avez donc une bonne occasion de jouer avec et de le convertir en une fonction d'une ligne pour basculer la sourdine.

Oli
la source
pacmd n'est interactif que si vous ne lui donnez aucune commande. J'avais l'habitude pacmd list-sourcesd'obtenir une liste d'entrées et de sorties. Sous l'index 2, j'avais un écart d'entrée. (basé sur son nom) Ensuite, vous pouvez exécuter pacmd set-source-mute 2 1pour couper le son. Le dernier paramètre est un booléen pour l'état muet. 0 ou faux pour non muet et 1 ou vrai pour muet.
Vitaly
4
amixer set Capture toggle && amixer get Capture | grep '\[off\]' && notify-send "MIC switched OFF" || notify-send "MIC switched ON"
Vladimirich
la source
J'aime la façon dont vous combinez grep et notifications: Super Neat =)
Musa Al-hassy
3

L'extension gnome-shell rien à dire , qui peut être installée à partir de sa page extensions.gnome.org , fournit une icône de microphone, un contrôle de la souris et du clavier et un push-to-talk de style talkie-walkie.

wouter bolsterlee
la source
3

Pour activer / désactiver le microphone par défaut dans pulseaudio:

  1. Assurez-vous que vous en avez pacmd(du pulseaudio-utilspaquet) et notify-send(du libnotify-bin).
  2. Utilisez ce script:
#!/bin/sh

pacmd list-sources | awk '\
BEGIN {default_found=0;}

/^[\t ]*\*/ {default_found=1;}

/^[\t ]*name:/ {
    if (default_found) {
        name=$2;
        gsub("[<>]", "", name);
    }
}

/^[\t ]*muted:/ {
    if (default_found) {
        if ($2=="yes") {
            mute=0;
            icon="microphone-sensitivity-medium";
            status="unmuted"
        } else {
            mute=1;
            icon="microphone-sensitivity-muted";
            status="muted"
        }
        system("pacmd set-source-mute " name " " mute);
        system("notify-send --expire-time 1000 --icon " icon " Microphone: " status);
        exit;
    }
}

/^[\t ]*index:/{if (default_found) exit;}'
Aleksey Alekseev
la source
3

Activez / désactivez simplement le son avec cette commande:

amixer -D pulse sset Capture toggle

Vous pouvez également ajouter une notification pour vous assurer qu'elle est activée ou désactivée, selon la réponse de Vladimirich à la même question

amixer -D pulse sset Capture toggle && amixer get Capture | grep '\[off\]' && notify-send "MIC switched OFF" || notify-send "MIC switched ON"

Inspiré par le commentaire de Mark Rooney pour couper / réactiver le son.

kujaw
la source
2
Cela fonctionne réellement pour moi sur Ubuntu 16.04. -qpeut être ignoré.
gronostaj
1
bindsym XF86AudioMicMute exec --no-startup-id amixer -D pulse sset Capture togglepouri3wm
Kristof Tak
Cette commande fonctionne pour moi dans Pop_OS! 19.10 (qui est basé sur Ubuntu 19.10). On peut explicitement désactiver la capture du microphone avec la commande amixer --device pulse sset Capture nocapet régler le volume de capture à 0% simultanément avec la commande amixer --device pulse sset Capture nocap 0%.
Patrick Dark
1

Vous pouvez désactiver le son avec:

/usr/bin/amixer -q -c 0 sset 'Master',0 mute

Réactiver le son:

/usr/bin/amixer -q -c 0 sset 'Master',0 unmute

Il vous suffit de remplacer «Master» par le nom de mixeur approprié, sur le terminal, utilisez «amixer» pour obtenir une liste des périphériques de mixage.

À propos de la définition du raccourci clavier, vérifiez les réponses pour savoir comment trouver la commande liée à un raccourci clavier donné?

João Pinto
la source
Ceux-ci coupent le son de mes haut-parleurs, pas le microphone, mais merci.
Lucian Adrian Grijincu
Il vous suffit de remplacer «Master» par le nom de mixeur approprié, sur le terminal, utilisez «amixer» pour obtenir une liste des périphériques de mixage.
João Pinto
Cela semble fonctionner: # amixer set Toggle Capture
Lucian Adrian Grijincu
Pouvez-vous modifier votre réponse (je n'ai pas le karma nécessaire) pour inclure cette réponse, donc je l'accepterai?
Lucian Adrian Grijincu
1

Compléter la réponse de Lucian Adrian Grijincu et vladimirich

Ajoutez l'affichage d'un message en activant / désactivant le microphone.

Exécutez plusieurs commandes sur la commande de raccourci:

$ sh -c "amixer set Capture toggle ; amixer get Capture | \
     grep '\[off\]' && notify-send 'MIC switched OFF' || notify-send 'MIC switched ON'"
José Roberto
la source
0

Basé sur la réponse ci-dessus /ubuntu//a/337662/106182

J'aime créer mes propres terminalraccourcis stupides. Donc, pour configurer m= muet; mm= réactiver

J'ai ajouté ceci à ./.bashrc

# ~/.bashrc
# 
alias m="amixer set Capture nocap"
alias mm="amixer set Capture cap"

mise à jour

assez intéressant, hier j'ai réactivé le démarrage automatique de "Screen Locker (Lancer le programme de verrouillage d'écran) dans le menu> sessions and startup > Application Autostartet maintenant mon bouton de mise en sourdine du matériel commence à fonctionner (après le redémarrage) Je ne sais pas pourquoi (XFCE Xubuntu 18.08)

Je garde toujours ces raccourcis terminaux mais je voulais juste souligner

équivalent8
la source
0

Je bascule entre une webcam / micro USB et mon micro interne et les autres solutions fonctionnent généralement sur le périphérique "par défaut" qui n'est souvent pas le périphérique que j'utilise activement, j'ai donc écrit ceci pour couper tous les microphones

pacmd list-sources | \
        grep -oP 'index: \d' | \
        awk '{ print $2 }' | \
        xargs -I{} pactl set-source-mute {} toggle
blockloop
la source