Gentoo Linux:为 ALSA 启用 mbeq 均衡器会破坏应用程序音频,但在使用扬声器测试进行测试时可以正常工作

Gentoo Linux:为 ALSA 启用 mbeq 均衡器会破坏应用程序音频,但在使用扬声器测试进行测试时可以正常工作

我正在使用内核 Linux-4.3.3-hardened-r4 运行 Gentoo Linux,而我的声音系统只有 ALSA,即没有 OSS 或 Pulseaudio。我正在尝试启用系统范围的均衡器,但由于alsaequal从未在我的计算机上工作过并且修复涉及修改源代码,所以我正在使用mbeq插件。我执行了所描述的步骤在这个非官方的 Gentoo wiki 上,我可以使用均衡器来播放音频speaker-test -D plug:eq -c 2(我知道它是有效的,因为白噪声输出的音色与我使用的收听的音色非常不同speaker-test -D plug:dmix -c 2)。

但是,当我尝试使用用户应用程序(例如 Firefox 上的 HTML5 YouTube 视频或 Audacious 上的歌曲)播放音频时,我听不到声音。

这是我粘贴的/etc/asound.conf

pcm.eq {
    type ladspa
    slave.pcm "plug:dmix"

    plugins [
    {   
        label mbeq
        id 1197
        input {
            # The following setting is just an example, edit to your own taste:
            # bands: 50hz, 100hz, 156hz, 220hz, 311hz, 440hz, 622hz, 880hz, 1250hz, 1750hz, 25000hz,
            # 50000hz, 10000hz, 20000hz
            controls [ -5 -5 -5 -5 -5 -10 -20 -15 -10 -10 -10 -10 -10 -3 -2 ]
            }
        }
    ]
}

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

# Redirect the OSS emulation through the EQ too (when programs are running through "aoss")
pcm.dsp0 {
    type plug
    slave.pcm "eq"
}

答案1

问题是从网络浏览器等应用程序发送声音,它们直接设置为 alsamixer,而其他音频播放器(如 vlc)则自动设置为系统中设置的输出。

当我无法在应用程序中播放声音,但网络上的 Youtube 播放正常时,我遇到了这个问题。我需要在应用程序一侧切换声音车,而不是在 alsamixer 中播放。

有声音的Linux在向声卡发送声音方面总是有复杂的思考。从来都不是一件容易的事,我认为他们应该做得很容易,因为 Windows 做到了这一点,没有人在正确的设置和播放来自不同播放器的声音时遇到问题。 Linux 总是有问题,并且在所有发行版中都不是用户友好的。

相关内容