Fedora下联想笔记本电脑的音量低


11

我在这款联想T520的Fedora 16下听不到任何声音。alsamixer中的所有内容均为100%(pulseaudio和card)。我在笔记本电脑上安装了Windows 7,以检查Windows是否存在相同的问题,但不是。

有人知道如何处理吗?我已经为这个问题烦恼了将近一年,但是现在由于东海岸的热浪,我必须全速运转AC,而打开AC却听不到任何声音。

在大胆的环境下,只要混合音量,我绝对可以从扬声器中获得高音量。是否可以在PulseAudio和alsa之间运行软件放大器来提高音量,或者在alsactl.conf中可以执行一些操作来使卡在较低的位置标准化音量大小?由于这种笔记本电脑在Linux用户中非常普遍,因此我希望有人提出解决方案。



您是否曾经通过命令行尝试过alsamixer?有时GUI无法正常工作!我在戴尔笔记本电脑上遇到了同样的问题,该问题通过将PCM列调整为100%来解决。
hassan_noori 2013年

也许音量因某些物理轮而降低了?曾经发生过一次...
vonbrand

您是否使用fedora 16 default(gnome)?您是否尝试过gnome-control-center sound最大化底部的音量栏?
xx4h 2013年

有趣的是,我的设置完全相同(520 / F16),没有声音问题
两栖游戏2013年

Answers:


6

我过去做过,并且在提高音量​​方面取得了相当不错的成绩。唯一的问题是如果将其关闭,则必须返回到扬声器图标下的系统偏好设置,才能将其重新设置为150%。

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

                                     SS#1

调高音量

如果右键单击扬声器小程序并选择声音首选项,则会弹出此对话框。

          SS#2

确认并保存更改

将音量一直调高至150%。开启后,您可以关闭此对话框。如果转到外壳并键入命令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更改音量。

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]

“它唯一的问题是如果将其调低,则必须回到扬声器图标下的系统偏好设置,才能将其调高至150%。” 这是我真正想要避免的。我想要的是更改扬声器图标的音量滑块,使其具有更高的最大值或被永久提高。
mattdm

@mattdm-我觉得这就是您所追求的,但我想我要开枪并提供我使用的这种方法。我会继续挖掘,看看我是否还能提出其他建议。
slm

@mattdm-这有时也让我感到沮丧。似乎应该有更好的东西,即使您发现了任何问题,即使使用插件路线,也请在此处分享。我也很好奇!
slm

是否有人解释了为什么会首先发生,为什么我们不能仅仅解决问题而不是解决问题?
PavelŠimerda2015年

@PavelŠimerda-您可以在本问答中看到有关此内容的讨论。没有人提到它,我继续在同一硬件的Fedora 19上使用此替代方法。我应该提到,自从移至2014年12月19日F19以来,我已经使用此变通方法大约2次了,所以这并不像是在杀死我。就是我的$ 0.02。
slm

3

据我了解,您可以将softvol插件用于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"

与往常一样manpacmd -hpactl -h


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

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

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

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


另一种选择是寻找到插件如LADSPA和SHWALSApulseaudio的


编辑:

好。来考虑一下。这可能是合适的。(不知道它是如何第一次逃脱了我。)

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

使用普通的体积计时,这将为您提供100%的150%。

示例–使用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


是的,看来这种set-sink-volume方法是可以合理地做到最好的方法,并且没有解决真正的需求。那好吧。我将研究插件,看看它们可能为我做些什么。
mattdm

@mattdm:是的。添加了可能更适合您需求的新解决方案。
Runium

1

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

alsamixer -V all

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


0

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

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.