在电脑上玩游戏时,我的孩子们(4和5)大声叫嚷。我找到了一个有效的治疗方法。当我听到大声的声音时,我就进入游戏电脑,然后: chvt 3; sleep 15; chvt 7 这将在Linux上关闭屏幕15秒。我告诉他们电脑不喜欢大声的噪音。他们完全相信这一点,并请求电脑宽恕。他们变得更安静,但没有达到我会很高兴的水平,所以我需要继续这个教育过程。但是,我并不总是手动执行此操作。 是否可以自动执行此操作?麦克风连接到盒子上。如果响度水平超过某个阈值,那么我想运行一个命令。 答案 sox从SoX使用来分析短音频样本: sox -t .wav "|arecord -d 2" -n stat 随着-t .wav我们指定我们处理的wav类型,"|arecord -d 2"执行arecord 两秒钟程序,-n输出到空文件,并与stat我们指定我们想要的统计数据。 这个命令的输出,在我的系统上有一些背景语音,是: Recording WAVE 'stdin' : Unsigned 8 bit, Rate 8000 Hz, Mono Samples read: 16000 Length (seconds): 2.000000 Scaled by: 2147483647.0 Maximum amplitude: 0.312500 Minimum amplitude: -0.421875 Midline amplitude: -0.054688 Mean norm: