ter*_*don 21 gnome desktop-environment audio cinnamon
在最近更新了我的LMDE 之后,gnome-screenshot每次截取屏幕截图时,该工具都会开始发出恼人的相机快门噪音。这既烦人又令人吃惊(特别是如果您在截屏时碰巧戴着耳机)。
我检查了mangnome-screenshot`的页面,但没有相关选项。如何进行静音截图?
ter*_*don 16
我在这里找到了解决方案。播放的声音是/usr/share/sounds/freedesktop/stereo/camera-shutter.oga。因此,只需重命名该文件即可阻止其播放:
sudo mv /usr/share/sounds/freedesktop/stereo/camera-shutter.oga \
/usr/share/sounds/freedesktop/stereo/damn-camera-shutter.oga
Run Code Online (Sandbox Code Playgroud)
就是这样,下次截图时,它会默默地完成。
don*_*sti 14
另一个解决方案1有一些不便:
- 它需要 root 访问权限
- 这是一个全局更改,因此会影响所有用户
- 升级会sound-theme-freedesktop恢复文件
作为记录,正确的方法(并避免上述所有情况)是通过自定义声音主题禁用2 使用的默认声音文件gnome-screenshot(文件名screen-capture.oga对应于screen-capture事件 - 硬编码在gnome-settings-daemon和 中gnome-screenshot)。
创建自定义主题目录:
mkdir -p ~/.local/share/sounds/__custom
Run Code Online (Sandbox Code Playgroud)
创建.disabled文件:
touch ~/.local/share/sounds/__custom/screen-capture.disabled
Run Code Online (Sandbox Code Playgroud)
添加index.theme:
cat << 'EOF' > ~/.local/share/sounds/__custom/index.theme
[Sound Theme]
Name=__custom
Inherits=freedesktop
Directories=.
EOF
Run Code Online (Sandbox Code Playgroud)
设置__custom为默认主题名称:
gsettings set org.gnome.desktop.sound theme-name '__custom'
Run Code Online (Sandbox Code Playgroud)
或者,如果您使用的是 Cinnamon:
gsettings set org.cinnamon.desktop.sound theme-name '__custom'
Run Code Online (Sandbox Code Playgroud)
并享受沉默......
1:是的,我知道这实际上是我的解决方案,但是在将其发布到 Arch 论坛时我只是懒惰...
2:伪文件格式“.disabled”用于禁用从另一个主题继承的主题中的声音。如果声音查找算法检测到带有后缀“.disabled”的文件,它将立即终止查找逻辑并认为声音不可用。所有带有“.disabled”后缀的文件的长度都应该为零。
重命名快门声音文件是可以的,但如果您没有系统的根访问权限,则可能无法工作。这是另一种方法:
#!/bin/bash
volume=$(amixer sget Master | awk -F '[],[,%]' '/%/{print $2 }')
amixer sset Master 0
gnome-screenshot
amixer sset Master "$volume"%
Run Code Online (Sandbox Code Playgroud)
这个脚本的作用是记住音量百分比,暂时将音量设置为0,截屏,一旦gnome-screenshot进程退出,音量就会恢复到原来的百分比。
这种方法的优点是灵活并且可以根据您的需求进行定制。该脚本可以绑定到 PrntScr 按钮或自定义快捷方式。
在 Ubuntu 16.04 LTS 上测试