You are not logged in.

#1 2025-03-16 17:18:40

LogicalKarma
Member
Registered: 2024-05-19
Posts: 17

Popping and buzzing in pipewire

I have been experiencing load buzzing and pops for about 2-3 weeks. This is usually triggered by certain applications especially when multiple are running and producing sounds (Legcord, Soundux and wine games such as Uno and It Takes Two). I am using Pipewire.

I have tried changing:

default.clock.allowed-rates

default.clock.quantum     
default.clock.min-quantum
default.clock.max-quantum

api.alsa.period-size
api.alsa.headroom

I have also tried changing the latency for some of these apps and games (PIPEWIRE_LATENCY=2048/48000) and I have session.suspend-timeout-seconds = 0 as I also had issues with suspended audio prior.

Only changing the quantum options to higher values helped, but they seem to big and I still get slight popping in some cases. Will these have consequences for my sistem's stability and responsiveness? Is there a better way of fixing this?

default.clock.quantum       = 4096
default.clock.min-quantum   = 512
default.clock.max-quantum   = 32768

Update:
I still have the same issues. Quantum options did not help much.

Last edited by LogicalKarma (2025-03-16 18:47:57)

Offline

#2 2025-03-24 13:04:37

Halano
Member
From: Egypt
Registered: 2023-02-07
Posts: 62
Website

Re: Popping and buzzing in pipewire

cd .config
rm -rf pipewire
cp -r /usr/share/pipewire/ .

systemctl --user restart pipewire

Last edited by Halano (2025-03-24 13:17:25)


.:HalanoTheSmartMoth:.

Offline

#3 2025-03-27 14:58:51

LogicalKarma
Member
Registered: 2024-05-19
Posts: 17

Re: Popping and buzzing in pipewire

I appreciate the reply, but could you care to explain the reasoning?

I did partially solve the issue in the meantime. It seems that either the echo cancellation or noise suppression(rnnoise) caused it. I had 2 config files for these which you can find bellow. I am now using noise suppression(still rnnoise) on easy effects and I think the buzzing is gone.

I still have popping when stopping or sometimes when starting playback, however I am beginning to suspect a hardware specific issue as it's either worse or only existent while listening though my usb microphone (AT2020USB-X) .

Legcord is another story, popping always occurs when starting a call or sometimes when ending it whatever I try.

 context.modules = [
 
     # Echo cancellation
     {   name = libpipewire-module-echo-cancel
         args = {
             # Monitor mode: Instead of creating a virtual sink into which all
             # applications must play, in PipeWire the echo cancellation module can read
             # the audio that should be cancelled directly from the current fallback
             # audio output
             monitor.mode = true
             # The audio source / microphone wherein the echo should be cancelled is not
             # specified explicitly; the module follows the fallback audio source setting
            
             source.props = {
                 # Name and description of the virtual source where you get the audio
                 # without echoed speaker output
                 node.name = "source_ec"
                 node.description = "Echo-cancelled source"
             }
             aec.args = {
                 # Settings for the WebRTC echo cancellation engine
                 webrtc.gain_control = true
                 webrtc.extended_filter = false
                 # Other WebRTC echo cancellation settings which may or may not exist
                 # Documentation for the WebRTC echo cancellation library is difficult
                 # to find
                 #webrtc.analog_gain_control = false
                 #webrtc.digital_gain_control = true
                 #webrtc.experimental_agc = true
                 #webrtc.noise_suppression = true
             }
         }
     }
 ]
context.modules = [
{   name = libpipewire-module-filter-chain
    args = {
        node.description =  "Noise Canceling source"
        media.name =  "Noise Canceling source"
        filter.graph = {
            nodes = [
                {
                    type = ladspa
                    name = rnnoise
                    plugin = /usr/lib/ladspa/librnnoise_ladspa.so
                    label = noise_suppressor_stereo
                    control = {
                        "VAD Threshold (%)" = 50.0
                        "VAD Grace Period (ms)" = 200
                        "Retroactive VAD Grace (ms)" = 0
                    }
                }
            ]
        }
        capture.props = {
            node.name =  "capture.rnnoise_source"
            node.passive = true
            audio.rate = 48000
            node.target = "source_ec"
        }
        playback.props = {
            node.name =  "rnnoise_source"
            media.class = Audio/Source
            audio.rate = 48000
        }

    }
}
]

Last edited by LogicalKarma (2025-03-27 15:06:56)

Offline

#4 2025-03-30 10:11:44

LogicalKarma
Member
Registered: 2024-05-19
Posts: 17

Re: Popping and buzzing in pipewire

Another update:

I have found an easy way to reproduce the stutters:
Play audio on VLC and hold space. This will pause and unpause rapidly causing stutters. (other media players will also probably work)

After obsessing over this for quite some time and constantly tinkering with the settings I have previously mentioned like a madman, I cleared an SSD and installed Windows 11 to confirm this is not a hardware level issue. Windows had one small stutter the first time I played audio on it after installing and then it worked perfectly fine.

After this, I started Ubuntu to check if this is a configuration specific issue for my installation. Surely enough, it is not. Ubuntu also seems to share the same audio issues.

So is this a driver issue? I am using a MSI PRO-B650-S-WIFI motherboard with a ALC897 audio chip. Where do I go from here?

Last edited by LogicalKarma (Yesterday 07:08:23)

Offline

#5 Yesterday 07:07:21

LogicalKarma
Member
Registered: 2024-05-19
Posts: 17

Re: Popping and buzzing in pipewire

Testing with a DAC yields the same results.

Can this topic be moved to Multimedia and Games?

Offline

Board footer

Powered by FluxBB