Ubuntu 17.10 及更高版本

Ubuntu 17.10 及更高版本

当我按下键盘上的音量增大/减小键时,音量变化太大。如何减小步长以便进行更精细的控制?

答案1

Ubuntu 17.10 及更高版本

值得注意的是,在 Ubuntu 17.10 及更高版本的 GNOME Shell 中,已经有(尽管有些复杂)有点儿支持这一点。

Shift+XF86AudioRaiseVolumeShift+ XF86AudioLowerVolume(通常是键盘上专用的音量增大/减小键)以较小的步长更改音量。

在此处输入图片描述

答案2

Ubuntu 14.04 / 15.04 / 15.10 / 16.04 / 16.10 / 17.04

我终于找到了适合 Trusty、Vivid、Wily、Xenial、Yakkety 和 Zesty 用户的解决方案。我决定在源代码中修复这个问题,而不是使用一堆黑客或脚本。我应用了此补丁(现已损坏)至gnome 设置守护进程安装 gnome-settings-daemonunity-settings-daemon安装 unity-settings-daemon(对补丁做了一些细微的修改)。

我已将软件包上传至 PPA:

ppa:george-edison55/gnome-settings-daemonLaunchpad 徽标单击此处获取有关使用 PPA 的说明。

添加 PPA 后,运行:

sudo apt-get update
sudo apt-get upgrade

安装完成后,您需要重新启动。软件包升级完成后,您可以使用命令dconf手册页图标更改音量增量:

dconf write /org/gnome/settings-daemon/plugins/sound/volume-step 2

(默认值为 6。)

现在,当您按下音量键时,音量将以 2 的增量变化:

在此处输入图片描述

答案3

11.10/12.04

由此错误报告看来音量步进键在 11.10 中消失了,并且(到目前为止)还没有重新出现。

因此,无法通过简单直接的配置更改来减少音量步骤。

链接中的第 18 号帖子提供了一个有趣的解决方法,其中涉及使用alsamixer增量和减量功能以及向桌面发送通知。

然而我无法让它工作 - 因此我对解决方案的看法是基于那篇文章的。

采用此解决方案后,默认音量步长将降低至百分之二。


如何

安装该xbindkeys包(使用 Synaptic,或使用sudo apt-get install xbindkeys)。

使用您最喜欢的文本编辑器,在您的主文件夹中创建一个名为的文件.volumeHack.sh,然后将下面的内容复制并粘贴到该文件中,即

gedit ~/.volumeHack.sh

运行chmod a+x .volumeHack.sh以使其可执行。

然后编辑文件~/.xbindkeysrc并将下面的文本复制并粘贴到该文件的底部。即

gedit ~/.xbindkeysrc

注销和登录

.xbindkeysrc

# Increase volume
#"amixer set Master playback 1+"
"sh ~/.volumeHack.sh -c up -i 2% -m Master"
    m:0x0 + c:123
    XF86AudioRaiseVolume

# Decrease volume
"sh ~/.volumeHack.sh -c down -i 2% -m Master"
    m:0x0 + c:122
    XF86AudioLowerVolume

# Toggle mute - this is not used here
#"amixer set Master toggle"
# m:0x0 + c:121
# XF86AudioMute

.volumeHack.sh

#!/bin/sh

usage="usage: $0 -c {up|down|mute} [-i increment] [-m mixer]"
command=
increment=5%
mixer=Master

while getopts c:i:m:h o
do case "$o" in
    c) command=$OPTARG;;
    i) increment=$OPTARG;;
    m) mixer=$OPTARG;;
    h) echo "$usage"; exit 0;;
    ?) echo "$usage"; exit 0;;
esac
done

#echo "command:$command"
#echo "increment:$increment"
#echo "mixer:$mixer"

if [ "$command" = "" ]; then
    shift $(($OPTIND - 1))
    command=$1
    exit 0;
fi

if [ "$command" = "" ]; then
    echo "usage: $0 {up|down|mute} [increment]"
    exit 0;
fi

display_volume=0

if [ "$command" = "up" ]; then
    display_volume=$(amixer set $mixer $increment+ unmute | grep -m 1 "%]" | cut -d "[" -f2|cut -d "%" -f1)
fi

if [ "$command" = "down" ]; then
    display_volume=$(amixer set $mixer $increment- unmute | grep -m 1 "%]" | cut -d "[" -f2|cut -d "%" -f1)
fi

icon_name=""

if [ "$command" = "mute" ]; then
    if amixer get Master | grep "\[on\]"; then
        display_volume=0
        icon_name="notification-audio-volume-muted"
        amixer set $mixer mute
    else
        display_volume=$(amixer set $mixer unmute | grep -m 1 "%]" | cut -d "[" -f2|cut -d "%" -f1)
    fi
fi

if [ "$icon_name" = "" ]; then
    if [ "$display_volume" = "0" ]; then
        icon_name="notification-audio-volume-off"
    else
        if [ "$display_volume" -lt "33" ]; then
            icon_name="notification-audio-volume-low"
        else
            if [ "$display_volume" -lt "67" ]; then
                icon_name="notification-audio-volume-medium"
            else
                icon_name="notification-audio-volume-high"
            fi
        fi
    fi
fi
notify-send " " -i $icon_name -h int:value:$display_volume -h string:synchronous:volume

#echo "icon: $icon_name and $display_volume"

答案4

这个简单的解决方案适用于(至少)12.04 并且不需要 CCSM。

当您使用键盘快捷键时,您将不会在屏幕上看到音量条操作,但您可以根据需要进行细粒度的音量控制。

  1. 系统设置 > 键盘 > “快捷方式”选项卡 > “声音和媒体”类别

  2. 禁用现有的“降低音量”和“提高音量”快捷键。要执行此操作,请单击每个快捷键以将其选中,然后按 Backspace 清除与其关联的任何按键组合。

  3. 现在选择“自定义快捷方式”类别,然后单击“+”图标以创建两个新的快捷方式,如下所示:

    名称:调高音量
    命令:amixer set Master 3%+
    名称:降低音量
    命令:amixer set Master 3%-

    (用百分比进行试验。如果您需要非常精细,则省略 % 符号,它将使用 0-255 的比例而不是百分比)。

  4. 现在将每个新的快捷方式分配给一个键或组合键:选择一个快捷方式并在键盘上键入所需的键。

此后,当您使用键盘音量控制时,您应该可以获得您指定的音量增量。您可以随时通过禁用自定义快捷键并重新启用“声音和媒体”类别中的预制快捷键来恢复原始行为。

相关内容