联想笔记本电脑在Fedora下声音低

联想笔记本电脑在Fedora下声音低

在 Fedora 16 下,我在这台 Lenovo T520 上听不到任何声音。 alsamixer 中的所有内容均为 100%(pulsaudio 和 card)。我在笔记本电脑上安装了 Windows 7,以检查 Windows 上是否存在同样的问题,但事实并非如此。

有谁知道如何处理这个问题?我已经被这个问题困扰了快一年了,但现在随着东海岸的热浪,我必须开足马力运行空调,但开空调时我听不到任何声音。

大胆地说,我只需混合音量就可以从扬声器中获得高音量。有没有办法在 PulseAudio 和 alsa 之间运行软件放大器来调高音量,或者可以在 alsactl.conf 中执行某些操作以使卡在较低点标准化音量等级?由于这款笔记本电脑在 Linux 用户中很常见,我希望有人能提出一个解决方案。

答案1

我过去曾这样做过,并且在提高音量​​方面取得了相当大的成功。唯一的问题是,如果您将其调低,则必须返回扬声器图标下的系统首选项,将其调回 150%。

但是,通过以下步骤,从重新启动到重新启动应保持“粘性”。

                                     SS #1

调高音量

如果您右键单击扬声器小程序并选择声音首选项,您将打开此对话框。

          SS #2

确认并保存更改

将音量一直调到 150%。一旦打开,您就可以关闭该对话框。如果您进入 shell 并键入命令,amixer您可以确认这一点:

$ amixer 
Simple mixer control 'Master',0
  Capabilities: pvolume pswitch pswitch-joined penum
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 65536
  Mono:
  Front Left: Playback 98304 [150%] [on]
  Front Right: Playback 98304 [150%] [on]
Simple mixer control 'Capture',0
  Capabilities: cvolume cswitch cswitch-joined penum
  Capture channels: Front Left - Front Right
  Limits: Capture 0 - 65536
  Front Left: Capture 65536 [100%] [off]
  Front Right: Capture 65536 [100%] [off]

如果您随后运行此命令,则可以保存此状态,以便下次重新启动系统时,它将成为默认状态。

# saves settings
$ sudo alsactl store

# confirm file's created
$ ls -l /etc/asound.state 
-rw-r--r-- 1 root root 4761 Oct  5 16:54 /etc/asound.state

与 amixer 相关的其他东西

您也可以使用该命令amixer来更改音量。

100%

$ amixer sset Master 100% | grep Front
  Playback channels: Front Left - Front Right
  Front Left: Playback 65536 [100%] [on]
  Front Right: Playback 65536 [100%] [on]

150%

$ amixer sset Master 150% | grep Front
  Playback channels: Front Left - Front Right
  Front Left: Playback 65536 [100%] [on]
  Front Right: Playback 65536 [100%] [on]

笔记:然而,此方法不允许您达到 100% 以上。

沉默的

$ amixer sset Master muted | grep Front
  Playback channels: Front Left - Front Right
  Front Left: Playback 65536 [100%] [off]
  Front Right: Playback 65536 [100%] [off]

取消静音

$ amixer sset Master unmuted | grep Front
  Playback channels: Front Left - Front Right
  Front Left: Playback 65536 [100%] [on]
  Front Right: Playback 65536 [100%] [on]

答案2

据我所知,你可以使用软卷ALSA 插件并设置max_dB价值。一些方向:

pcm.!default {
    type        plug
    slave.pcm   "softvol"
}

pcm.softvol {
    type    softvol
    slave {
        pcm "hw:0,0"
        # pcm   "dmix" or this or the like.
    }
    control {
        name    "PreAmp"
        card    0
    }
    min_dB  -5.0
    max_dB  30.0  # 50.0 is max
    resolution 16
}

或许有一些提示也在这里。然后重新加载 alsa,播放例如speaker-test -c2 -twav以使其加载,然后在 alsamixer 中调整放大器。

如果想关闭 PulseAudio,请记得停用autospawn

echo autospawn=no >> ~/.pulse/client.conf

或者在全局中取消注释client.conf(在/etc/pulse/等等)。 (也看到一些替换daemon-binary/bin/true。)


然而,使用 pactl 等可能会更可取。

从命令行说:

pactl set-sink-volume 0 65536   # 100%
pactl set-sink-volume 0 98304   # 150%
pactl set-sink-volume 0 131072  # 200%
                      | |
                      | +----- Based on volume steps
                      +------- Sink number

要列出并识别接收器,请说:

pactl list sinks
pacmd list-sinks # a bit more verbose, and list "volume steps"

一如既往,man并且pacmd -hpactl -h


要将默认音量设置为 150%,请编辑./pulse/default.pa并添加以下行:

set-sink-volume 0 98304
                |
                +-- (Use full name if one e.g. have multiple USB-soundcards.)

为了方便起见,添加别名或简短脚本以在需要时设置此值。

要重新启动 PA pulseaudio -k,请说 和pulseaudio --start


另一种选择是研究插件,例如 LADSPA 和SHW阿尔萨斯或者脉冲音频


编辑:

好的。来思考一下。这可能是合适的。(不知道我第一次是怎么逃脱的。)

  1. default.pa添加一个脉冲音频模块来自设备驱动程序。
  2. 重新启动脉冲音频。
  3. 打开声音设置并设置音量原来的水槽例如150%。 (或者通过命令行执行此操作或default.pa如上所述进行预设。)
  4. 选择新模块/接收器作为声音输出设备。

使用时这将为您提供 150% 和 100%普通的音量计。

示例 – 使用module-remap-sink:

不是正如文档所说,取消注释。

default.pa

.ifexists module-remap-sink.so
# Using remap-sink as dummy, not doing any re-mapping.
load-module module-remap-sink sink_name=VolDummy master=0 sink_properties=device.description=CrankThaVolume
.fail
.endif

# Set it as default:
set-default-sink VolDummy

然后重新启动 Pulse Audio 以注册新模块。

发行:

$ pactl list modules # Should show "Usage counter: 1" for the module in question.
$ pactl list sinks

应该显示一个新水槽。您仍然可以调高音量掌握通过使用命令行和/或向default.pa.

答案3

从命令行运行 alsamixer 时,请务必使用开关运行,--view all以确保您正在查看所有可用的混音器控件。

alsamixer -V all

另外,在 alsamixer 中按 F6 并检查列出的每个设备的设置。

答案4

我在 Fedora 18 中曾经遇到过类似的问题。原来 Google 的“pepperbox”Flash API 在声音方面存在一些严重问题,我通过进入 /home//.config/google-chrome 并杀死 PepperFlash,然后重新安装来解决它Adobe 的 Flash 插件。

相关内容