I am using PulseAudio with the Equalizer on (
pulseaudio-equalizer-ladspa), but everytime I play something, happens a lag of 1~2 seconds. On YouTube, for example, the video freezes for 1~2 seconds until the audio start.
This happen to Spotify and VLC too. Only happens when I am using the equalizer.
The pulseaudio process have high priority.
There is any way to reduce this lag?
Using pulseaudio, GNOME, X11, 5.15 Kernel, system up-to-date.
From your description I suspect you are using
pulseaudio-equalizer that has never been very good and PulseAudio developers have no interest in fixing it
Please fix PulseAudio equalizer (#515) · Issues · PulseAudio / pulseaudio · GitLab
I suggest you try replacing it with
pulseaudio-equalizer-ladspa that usually works much better
The problem is: I am already using
pulseaudio-equalizer-ladspa. I don’t have pulseaudio-equalizer installed here.
That was my fault, I should specified that…
I’ve been having problems with pulseaudio and pulseaudio equalizer too. I decided to just bite the bullet and switch to pipewire with easyeffects. It works much better, and if you use the
manjaro-pipewire package, the transition is pretty much flawless
Adding audio processing to the audio pipeline will add some latency, but one equalizer should not be adding 1 or 2 second delay
I suspect audio delay issues may be affecting more than just the equalizer and some of the latency is from other PulseAudio modules, but is not noticeable until equalizer is added
Check information about PulseAudio configuration for all audio cards and output sinks
pactl list sinks | grep -E 'Name|Latency'
Multiple effects packages (
jamesdsp-pulse) could add more latency if a lot of the effects are turned on, but if just an equalizer is used it might have less latency than the LADSPA equalizer
For this system, audio card has about 0.25s latency and 0.25s from LADSPA
Name: alsa_output.pci-0000_04_06.0.analog-stereo Latency: 255500 usec, configured 256000 usec Name: ladspa_output.mbeq_1197.mbeq Latency: 256014 usec, configured 256000 usec
JamesDSP graphic equalizer is showing about 0.09s latency
Name: JamesDSP Latency: 9279 usec, configured 10000 usec
I am considering switch to pipewire. I have to just uninstall
pulseaudio and that’s it? My system already have
pipewire installed, but it’s running on pulseaudio.
That’s why I am thinking too.
That command didn’t work for me…
Am I doing something wrong? I just copied and paste on terminal.
Try the command without the grep filter
pactl list sinks
The command should work for PulseAudio or PipeWire
I am considering switch to pipewire. I have to just uninstall
pulseaudioand that’s it?
If you try to uninstall PulseAudio, the package manager is likely to remove desktop audio controls needed for PipeWire
manjaro-pipewire can replace PulseAudio packages with PipeWire packages without removing audio controls
Destino #2 Estado: RUNNING Nome: alsa_output.pci-0000_0a_00.3.analog-stereo Descrição: Family 17h (Models 00h-0fh) HD Audio Controller Estéreo analógico Driver: module-alsa-card.c Especificação da amostragem: s16le 2ch 44100Hz Mapa dos canais: front-left,front-right Módulo proprietário: 26 Mudo: não Volume: front-left: 30801 / 47% / -19,67 dB, front-right: 30801 / 47% / -19,67 dB balanço 0,00 Volume base: 65536 / 100% / 0,00 dB Fonte de monitoração: alsa_output.pci-0000_0a_00.3.analog-stereo.monitor Latência: 616054 useg, 980000 useg configurado Sinalizadores: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY Propriedades: alsa.resolution_bits = "16" device.api = "alsa" device.class = "sound" alsa.class = "generic" alsa.subclass = "generic-mix" alsa.name = "ALC887-VD Analog" alsa.id = "ALC887-VD Analog" alsa.subdevice = "0" alsa.subdevice_name = "subdevice #0" alsa.device = "0" alsa.card = "1" alsa.card_name = "HD-Audio Generic" alsa.long_card_name = "HD-Audio Generic at 0xf6700000 irq 81" alsa.driver_name = "snd_hda_intel" device.bus_path = "pci-0000:0a:00.3" sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:0a:00.3/sound/card1" device.bus = "pci" device.vendor.id = "1022" device.vendor.name = "Advanced Micro Devices, Inc. [AMD]" device.product.id = "1457" device.product.name = "Family 17h (Models 00h-0fh) HD Audio Controller" device.string = "front:1" device.buffering.buffer_size = "352768" device.buffering.fragment_size = "176384" device.access_mode = "mmap+timer" device.profile.name = "analog-stereo" device.profile.description = "Estéreo analógico" device.description = "Family 17h (Models 00h-0fh) HD Audio Controller Estéreo analógico" module-udev-detect.discovered = "1" device.icon_name = "audio-card-pci" Portas: analog-output-lineout: Line Out (tipo: Linha, prioridade: 9000, não disponível) analog-output-headphones: Headphones (tipo: Fones de ouvido, prioridade: 9900, disponível) Porta ativa: analog-output-headphones Formatos: pcm Destino #3 Estado: SUSPENDED Nome: alsa_output.pci-0000_08_00.1.hdmi-stereo-extra1 Descrição: GP107GL High Definition Audio Controller Digital Stereo (HDMI 2) Driver: module-alsa-card.c Especificação da amostragem: s16le 2ch 44100Hz Mapa dos canais: front-left,front-right Módulo proprietário: 25 Mudo: não Volume: front-left: 29212 / 45% / -21,06 dB, front-right: 29212 / 45% / -21,06 dB balanço 0,00 Volume base: 65536 / 100% / 0,00 dB Fonte de monitoração: alsa_output.pci-0000_08_00.1.hdmi-stereo-extra1.monitor Latência: 0 useg, 0 useg configurado Sinalizadores: HARDWARE DECIBEL_VOLUME LATENCY SET_FORMATS Propriedades: alsa.resolution_bits = "16" device.api = "alsa" device.class = "sound" alsa.class = "generic" alsa.subclass = "generic-mix" alsa.name = "LG ULTRAWIDE" alsa.id = "HDMI 1" alsa.subdevice = "0" alsa.subdevice_name = "subdevice #0" alsa.device = "7" alsa.card = "0" alsa.card_name = "HDA NVidia" alsa.long_card_name = "HDA NVidia at 0xf6080000 irq 79" alsa.driver_name = "snd_hda_intel" device.bus_path = "pci-0000:08:00.1" sysfs.path = "/devices/pci0000:00/0000:00:03.1/0000:08:00.1/sound/card0" device.bus = "pci" device.vendor.id = "10de" device.vendor.name = "NVIDIA Corporation" device.product.id = "0fb9" device.product.name = "GP107GL High Definition Audio Controller" device.string = "hdmi:0,1" device.buffering.buffer_size = "352768" device.buffering.fragment_size = "176384" device.access_mode = "mmap+timer" device.profile.name = "hdmi-stereo-extra1" device.profile.description = "Digital Stereo (HDMI 2)" device.description = "GP107GL High Definition Audio Controller Digital Stereo (HDMI 2)" module-udev-detect.discovered = "1" device.icon_name = "audio-card-pci" Portas: hdmi-output-1: HDMI / DisplayPort 2 (tipo: HDMI, prioridade: 5800, disponível) Porta ativa: hdmi-output-1 Formatos: pcm Destino #4 Estado: RUNNING Nome: ladspa_output.mbeq_1197.mbeq Descrição: LADSPA Plugin Multiband EQ on Family 17h (Models 00h-0fh) HD Audio Controller Estéreo analógico Driver: module-ladspa-sink.c Especificação da amostragem: float32le 2ch 44100Hz Mapa dos canais: front-left,front-right Módulo proprietário: 31 Mudo: não Volume: front-left: 30801 / 47%, front-right: 30801 / 47% balanço 0,00 Volume base: 65536 / 100% Fonte de monitoração: ladspa_output.mbeq_1197.mbeq.monitor Latência: 615979 useg, 980000 useg configurado Sinalizadores: HW_MUTE_CTRL LATENCY Propriedades: device.master_device = "alsa_output.pci-0000_0a_00.3.analog-stereo" device.class = "filter" device.ladspa.module = "mbeq_1197" device.ladspa.label = "mbeq" device.ladspa.name = "Multiband EQ" device.ladspa.maker = "Steve Harris <firstname.lastname@example.org>" device.ladspa.copyright = "GPL" device.ladspa.unique_id = "1197" device.description = "LADSPA Plugin Multiband EQ on Family 17h (Models 00h-0fh) HD Audio Controller Estéreo analógico" device.icon_name = "audio-card" Formatos: pcm
It’s in portuguese, but I believe that you can understand.
If you have any doubt, I can translate.
The latency on LADSPA is:
615979 useg, 980000 useg configurado
It’s quite high, no? Can I change this?
Any news about fix this?
I am really considering give up using PulseAudio Equalizer…
I have been testing jamesdsp-pulse for the last few days and it has much lower latency than
I would expect
jamesdsp-pulse on your system would reduce combined latency from 1200ms to 800 ms or lower
There are lots of other options for lower latency but not as simple as this
This change will at least give an indication of what level of latency would be suitable for your needs
grep filter in Portuguese should work for you to check latency
pactl list sinks | grep -E 'Nome|Latência'
Changing PulseAudio configuration to reduce latency might reduce latency further, but not as much as changing the equalizer
Hello! Here I Am again.
jamesdsp-pulse but when I selected it, no sound on P2 port. Running
pactl list sinks | grep -E 'Nome|Latência' returns:
~ pactl list sinks | grep -E 'Nome|Latência' ✔ Nome: alsa_output.pci-0000_0a_00.3.analog-stereo Latência: 0 useg, 0 useg configurado Nome: alsa_output.pci-0000_08_00.1.hdmi-stereo-extra1 Latência: 0 useg, 0 useg configurado Nome: JamesDSP Latência: 0 useg, 0 useg configurado
How to use it on P2 port?
JamesDSP should redirect audio streams through the equalizer automatically when is is launched
If not use this command to set JamesDSP as default sink for audio playback
pacmd set-default-sink JamesDSP
Audio streams can also be routed manually in PulseAudio Volume Control (pavucontrol --tab=1)
to play via JamesDSP or direct to analog or HDMI output
Audio output from JamesDSP can also be directed to analog or HDMI output
(If nothing is audible check that output from JamesDSP is not set to JamesDSP input)
The latency data in post #5 was based on default PulseAudio configuration
The latency for the alsa-output sinks can be reduced with some reconfiguration, but latency for JamesDSP remains the same
Name: alsa_output.pci-0000_04_06.0.analog-stereo Latency: 19755 usec, configured 20000 usec Name: JamesDSP Latency: 9714 usec, configured 10000 usec
Latency reported for JamesDSP varies between 5-10 ms during audio playback
After following your instructions, I run
pactl list sinks | grep -E 'Nome|Latência' again and the result is:
Nome: alsa_output.pci-0000_0a_00.3.analog-stereo Latência: 0 useg, 0 useg configurado Nome: ladspa_output.mbeq_1197.mbeq Latência: 0 useg, 0 useg configurado Nome: alsa_output.pci-0000_08_00.1.hdmi-stereo-extra1 Latência: 0 useg, 0 useg configurado Nome: JamesDSP Latência: 0 useg, 0 useg configurado
pavucontrol-qt and fixed the output, and now JamesDSP it’s working.
But, when I change the equalizer, I can’t hear much difference. Maybe I am doing something wrong?
(The “Bass profile” it’s just to test)
Turn off the Passthrough option. That is to bypass all effects to hear unprocessed audio
I liked that. Only problem: my MIC stay active all the time. But it’s a good start. Maybe I change to PipeWire in the future. For now, I am happy with JamesDSP
UPDATE: I give up JamesDSP. On every boot I need to open PavuControl to set JamesDSP output on P2 port. So, for now I am not using any equalizer
I do not understand what “P2” port is exactly
Does the Line Out port always show as (unplugged) in
pavucontrol --tab=3 ?
or does it change to show if audio jack is detected as (plugged in) ?
Data in post #8 shows the Active Port (Porta ativa:) analog-output-headphones is available (disponível)
But the other port analog-output-lineout is not available (não disponível)
If lineout port is not available even if a jack is plugged in I would expect PulseAudio to avoid using the port and only connect to available headphone port
It might be possible for user to command PulseAudio to use lineout port
pactl set sink port alsa_output.pci-0000_0a_00.3.analog-stereo analog-output-lineout
but PulseAudio will switch back to another port that is available
(or unknown availability if jack detection is not present or disabled)
ALSA can be reconfigured to either fix the jack detection for lineout port so it is available in PulseAudio when a jack is plugged in.
Or disable jack detection so availability is unknown
ALSA reconfiguration might be simply a matter of changing ‘Auto-Mute Mode’ to Disabled
(so lineout jack is not disabled when headphones are plugged in)
use this command to ensure Auto-Mute is disabled
amixer --card=1 sset 'Auto-Mute Mode'
Thanks! P2 it’s the headphones, basically.
This Line Out it’s from Digital Output.
I have some updates: I installed
manjaro-pipewire yesterday, and everything is okay.
I tried EasyEffects, but the equalizer need the “Linux Studio Plugins” installed on the system. I installed that (
lsp-plugins) but it installed several icons on applications menu, and the equalizer didn’t worked. But, I am liking PipeWire, seems more optimized.
Any tip for EasyEffects? Or I can keep trying JamesDSP?
If ‘P2’ is the headphone output
and ‘Line Out’ is the digital output
the simplest way to move audio streams from HDMI to Headphone output would be to change the Profile for GP107GL High Definition Audio Controller to Off in
lsp-plugins is a large collection of audio processing plugins that creates 131 .desktop launchers, to allow use of the plugins in standalone mode without a host package (easyeffects, carla, jack_rack)
The solution of having only one launcher for all plugins keeps getting pushed back to a later version Single launcher · Issue #195 · sadko4u/lsp-plugins · GitHub
jamesdsp-pulse and jamesdsp do not require any external plugins
Hello, sorry for not responding. Busy here, and I was doing some testes.
For the last 10 days I running on PipeWire, everything ok.
I tried JamesDSP again, but I had the same problem. Now, since I am using PipeWire and not PulseAudio, how to correctly setup the audio output without pavucontrol? It is possible?