After Upgrade, no sound, pipewire 100% CPU load --> System freeze

Hi,

the last upgrade gives me an issue with the soundsystem.
If I boot the system I have no sound and the soundcard is not shown in the KDE system settings.
Additionally I have a high CPU load from pipewire-media-.
After ~5 minutes the system gets slow and then it freezes completly.
If I kill the pipewire process the system runs fine, without sound.

Regards corax

Sorry, I know this...
But, I absolutly don't know what information, log or wahtever I should add.

If I start "pipewire-media-session" manually I get the same problem. The process get 100% CPU.
Here's the pipewire.conf, maybe something is misconfiguerd?

Additionally I did
pamac reinstall pipewire
But nothing changed

#daemon config file for PipeWire version "0.3.1"

## set-prop is used to configure properties in the system
#
#set-prop library.name.system                   support/libspa-support
#set-prop context.data-loop.library.name.system support/libspa-support
set-prop link.max-buffers       16              # version < 3 clients can't handle more
#set-prop mem.allow-mlock               true

## Properties for the DSP configuration
#
#set-prop default.clock.rate            48000
#set-prop default.clock.quantum         1024
#set-prop default.clock.min-quantum     32
#set-prop default.clock.max-quantum     8192
#set-prop default.video.width           320
#set-prop default.video.height          240
#set-prop default.video.rate.num        25
#set-prop default.video.rate.denom      1

## add-spa-lib <factory-name regex> <library-name>
#
# used to find spa factory names. It maps an spa factory name
# regular expression to a library name that should contain
# that factory.
#
add-spa-lib audio.convert* audioconvert/libspa-audioconvert
add-spa-lib api.alsa.* alsa/libspa-alsa
add-spa-lib api.v4l2.* v4l2/libspa-v4l2
add-spa-lib api.bluez5.* bluez5/libspa-bluez5
add-spa-lib api.vulkan.* vulkan/libspa-vulkan
add-spa-lib api.jack.* jack/libspa-jack
#add-spa-lib videotestsrc videotestsrc/libspa-videotestsrc
#add-spa-lib audiotestsrc audiotestsrc/libspa-audiotestsrc

## load-module [-ifexists] <module-name> [<key>=<value> ...]
#
# Loads a module with the given parameters. Normally failure is
# fatal if the module is not found, unless -ifexists is given.
#
load-module libpipewire-module-rtkit # rt.prio=20 rt.time.soft=200000 rt.time.hard=200000
load-module libpipewire-module-protocol-native
load-module libpipewire-module-profiler
load-module libpipewire-module-metadata
load-module libpipewire-module-spa-device-factory
load-module libpipewire-module-spa-node-factory
load-module libpipewire-module-client-node
load-module libpipewire-module-client-device
load-module libpipewire-module-access
load-module libpipewire-module-adapter
load-module libpipewire-module-link-factory
load-module libpipewire-module-session-manager

## create-object [-nofail] <factory-name> [<key>=<value> ...]
#
# Creates an object from a PipeWire factory with the given parameters.
# If -nofail is given, errors are ignored (and no object is created)
#
#create-object spa-node-factory factory.name=videotestsrc node.name=videotestsrc Spa:Pod:Object:Param:Props:patternType=1
#create-object -nofail spa-device-factory factory.name=api.jack.device foo=bar
#create-object spa-device-factory factory.name=api.alsa.enum.udev
#create-object spa-device-factory factory.name=api.alsa.seq.bridge node.name=Internal-MIDI-Bridge
#create-object adapter factory.name=audiotestsrc node.name=my-test
#create-object spa-node-factory factory.name=api.vulkan.compute.source node.name=my-compute-source

