[Pkg-utopia-maintainers] Bug#1003273: pipewire: headset mic not working
Marc Glisse
marc.glisse at normalesup.org
Fri Jan 7 11:58:54 GMT 2022
Package: pipewire
Version: 0.3.42-1
Severity: important
Dear Maintainer,
I have a headset that I connect with a USB dongle. It used to work in
December. Today, sound output still works, but not input. I can select
the headset as input source in gnome settings, I see it in pavucontrol,
etc, but they don't actually get any sound (unlike the internal mic of
the laptop, for which I see a bar that moves when I talk). In the log, I
first see
Jan 7 12:17:57 hippo /usr/libexec/gdm-x-session[1449]: (II) event10 - EPOS EPOS BTD 800 Consumer Control: is tagged by udev as: Keyboard
Hmm, no, that's a headset... But whatever, this also happens on a
debian stable system where the headset still works. Then
Jan 7 11:06:18 hippo pipewire[1542]: spa.alsa: 0x55da812704c8: card already opened at rate:48000
Jan 7 11:06:18 hippo pipewire[1542]: pw.node: (alsa_input.usb-EPOS_EPOS_BTD_800_A000871203310101-00.mono-fallback-93) suspended -> error (Start error: Invalid argument)
Jan 7 11:06:18 hippo pipewire[1542]: spa.audioadapter: params Spa:Enum:ParamId:EnumFormat: 0:0 (convert format) Success
Jan 7 11:06:18 hippo pipewire[1542]: Object: size 160, type Spa:Pod:Object:Param:Format (262147), id Spa:Enum:ParamId:EnumFormat (3)
Jan 7 11:06:18 hippo pipewire[1542]: Prop: key Spa:Pod:Object:Param:Format:mediaType (1), flags 00000000
Jan 7 11:06:18 hippo pipewire[1542]: Id 1 (Spa:Enum:MediaType:audio)
Jan 7 11:06:18 hippo pipewire[1542]: Prop: key Spa:Pod:Object:Param:Format:mediaSubtype (2), flags 00000000
Jan 7 11:06:18 hippo pipewire[1542]: Id 1 (Spa:Enum:MediaSubtype:raw)
Jan 7 11:06:18 hippo pipewire[1542]: Prop: key Spa:Pod:Object:Param:Format:Audio:format (65537), flags 00000000
Jan 7 11:06:18 hippo pipewire[1542]: Id 259 (Spa:Enum:AudioFormat:S16LE)
Jan 7 11:06:18 hippo pipewire[1542]: Prop: key Spa:Pod:Object:Param:Format:Audio:rate (65539), flags 00000000
Jan 7 11:06:18 hippo pipewire[1542]: Int 16000
Jan 7 11:06:18 hippo pipewire[1542]: Prop: key Spa:Pod:Object:Param:Format:Audio:channels (65540), flags 00000000
Jan 7 11:06:18 hippo pipewire[1542]: Int 1
Jan 7 11:06:18 hippo pipewire[1542]: Prop: key Spa:Pod:Object:Param:Format:Audio:position (65541), flags 00000000
Jan 7 11:06:18 hippo pipewire[1542]: Array: child.size 4, child.type Spa:Id
Jan 7 11:06:18 hippo pipewire[1542]: Id 2 (Spa:Enum:AudioChannel:MONO)
Jan 7 11:06:18 hippo pipewire[1542]: Object: size 216, type Spa:Pod:Object:Param:Format (262147), id Spa:Enum:ParamId:EnumFormat (3)
Jan 7 11:06:18 hippo pipewire[1542]: Prop: key Spa:Pod:Object:Param:Format:mediaType (1), flags 00000000
Jan 7 11:06:18 hippo pipewire[1542]: Id 1 (Spa:Enum:MediaType:audio)
Jan 7 11:06:18 hippo pipewire[1542]: Prop: key Spa:Pod:Object:Param:Format:mediaSubtype (2), flags 00000000
Jan 7 11:06:18 hippo pipewire[1542]: Id 1 (Spa:Enum:MediaSubtype:raw)
Jan 7 11:06:18 hippo pipewire[1542]: Prop: key Spa:Pod:Object:Param:Format:Audio:format (65537), flags 00000000
Jan 7 11:06:18 hippo pipewire[1542]: Choice: type Spa:Enum:Choice:None, flags 00000000 24 4
Jan 7 11:06:18 hippo pipewire[1542]: Id 259 (Spa:Enum:AudioFormat:S16LE)
Jan 7 11:06:18 hippo pipewire[1542]: Id 259 (Spa:Enum:AudioFormat:S16LE)
Jan 7 11:06:18 hippo pipewire[1542]: Prop: key Spa:Pod:Object:Param:Format:Audio:rate (65539), flags 00000000
Jan 7 11:06:18 hippo pipewire[1542]: Choice: type Spa:Enum:Choice:Range, flags 00000000 28 4
Jan 7 11:06:18 hippo pipewire[1542]: Int 16000
Jan 7 11:06:18 hippo pipewire[1542]: Int 48000
Jan 7 11:06:18 hippo pipewire[1542]: Int 16000
Jan 7 11:06:18 hippo pipewire[1542]: Prop: key Spa:Pod:Object:Param:Format:Audio:channels (65540), flags 00000000
Jan 7 11:06:18 hippo pipewire[1542]: Choice: type Spa:Enum:Choice:None, flags 00000000 20 4
Jan 7 11:06:18 hippo pipewire[1542]: Int 1
Jan 7 11:06:18 hippo pipewire[1542]: Prop: key Spa:Pod:Object:Param:Format:Audio:position (65541), flags 00000000
Jan 7 11:06:18 hippo pipewire[1542]: Array: child.size 4, child.type Spa:Id
Jan 7 11:06:18 hippo pipewire[1542]: Id 2 (Spa:Enum:AudioChannel:MONO)
Jan 7 11:06:18 hippo pipewire[1542]: spa.audioadapter: failed filter:
Jan 7 11:06:30 hippo pipewire[1542]: spa.audioadapter: params Spa:Enum:ParamId:EnumFormat: 0:0 (convert format) Success
Jan 7 11:06:30 hippo pipewire[1542]: Object: size 160, type Spa:Pod:Object:Param:Format (262147), id Spa:Enum:ParamId:EnumFormat (3)
etc
I have packages
(with "wire")
gstreamer1.0-pipewire:amd64/testing 0.3.42-1 uptodate
libpipewire-0.3-0:amd64/testing 0.3.42-1 uptodate
libpipewire-0.3-common:all/testing 0.3.42-1 uptodate
libpipewire-0.3-modules:amd64/testing 0.3.42-1 uptodate
libwireplumber-0.4-0:amd64/testing 0.4.5-1 uptodate
pipewire:amd64/testing 0.3.42-1 uptodate
pipewire-bin:amd64/testing 0.3.42-1 uptodate
pipewire-pulse:amd64/testing 0.3.42-1 uptodate
wireplumber:amd64/testing 0.4.5-1 uptodate
(with "pulse")
gstreamer1.0-pulseaudio:amd64/testing 1.18.5-1+b1 uptodate
libcanberra-pulse:amd64/testing 0.30-8 uptodate
libkf5pulseaudioqt3:amd64/testing 1.3-2 uptodate
libpulse-dev:amd64/testing 15.0+dfsg1-3 uptodate
libpulse-mainloop-glib0:amd64/testing 15.0+dfsg1-3 uptodate
libpulse0:amd64/testing 15.0+dfsg1-3 uptodate
libpulsedsp:amd64/testing 15.0+dfsg1-3 uptodate
pipewire-pulse:amd64/testing 0.3.42-1 uptodate
pulseaudio:amd64/testing 15.0+dfsg1-3 uptodate
pulseaudio-module-bluetooth:amd64/testing 15.0+dfsg1-3 uptodate
pulseaudio-module-gsettings:amd64/testing 15.0+dfsg1-3 uptodate
pulseaudio-utils:amd64/testing 15.0+dfsg1-3 uptodate
Since many people were complaining about wireplumber, I tried
pipewire-media-session but the error remained the same.
I found https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1916
and followed their advice to add
["api.alsa.multi-rate"] = true,
in /usr/share/wireplumber/main.lua.d/50-alsa-config.lua
and now the mic works again!
Editing a file in /usr is obviously not good. I don't know if it would
make sense to backport
https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/f8cdc05720bf13bd78e42eb6890fc2f855c8f554
for the debian package (and I haven't checked if that actually works,
although it does look likely).
Since this used to work, I don't know if something used to enable
multi-rate, or if some new client appeared that uses a "bad" rate, that
could point to another workaround.
-- System Information:
Debian Release: bookworm/sid
APT prefers testing-debug
APT policy: (500, 'testing-debug'), (500, 'stable-security'), (500, 'stable-debug'), (500, 'testing'), (500, 'stable'), (50, 'unstable-debug'), (50, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 5.15.0-2-amd64 (SMP w/16 CPU threads)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages pipewire depends on:
ii init-system-helpers 1.61
ii libpipewire-0.3-modules 0.3.42-1
ii pipewire-bin 0.3.42-1
pipewire recommends no packages.
pipewire suggests no packages.
-- no debconf information
More information about the Pkg-utopia-maintainers
mailing list