当前位置: 首页>>技术教程>>正文


sound – 使麦克风静音和取消静音的命令

, , ,

问题描述

在在线语音/视频对话期间,我想将麦克风静音/取消静音,而不必每次都执行所有这些步骤:

  • 声音指示器、声音首选项、选择输入、静音或取消静音麦克风。

我正在寻找:

  • 可以从命令行执行此操作的应用程序,

  • 我可以分配一个可以使麦克风静音/取消静音的键盘快捷键的方法

最佳答案

系统首选项,然后键盘,然后单击快捷方式,然后单击自定义快捷方式:

点击添加

填写:

Toggle microphone

amixer set Capture toggle

对于 USB 网络摄像头,您需要选择设备 (-c 1) 或其他号码。

amixer -c 1 sset Mic toggle

单击应用,然后将新密钥与此命令关联(例如 Pause/Break 密钥)。

次佳答案

您可以将麦克风静音

amixer set Capture nocap

并取消麦克风静音

amixer set Capture cap

第三种答案

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

第四种答案

我在 USB 网络摄像头/麦克风和内部麦克风之间切换,其他解决方案通常适用于 “default” 设备,这通常不是我正在使用的设备,所以我写了这个来使所有麦克风静音

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

第五种答案

pacmd 是 PulseAudio(最近版本中使用的声音子系统)的命令行界面。我不知道您需要的确切命令是什么,但我认为您想使用 set-sink-input-mute 函数。

pacmd 在没有指令的情况下运行时是交互式的,因此您有很好的机会尝试使用它并将其转换为 one-line 功能以切换静音。

第六种答案

gnome-shell 扩展 nothing to say 可以从 its extensions.gnome.org page 安装,提供麦克风图标、鼠标和键盘控制,以及 walkie-talkie 样式 push-to-talk。

第七种答案

只需使用此命令静音/取消静音:

amixer -D pulse sset Capture toggle

您还可以根据 vladimirich answer 对同一问题添加通知以确保其打开或关闭

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

受 Mark Rooney 用于静音/取消静音的 comment 的启发。

第八种答案

在pulseaudio中切换默认麦克风的静音:

  1. 确保您有 pacmd(来自 pulseaudio-utils 包)和 notify-send(来自 libnotify-bin)。

  2. 使用这个脚本:

#!/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;}'

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/12049.html,未经允许,请勿转载。