You are not logged in.

#1 2023-02-01 23:59:28

HarlemSquirrel
Member
From: US-East
Registered: 2014-01-22
Posts: 130
Website

Pipewire - Changing audio devices causes no sound output

Changing sound output device using GNOME settings results in no sound output until I restart the pipewire user service.

This has been going on for months and is really annoying.

Motherboard:    MSI MPG X570 GAMING EDGE WIFI (MS-7C37)
Kernel: 6.1.9-arch1-1
DE: GNOME 43.2
WM: Mutter on X-Org

╰─➤  pactl list sinks
Sink #52
	State: SUSPENDED
	Name: alsa_output.pci-0000_31_00.4.iec958-stereo
	Description: Starship/Matisse HD Audio Controller Digital Stereo (IEC958)
	Driver: PipeWire
	Sample Specification: s32le 2ch 48000Hz
	Channel Map: front-left,front-right
	Owner Module: 4294967295
	Mute: no
	Volume: front-left: 30001 /  46% / -20.36 dB,   front-right: 30001 /  46% / -20.36 dB
	        balance 0.00
	Base Volume: 65536 / 100% / 0.00 dB
	Monitor Source: alsa_output.pci-0000_31_00.4.iec958-stereo.monitor
	Latency: 0 usec, configured 0 usec
	Flags: HARDWARE HW_MUTE_CTRL DECIBEL_VOLUME LATENCY SET_FORMATS 
	Properties:
		alsa.card = "2"
		alsa.card_name = "HD-Audio Generic"
		alsa.class = "generic"
		alsa.device = "1"
		alsa.driver_name = "snd_hda_intel"
		alsa.id = "ALC1220 Digital"
		alsa.long_card_name = "HD-Audio Generic at 0xfcc00000 irq 106"
		alsa.name = "ALC1220 Digital"
		alsa.resolution_bits = "16"
		alsa.subclass = "generic-mix"
		alsa.subdevice = "0"
		alsa.subdevice_name = "subdevice #0"
		api.alsa.card.longname = "HD-Audio Generic at 0xfcc00000 irq 106"
		api.alsa.card.name = "HD-Audio Generic"
		api.alsa.path = "iec958:2"
		api.alsa.pcm.card = "2"
		api.alsa.pcm.stream = "playback"
		audio.channels = "2"
		audio.position = "FL,FR"
		card.profile.device = "11"
		device.api = "alsa"
		device.class = "sound"
		device.id = "46"
		device.profile.description = "Digital Stereo (IEC958)"
		device.profile.name = "iec958-stereo"
		device.routes = "1"
		factory.name = "api.alsa.pcm.sink"
		media.class = "Audio/Sink"
		device.description = "Starship/Matisse HD Audio Controller"
		node.name = "alsa_output.pci-0000_31_00.4.iec958-stereo"
		node.nick = "ALC1220 Digital"
		node.pause-on-idle = "false"
		object.path = "alsa:pcm:2:iec958:2:playback"
		priority.driver = "736"
		priority.session = "736"
		factory.id = "18"
		clock.quantum-limit = "8192"
		client.id = "35"
		node.driver = "true"
		factory.mode = "merge"
		audio.adapt.follower = ""
		library.name = "audioconvert/libspa-audioconvert"
		object.id = "52"
		object.serial = "52"
		node.max-latency = "16384/48000"
		api.alsa.period-size = "1024"
		api.alsa.period-num = "32"
		api.alsa.headroom = "0"
		api.acp.auto-port = "false"
		api.acp.auto-profile = "false"
		api.alsa.card = "2"
		api.alsa.use-acp = "true"
		api.dbus.ReserveDevice1 = "Audio2"
		device.bus = "pci"
		device.bus_path = "pci-0000:31:00.4"
		device.enum.api = "udev"
		device.icon_name = "audio-card-analog-pci"
		device.name = "alsa_card.pci-0000_31_00.4"
		device.nick = "HD-Audio Generic"
		device.plugged.usec = "5295618"
		device.product.id = "0x1487"
		device.product.name = "Starship/Matisse HD Audio Controller"
		device.subsystem = "sound"
		sysfs.path = "/devices/pci0000:00/0000:00:08.1/0000:31:00.4/sound/card2"
		device.vendor.id = "0x1022"
		device.vendor.name = "Advanced Micro Devices, Inc. [AMD]"
		device.string = "2"
	Ports:
		iec958-stereo-output: Digital Output (S/PDIF) (type: SPDIF, priority: 0, availability unknown)
	Active Port: iec958-stereo-output
	Formats:
		pcm

╰─➤  pacman -Qs pipewire
local/easyeffects 7.0.0-2
    Audio Effects for Pipewire applications
local/gst-plugin-pipewire 1:0.3.65-5
    Multimedia graph framework - pipewire plugin
