如何制作两分钟静音按钮?


3

替代措辞:是否有命令行命令允许我将扬声器静音,并在以后取消静音。理想情况下具有淡入的能力。如果我知道如何做到这一点,我可以弄清楚如何将它绑定到键盘按钮。(我知道我对bash脚本的看法,但关于linux音频的知之甚少。)

问题的背景是,当电话响铃时,我经常听网络电台(现场或录音),所以我在键盘上静音。经过短暂的通话之后,我全神贯注于工作,只有在20或30分钟后才意识到一切都很安静,而且一直在播放,但却是默默地。所以我的想法是我按下了两分钟的静音按钮,然后两分钟后它会回来; 如果我还在打电话,我会再次打它(或者正确地停止它)。

当一个讨厌的广告,预告片或交通公告出现时,这也是完美的:-)

更新:建议的答案非常有效。以下是我如何将它连接到Ubuntu 10.04 / Gnome上的特殊键:

  1. 创建了一个名为/ usr / local / bin / mute_for_120_seconds的文件,其中基本上有以下答案。可执行。
  2. 系统| 偏好| 键盘快捷键
  3. 单击添加,名称:“mute_for_120_seconds”,命令:“/ usr / local / bin / mute_for_120_seconds”
  4. 它出现在自定义快捷方式下。单击它的快捷方式列,然后按我要使用的组合键。
  5. 关闭键盘快捷方式对话框并测试密钥。

(我的戴尔笔记本有一个专用的静音键。所以,我已将AudioMute设置为ctrl + XF86AudioMute,然后设置我的mute_for_120_seconds脚本以使用静音键运行。)

详细信息:Ubuntu 10.04。声音首选项只告诉我“内部音频,1输出/ 1输入,模拟立体声双工”Audacity的帮助|音频设备信息有更多的说法,这里是一个摘录:

==============================
Default capture device number: 8
Default playback device number: 8
==============================
...
==============================
Device ID: 8
Device name: ALSA: default
Input channels: 32
Output channels: 32
Low Input Latency: 0.011610
Low Output Latency: 0.011610
High Input Latency: 0.046440
High Output Latency: 0.046440
Supported Rates:
    8000
    9600
    11025
    12000
    15000
    16000
    22050
    24000
    32000
    44100
    48000
    88200
    96000
    192000
...

Answers:


3

amixer 是ALSA声卡驱动程序的命令行混音器,这使您可以轻松编写静音脚本:

!#/bin/sh
amixer set Master mute
sleep 120
amixer set Master unmute

该命令行混音器在alsa-utils包中提供。


1
现在将电话线重新插入调制解调器(自从获得宽带后再也不再使用)并将其配置为触发静音功能。
Chris Nava

1
你的下一个练习是淡出淡出部分。;-)
Keith

0

这是另一种方式:

amixer set Master mute 
echo amixer set Master unmute | at now + 2 minutes

或者如果您使用xmms2更好:

nyxmms2 pause
echo nyxmms2 play | at now + 2 minutes
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.