7

I have a rather specific issue and can't solve it on my own.

As explained in this Question, I have set up a system-wide volume control for my single USB audio card (M-Audio Fast Track). Now, I would also like to add a system-wide equalizer (libasound2-plugin-equal) to it, while keeping the volume control intact.

So far, I was able to get everything working correctly only in ALSA-programs.

With the following /etc/asound.conf, both the volume-control via softvol and the equalizer settings work at the same time:

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

ctl.!default {
        type hw
        card Track
}

pcm.softvol {
        type softvol
        slave {
            pcm "hw:Track"
        }
        control {
            name "Master"
            card Track
        }
}

ctl.equal {
        type equal;
}

pcm.plugequal {
        type equal;
        slave.pcm "plug:softvol";
}

pcm.!default {
        type plug;
        slave.pcm plugequal; 
}

Source: https://docs.slackware.com/howtos:hardware:sound_problems_on_slackware

There seems to be some redundancy, but this is the setup that works currently.

The issue that remains now is that PulseAudio apparently skips all of this setup and directly outputs to my sound card, so the equalizer works in programs that support ALSA-output (not Firefox, etc.) and JACK, since the output device can be specified.

Does someone know how to isolate PulseAudio in such a way that it will only output to the plugequal ALSA-device and not be connected to my sound card directly?

Unfortunately, PulseAudio doesn't list plugequal as an output device, just my hardware sound card.

I have uninstalled PulseAudio at the moment, since it disables the EQ and volume control when it is connected to the sound card.

0

2 Answers 2

1

As someone used to "plug and play" audio devices (eg never have to configure anything for sound) your problem "sounds" very complicated to me. However, there are generic problems with equalizers and the accepted answer there might help:

To start the pulseaudio equalizer run:

qpaeq

If this gives you the error

There was an error connecting to pulseaudio,
please make sure you have the pulseaudio dbus module loaded, exiting...

then load these two modules using pactl:

pactl load-module module-equalizer-sink
pactl load-module module-dbus-protocol

and, to make these changes permanent, edit ~/.config/pulse/default.pa (create it if necessary) and add these lines:

load-module module-equalizer-sink
load-module module-dbus-protocol
1
  • Hi, thank you for your answer! Just to make sure: By the context of the commands, I'm assuming this will only affect PulseAudio sound, right? I've had a PulseAudio EQ working a while ago, but I also need to apply it to JACK outputs, that's why I'm trying to EQ all signals at the last stage (ALSA). Currently, I'm routing my PulseAudio sound through a JACK EQ-plugin (Calf), but having an EQ at the ALSA stage would allow me to not have the JACK daemon running constantly when I'm not working in my DAW. Dec 21, 2019 at 22:15
1

I used to use jack and MIDI and I remember looking at this video on YouTube. I will try to go through the steps. If you haven't done so already you should first install qjackctl

sudo apt install qjackctl

Follow the prompts and change the answer to yes. Then, go back to the command line after the install.

aptitude search pulseaudio 

You need to install some modules.

pulseaudio-module-jack

to install it, use this command:

sudo aptitude install pulseaudio-module-jack

Next go into into a text file:

sudo vi /etc/pulse/default.pa

Look for the heading ###Load audio drivers statically. Then, add these two lines:

load-module module-jack-sink
load-module module-jack-source

Then put this into the command line:

sudo service pulseaudio restart 

The video goes into even more detail but that gives a good explanation. I did this at one point in time and it worked, good luck.

1
  • Hi, thank you for your suggestion! Unfortunately, this doesn't really help me with the PulseAudio/ALSA problem. I'm aware that it's possible to route PA through a Jack-EQ plugin, but that would require me to constantly have both Jack and the Plugin Host running, which creates a bit of extra load AND it requires me to fix my CPU governor, because I get audible x-runs on Ondemand. I hoped to dodge this situation by having a central EQ at the ALSA stage or possibly two separate EQs for PA and Jack, but at this point it seems unlikely that this is possible... Dec 24, 2019 at 22:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.