local/helvum 0.3.4-1
    GTK patchbay for PipeWire
local/lib32-pipewire 1:0.3.64-1
    Low-latency audio/video router and processor - 32-bit client library
local/libpipewire02 0.2.7-2
    Low-latency audio/video router and processor - legacy client library
local/libwireplumber 0.4.13-1
    Session / policy manager implementation for PipeWire - client library
local/pipewire 1:0.3.65-5
    Low-latency audio/video router and processor
local/pipewire-alsa 1:0.3.65-5
    Low-latency audio/video router and processor - ALSA configuration
local/pipewire-audio 1:0.3.65-5
    Low-latency audio/video router and processor - Audio support
local/pipewire-pulse 1:0.3.65-5
    Low-latency audio/video router and processor - PulseAudio replacement
local/wireplumber 0.4.13-1
    Session / policy manager implementation for PipeWire
local/wireplumber-docs 0.4.13-1
    Session / policy manager implementation for PipeWire - documentation

Output in journalctl when I switch in GNOME settings

Feb 01 18:59:58 lh-ryzen-desktop gsd-media-keys[1808]: Unable to get default sink
Feb 01 18:59:58 lh-ryzen-desktop gsd-media-keys[1808]: Unable to get default source
Feb 01 18:59:58 lh-ryzen-desktop gsd-media-keys[1808]: gvc_mixer_card_get_index: assertion 'GVC_IS_MIXER_CARD (card)' failed
Feb 01 18:59:58 lh-ryzen-desktop gsd-media-keys[1808]: Sync_devices: Failed to match stream id: 59, description: 'Line Out', origi
n: 'Starship/Matisse HD Audio Controller Analog Stereo'
Feb 01 18:59:58 lh-ryzen-desktop gsd-media-keys[1808]: gvc_mixer_card_get_index: assertion 'GVC_IS_MIXER_CARD (card)' failed
Feb 01 18:59:58 lh-ryzen-desktop gsd-media-keys[1808]: Sync_devices: Failed to match stream id: 59, description: 'Headphones', ori
gin: 'Starship/Matisse HD Audio Controller Analog Stereo'
Feb 01 18:59:58 lh-ryzen-desktop gsd-media-keys[1808]: gvc_mixer_ui_device_get_id: assertion 'GVC_IS_MIXER_UI_DEVICE (device)' fai
led
Feb 01 18:59:58 lh-ryzen-desktop gnome-shell[1594]: gvc_mixer_card_get_index: assertion 'GVC_IS_MIXER_CARD (card)' failed
Feb 01 18:59:58 lh-ryzen-desktop gsd-media-keys[1808]: Sync_devices: Failed to match stream id: 60, description: 'Line In', origin
: 'Starship/Matisse HD Audio Controller Analog Stereo'
Feb 01 18:59:58 lh-ryzen-desktop gsd-media-keys[1808]: Sync_devices: Failed to match stream id: 60, description: 'Rear Microphone'
, origin: 'Starship/Matisse HD Audio Controller Analog Stereo'
Feb 01 18:59:58 lh-ryzen-desktop gsd-media-keys[1808]: Sync_devices: Failed to match stream id: 60, description: 'Front Microphone
', origin: 'Starship/Matisse HD Audio Controller Analog Stereo'

Last edited by HarlemSquirrel (2023-02-02 01:10:43)


"Melody reigns supreme!"
    -J. J. Johnson

Offline

#2 2023-02-03 17:33:19

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 23,074

Re: Pipewire - Changing audio devices causes no sound output