## exec <program-name>
#
# Execute the given program. This is usually used to start the
# session manager.
#
exec pipewire-media-session```

Today I reinstalled all updated packages. This doesen't changed anything.
Then I reinstalled ALL packages. Same as before... pipewire-media-session 100% CPU load.
If the system is running without killing pipewire over a short time the RAM is getting full by pipewire, probaply this freezes the system.


What can I do?

Is this line necessary?

if pipewire is killed, is Pulseaudio active and available for audio playback?

systemctl --user status pulseaudio.service pulseaudio.socket

if Pulseaudio is not available, is it possible to play audio direct to ALSA?

please post URL from response to sudo alsa-info.sh --upload

I don't know. I nerver changed anything on pipewire, I never heard about pipewire before, I only know alsa and pulsaudio.

     Loaded: loaded (/usr/lib/systemd/user/pulseaudio.service; disabled; vendor preset: enabled)
     Active: active (running) since Fri 2020-03-27 16:22:26 CET; 26min ago
TriggeredBy: ● pulseaudio.socket
   Main PID: 986 (pulseaudio)
     CGroup: /user.slice/user-1000.slice/user@1000.service/pulseaudio.service
             ├─ 986 /usr/bin/pulseaudio --daemonize=no
             └─1433 /usr/lib/pulse/gsettings-helper

Mär 27 16:22:13 thorsten-pc systemd[857]: Starting Sound Service...
Mär 27 16:22:21 thorsten-pc pulseaudio[986]: E: [pulseaudio] module.c: Failed to load module "module-alsa-card" (argument: "device_id="0" name="pci-0000_00_1b.0" card_name="alsa_card.pci-0000_00_1b.0" namereg_fail=false tsched=yes fixed_latency_range=no ignore_dB=no deferred_volume=yes use_ucm=yes avoid_resampling=no card_properties="module-udev-detect.discovered=1""): initialization failed.
Mär 27 16:22:26 thorsten-pc pulseaudio[986]: E: [pulseaudio] module.c: Failed to load module "module-alsa-card" (argument: "device_id="2" name="pci-0000_05_00.0" card_name="alsa_card.pci-0000_05_00.0" namereg_fail=false tsched=yes fixed_latency_range=no ignore_dB=no deferred_volume=yes use_ucm=yes avoid_resampling=no card_properties="module-udev-detect.discovered=1""): initialization failed.
Mär 27 16:22:26 thorsten-pc systemd[857]: Started Sound Service.
Mär 27 16:22:40 thorsten-pc pulseaudio[986]: E: [pulseaudio] bluez5-util.c: GetManagedObjects() failed: org.freedesktop.DBus.Error.TimedOut: Failed to activate service 'org.bluez': timed out (service_start_timeout=25000ms)

● pulseaudio.socket - Sound System
     Loaded: loaded (/usr/lib/systemd/user/pulseaudio.socket; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2020-03-27 16:22:12 CET; 27min ago
   Triggers: ● pulseaudio.service
     Listen: /run/user/1000/pulse/native (Stream)
     CGroup: /user.slice/user-1000.slice/user@1000.service/pulseaudio.socket

Mär 27 16:22:12 thorsten-pc systemd[857]: Listening on Sound System.

alsa-info.sh --upload
http://alsa-project.org/db/?f=63ae98ab928efd92b67a88801d01a5e2e3c6b701

Sound device is not available in KDE systemsettings.

KDE audio controls do not show anything because any hardware for audio playback is absent

pulseaudio.service is showing as active, but disabled
and both onboard audio and HDMI ALSA devices failed to load
and bluetooth module fell over on 2nd start attempt
Pulseaudio may be active, but has no modules for audio playback to onboard devices or bluetooth

from ALSA data it appears that Hauppage PVR-350 Capture card didn't even make it to ALSA
but it is only a capture device and not relevant for audio playback

I have heard about the pipewire project but nothing so far about it working
there is API documentation but no wiki or other information for ordinary users

suggest:

  1. uninstall pipewire and clear any pipewire user settings in home folder

  2. enable pulseaudio.service - systemctl --user enable pulseaudio.service

  3. power down system and remove PVR-350 (troubleshoot it in ALSA later)

  4. troubleshoot onboard audio devices in Pulseaudio if audio playback is still not working

Many thanks! That worked. I only removed pipewire, that was enough. Pulsaudio ist now working like before.
I thought pipewire is needed by the system. Now I can see it was a part of the flatpak installation.
Flatpak is now removed too. I installed it to use spotify. It worked for many month without any problems.

1 Like

Forum kindly sponsored by