sudo fuser -v /dev/snd/*
systemctl --user status pipewire{-pulse} pipewire-media-session pulseaudio

Offline

#3 2023-02-04 19:12:23

HarlemSquirrel
Member
From: US-East
Registered: 2014-01-22
Posts: 130
Website

Re: Pipewire - Changing audio devices causes no sound output

➤  sudo fuser -v /dev/snd/*

Cannot stat file /proc/1499/fd/1023: Permission denied
                     USER        PID ACCESS COMMAND
/dev/snd/controlC0:  hs         6884 F.... wireplumber
/dev/snd/controlC1:  hs         6880 F.... pipewire
                     hs         6884 F.... wireplumber
/dev/snd/controlC2:  hs         6884 F.... wireplumber
/dev/snd/pcmC1D0c:   hs         6880 F...m pipewire
/dev/snd/pcmC1D1p:   hs         6880 F...m pipewire
/dev/snd/seq:        hs         6880 F.... pipewire
➤  systemctl --user status pipewire{-pulse} pipewire-media-session pulseaudio                                                           4 ↵
Invalid unit name "pipewire{-pulse}" escaped as "pipewire\x7b-pulse\x7d" (maybe you should use systemd-escape?).
Unit pipewire\x7b-pulse\x7d.service could not be found.
Unit pipewire-media-session.service could not be found.
Unit pulseaudio.service could not be found.
➤  systemctl --user status pipewire pipewire-pulse pipewire-media-session pulseaudio                                                    4 ↵
Unit pipewire-media-session.service could not be found.
Unit pulseaudio.service could not be found.
● pipewire.service - PipeWire Multimedia Service
     Loaded: loaded (/usr/lib/systemd/user/pipewire.service; disabled; preset: enabled)
     Active: active (running) since Sat 2023-02-04 11:15:03 EST; 2h 55min ago
TriggeredBy: ● pipewire.socket
   Main PID: 6880 (pipewire)
      Tasks: 3 (limit: 19051)
     Memory: 13.3M
        CPU: 1min 44.298s
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
             └─6880 /usr/bin/pipewire

Feb 04 11:15:03 lh-ryzen-desktop systemd[1489]: Started PipeWire Multimedia Service.
Feb 04 11:15:14 lh-ryzen-desktop pipewire[6880]: [0:41:12.834478251] [6880]  INFO Camera camera_manager.cpp:299 libcamera v0.0.4

● pipewire-pulse.service - PipeWire PulseAudio
     Loaded: loaded (/usr/lib/systemd/user/pipewire-pulse.service; disabled; preset: enabled)
     Active: active (running) since Sat 2023-02-04 10:34:22 EST; 3h 35min ago
TriggeredBy: ● pipewire-pulse.socket
   Main PID: 1719 (pipewire-pulse)
      Tasks: 2 (limit: 19051)
     Memory: 105.3M
        CPU: 2min 55.132s
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire-pulse.service
             └─1719 /usr/bin/pipewire-pulse

Feb 04 10:34:22 lh-ryzen-desktop systemd[1489]: Started PipeWire PulseAudio.
Feb 04 10:34:22 lh-ryzen-desktop pipewire-pulse[1719]: mod.rt: Can't find org.freedesktop.portal.Desktop. Is xdg-desktop-portal running?
Feb 04 10:34:22 lh-ryzen-desktop pipewire-pulse[1719]: mod.rt: found session bus but no portal

"Melody reigns supreme!"
    -J. J. Johnson

Offline

#4 2023-02-04 19:16:10

HarlemSquirrel
Member
From: US-East
Registered: 2014-01-22
Posts: 130
Website

Re: Pipewire - Changing audio devices causes no sound output

➤  systemctl status --user xdg-desktop-portal
● xdg-desktop-portal.service - Portal service
     Loaded: loaded (/usr/lib/systemd/user/xdg-desktop-portal.service; static)
     Active: active (running) since Sat 2023-02-04 10:34:23 EST; 3h 40min ago
   Main PID: 2048 (xdg-desktop-por)
      Tasks: 5 (limit: 19051)
     Memory: 6.0M
        CPU: 173ms
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/xdg-desktop-portal.service
             └─2048 /usr/lib/xdg-desktop-portal

Feb 04 10:34:22 lh-ryzen-desktop systemd[1489]: Starting Portal service...
Feb 04 10:34:23 lh-ryzen-desktop systemd[1489]: Started Portal service.
Feb 04 11:15:03 lh-ryzen-desktop xdg-desktop-por[2048]: Caught PipeWire error: connection error
Feb 04 11:15:13 lh-ryzen-desktop xdg-desktop-por[2048]: PipeWire roundtrip timed out waiting for events
Feb 04 11:15:13 lh-ryzen-desktop xdg-desktop-por[2048]: Failed connect to PipeWire: No node factory discovered

"Melody reigns supreme!"
    -J. J. Johnson

Offline

#5 2023-04-11 18:13:58

Loatchi
Member
Registered: 2023-04-11
Posts: 1

Re: Pipewire - Changing audio devices causes no sound output

I'm coming from Gentoo but suffered from the exact same problem.
I'm running Pipewire with wireplumber (with seems to be the same for OP).

I fixed my problem by downgrading pipewire to 0.3.66 (I was using 0.3.68)

Last edited by Loatchi (2023-04-11 18:26:59)

Offline

#6 2023-09-17 16:28:34

pn
Member
Registered: 2020-01-28
Posts: 39

Re: Pipewire - Changing audio devices causes no sound output

Downgraded and still same problem

Offline

#7 2023-10-29 13:16:03

bttger
Member
Registered: 2023-01-04
Posts: 4

Re: Pipewire - Changing audio devices causes no sound output

I experience the same issue. Changing the output sink in the Gnome quick settings only works sometimes and some Chrome tabs continue playing sound on the previous output sink. Any idea why that is or how I can resolve it?

Offline

Board footer

Powered by FluxBB