pipewire issueshttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues2021-06-10T21:47:58Zhttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1294Midi-Bridge setup breaks pipewire2021-06-10T21:47:58ZMat E.Midi-Bridge setup breaks pipewireUncommenting the midi-bridge object configuration in `pipewire.conf` causes pipewire to fail to start with:
```
[D][50651.425087][module-device-fa: 171 create_object()] can't create device api.alsa.seq.bridge: No such file or directory
...Uncommenting the midi-bridge object configuration in `pipewire.conf` causes pipewire to fail to start with:
```
[D][50651.425087][module-device-fa: 171 create_object()] can't create device api.alsa.seq.bridge: No such file or directory
[E][50651.425094][ conf.c: 414 create_object()] can't create object from factory spa-device-factory: No such file or directory
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1295low volume with Jabra bluetooth headphones2021-08-30T09:07:49ZJan Včeláklow volume with Jabra bluetooth headphonesI've got _Jabra Elite Active 75t_ bluetooth headphones and the audio volume is really low on Linux Desktop in comparison when connected to my Android phone. I made sure that both the application playback volume and the device output volu...I've got _Jabra Elite Active 75t_ bluetooth headphones and the audio volume is really low on Linux Desktop in comparison when connected to my Android phone. I made sure that both the application playback volume and the device output volume is set to 100% in `pavucontrol` but the real output volume is still really low.
Please, can you advise how to debug the issues? I would like to provide more information to get this fixed.
I'm running Fedora 34 with the following packages:
- pipewire-0.3.29-2.fc34.x86_64
- bluez-5.58-2.fc34.x86_64
The configuration is default except for the following two tweaks:
```
$ /etc/pipewire/media-session.d/bluez-monitor.conf
properties = {
bluez5.msbc-support = true
bluez5.sbc-xq-support = true
}
```
```
$ cat /etc/systemd/system/bluetooth.service.d/override.conf
[Service]
# add experimental to enable headphones battery reporting
ExecStart=
ExecStart=/usr/libexec/bluetooth/bluetoothd --experimental
```
Here is the device info:
```
$ bluetoothctl info
Device XX:XX:XX:XX:XX:XX (public)
Name: Jabra Elite Active 75t
Alias: Jabra Elite Active 75t
Class: 0x00240404
Icon: audio-card
Paired: yes
Trusted: yes
Blocked: no
Connected: yes
LegacyPairing: no
UUID: Serial Port (00001101-0000-1000-8000-00805f9b34fb)
UUID: Headset (00001108-0000-1000-8000-00805f9b34fb)
UUID: Audio Sink (0000110b-0000-1000-8000-00805f9b34fb)
UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb)
UUID: Advanced Audio Distribu.. (0000110d-0000-1000-8000-00805f9b34fb)
UUID: A/V Remote Control (0000110e-0000-1000-8000-00805f9b34fb)
UUID: Handsfree (0000111e-0000-1000-8000-00805f9b34fb)
UUID: PnP Information (00001200-0000-1000-8000-00805f9b34fb)
Modalias: bluetooth:v0067p24CCd0200
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1296How to check "loopback" stream properties (if float 32bit)?2021-06-11T16:40:40ZSteve ParrisHow to check "loopback" stream properties (if float 32bit)?Hallo,
i've set up an ALSA **snd_aloop** device as default (via .asoundrc) to act as a general "input" for my custom audio graph in Carla. I've checked with **pw-mon** what happens if i connect the Loopback node to a DSP in Carla (as se...Hallo,
i've set up an ALSA **snd_aloop** device as default (via .asoundrc) to act as a general "input" for my custom audio graph in Carla. I've checked with **pw-mon** what happens if i connect the Loopback node to a DSP in Carla (as seen on the screenshot). There are several entries showing **alsa.resolution_bits = "16"**.
**Does this mean the loopback devices runs as 16bit only?** I hoped for a 32bit connection between Wine/Winamp and Carla.
My audio source (Wine/Winamp) shows 24bit audio output and as far as i know snd_aloop should be 32bit capable.
I'm not sure if pw-mon is suitable at all to verify that though. Is there an easier way to check the stream? The pw-mon log is very crowded.
Edit: When i check ALSA procfs i get this:
```
$ cat /proc/asound/Loopback/pcm0p/sub0/hw_params
access: MMAP_INTERLEAVED
format: S32_LE
subformat: STD
channels: 2
rate: 48000 (48000/1)
period_size: 1024
buffer_size: 262144
```
The pw-mon log was started when connecting the 'loopback' pin to the 'dsp'.
[pw-mon log](https://pastebin.com/raw/fZ0qN1Tc)
![carla](/uploads/023bb7fa31f7ef72d20d510cea625aa5/carla.png)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1297Teamspeak3 crashing with module combine-sink running2021-06-10T21:12:30ZTheUser123Teamspeak3 crashing with module combine-sink runningIf you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
Pipewire version: 0.3.30
Distribution: Arch Linux
Desktop Environment: Gnome 40
Descript...If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
Pipewire version: 0.3.30
Distribution: Arch Linux
Desktop Environment: Gnome 40
Description of Problem:
Teamspeak crashing when module combine-sink is running
How Reproducible:
Make a combine-sink and run teamspeak3. I'm using `pactl load-module module-combine-sink sink_name="StreamingAudio" slaves="alsa_output.pci-0000_00_1f.3.analog-stereo"`
Steps to Reproduce:
1.Make a combine-sink
2.Run Teamspeak3.
3.See Crash
Actual Results:
The program crashes.
Expected Results:
The program shouldn't crash.
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):
Core Dump:
<details><summary>Click to expand</summary>
```
Jun 10 20:13:16 GamingPC systemd-coredump[3641]: [🡕] Process 3624 (ts3client_linux) of user 1000 dumped core.
Stack trace of thread 3638:
#0 0x00007f3622f5b515 __strlen_avx2 (libc.so.6 + 0x160515)
#1 0x00007f360e3e531c n/a (libpulseaudio_linux_amd64.so + 0xb31c)
#2 0x00007f360e3df930 n/a (libpulseaudio_linux_amd64.so + 0x5930)
#3 0x00007f360e39ee84 n/a (libpulse.so.0 + 0x19e84)
#4 0x00007f360e340014 n/a (libpulsecommon-14.2.so + 0x40014)
#5 0x00007f360e341caf pa_pdispatch_run (libpulsecommon-14.2.so + 0x41caf)
#6 0x00007f360e397ad1 n/a (libpulse.so.0 + 0x12ad1)
#7 0x00007f360e3450df n/a (libpulsecommon-14.2.so + 0x450df)
#8 0x00007f360e346bbf n/a (libpulsecommon-14.2.so + 0x46bbf)
#9 0x00007f360e3abc23 pa_mainloop_dispatch (libpulse.so.0 + 0x26c23)
#10 0x00007f360e3ac291 pa_mainloop_iterate (libpulse.so.0 + 0x27291)
#11 0x00007f360e3ac331 pa_mainloop_run (libpulse.so.0 + 0x27331)
#12 0x00007f360e3bc7fe n/a (libpulse.so.0 + 0x377fe)
#13 0x00007f360e3565cc n/a (libpulsecommon-14.2.so + 0x565cc)
#14 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#15 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3625:
#0 0x00007f3622eeeb2f __poll (libc.so.6 + 0xf3b2f)
#1 0x00007f3621dc763b n/a (libxcb.so.1 + 0xc63b)
#2 0x00007f3621dc937b xcb_wait_for_event (libxcb.so.1 + 0xe37b)
#3 0x00007f361f0249c8 n/a (/opt/teamspeak3/libQt5XcbQpa.so.5 + 0x689c8)
#4 0x00007f362af60853 n/a (/opt/teamspeak3/libQt5Core.so.5 + 0xa4853)
#5 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#6 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3628:
#0 0x00007f362b4fc8ca __futex_abstimed_wait_common64 (libpthread.so.0 + 0x158ca)
#1 0x00007f362b4f6270 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf270)
#2 0x00007f3623255fdf _ZNSt3__118condition_variable4waitERNS_11unique_lockINS_5mutexEEE (/opt/teamspeak3/libc++.so.1 + 0x41fdf)
#3 0x0000000000e112d2 n/a (ts3client_linux_amd64 + 0xa112d2)
#4 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#5 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3627:
#0 0x00007f3622ef992e epoll_wait (libc.so.6 + 0xfe92e)
#1 0x0000000000b92521 n/a (ts3client_linux_amd64 + 0x792521)
#2 0x0000000000b9209c n/a (ts3client_linux_amd64 + 0x79209c)
#3 0x0000000000b91dc1 n/a (ts3client_linux_amd64 + 0x791dc1)
#4 0x0000000000e3707b n/a (ts3client_linux_amd64 + 0xa3707b)
#5 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#6 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3632:
#0 0x00007f362b4fc8ca __futex_abstimed_wait_common64 (libpthread.so.0 + 0x158ca)
#1 0x00007f362b4f6270 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf270)
#2 0x0000000000b9218a n/a (ts3client_linux_amd64 + 0x79218a)
#3 0x0000000000b91dc1 n/a (ts3client_linux_amd64 + 0x791dc1)
#4 0x0000000000cbbc69 n/a (ts3client_linux_amd64 + 0x8bbc69)
#5 0x0000000000eb74af n/a (ts3client_linux_amd64 + 0xab74af)
#6 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#7 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3624:
#0 0x00007f3622ec1a95 clock_nanosleep@@GLIBC_2.17 (libc.so.6 + 0xc6a95)
#1 0x00007f3622ec6c77 __nanosleep (libc.so.6 + 0xcbc77)
#2 0x00007f360e3e0e97 n/a (libpulseaudio_linux_amd64.so + 0x6e97)
#3 0x0000000000ce9eab n/a (ts3client_linux_amd64 + 0x8e9eab)
#4 0x0000000000cae298 n/a (ts3client_linux_amd64 + 0x8ae298)
#5 0x0000000000ca2d50 n/a (ts3client_linux_amd64 + 0x8a2d50)
#6 0x0000000000ca202f n/a (ts3client_linux_amd64 + 0x8a202f)
#7 0x0000000000c326c6 n/a (ts3client_linux_amd64 + 0x8326c6)
#8 0x0000000000bef088 n/a (ts3client_linux_amd64 + 0x7ef088)
#9 0x000000000067472c n/a (ts3client_linux_amd64 + 0x27472c)
#10 0x000000000067312a n/a (ts3client_linux_amd64 + 0x27312a)
#11 0x00000000006f043f n/a (ts3client_linux_amd64 + 0x2f043f)
#12 0x0000000000b9c30c n/a (ts3client_linux_amd64 + 0x79c30c)
#13 0x0000000000b97e3f n/a (ts3client_linux_amd64 + 0x797e3f)
#14 0x00007f3622e22b25 __libc_start_main (libc.so.6 + 0x27b25)
#15 0x0000000000514f39 n/a (ts3client_linux_amd64 + 0x114f39)
Stack trace of thread 3634:
#0 0x00007f362b4fc8ca __futex_abstimed_wait_common64 (libpthread.so.0 + 0x158ca)
#1 0x00007f362b4f6270 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf270)
#2 0x0000000000b9218a n/a (ts3client_linux_amd64 + 0x79218a)
#3 0x0000000000b91dc1 n/a (ts3client_linux_amd64 + 0x791dc1)
#4 0x00000000011dc60a n/a (ts3client_linux_amd64 + 0xddc60a)
#5 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#6 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3630:
#0 0x00007f362b4fc8ca __futex_abstimed_wait_common64 (libpthread.so.0 + 0x158ca)
#1 0x00007f362b4f6574 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf574)
#2 0x00007f362325607a _ZNSt3__118condition_variable15__do_timed_waitERNS_11unique_lockINS_5mutexEEENS_6chrono10time_pointINS5_12system_clockENS5_8durationIxNS_5ratioILl1ELl1000000000EEEEE>
#3 0x00000000006ef225 n/a (ts3client_linux_amd64 + 0x2ef225)
#4 0x00000000006e9faf n/a (ts3client_linux_amd64 + 0x2e9faf)
#5 0x00000000006ee888 n/a (ts3client_linux_amd64 + 0x2ee888)
#6 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#7 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3636:
#0 0x00007f3622ec1a95 clock_nanosleep@@GLIBC_2.17 (libc.so.6 + 0xc6a95)
#1 0x00007f3622ec6c77 __nanosleep (libc.so.6 + 0xcbc77)
#2 0x00007f3622ef1a99 usleep (libc.so.6 + 0xf6a99)
#3 0x0000000000cd54d1 n/a (ts3client_linux_amd64 + 0x8d54d1)
#4 0x0000000000cd87dd n/a (ts3client_linux_amd64 + 0x8d87dd)
#5 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#6 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3637:
#0 0x00007f362b4fc8ca __futex_abstimed_wait_common64 (libpthread.so.0 + 0x158ca)
#1 0x00007f362b4f6574 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf574)
#2 0x00007f360edf0ed7 n/a (libalsa_linux_amd64.so + 0x4ed7)
#3 0x00007f360edf0de6 n/a (libalsa_linux_amd64.so + 0x4de6)
#4 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#5 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3626:
#0 0x00007f3622eeeb2f __poll (libc.so.6 + 0xf3b2f)
#1 0x00007f3622d66ae8 n/a (libglib-2.0.so.0 + 0xa7ae8)
#2 0x00007f3622d10781 g_main_context_iteration (libglib-2.0.so.0 + 0x51781)
#3 0x00007f362b185e3b _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (/opt/teamspeak3/libQt5Core.so.5 + 0x2c9e3b)
#4 0x00007f362b12d76f _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (/opt/teamspeak3/libQt5Core.so.5 + 0x27176f)
#5 0x00007f362af5f9d7 _ZN7QThread4execEv (/opt/teamspeak3/libQt5Core.so.5 + 0xa39d7)
#6 0x00007f362af60853 n/a (/opt/teamspeak3/libQt5Core.so.5 + 0xa4853)
#7 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#8 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3629:
#0 0x00007f362b4fc8ca __futex_abstimed_wait_common64 (libpthread.so.0 + 0x158ca)
#1 0x00007f362b4f6270 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf270)
#2 0x0000000000b9218a n/a (ts3client_linux_amd64 + 0x79218a)
#3 0x0000000000b91dc1 n/a (ts3client_linux_amd64 + 0x791dc1)
#4 0x0000000000b91bb7 n/a (ts3client_linux_amd64 + 0x791bb7)
#5 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#6 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3631:
#0 0x00007f3622ef992e epoll_wait (libc.so.6 + 0xfe92e)
#1 0x0000000000b92521 n/a (ts3client_linux_amd64 + 0x792521)
#2 0x0000000000b9209c n/a (ts3client_linux_amd64 + 0x79209c)
#3 0x0000000000b91dc1 n/a (ts3client_linux_amd64 + 0x791dc1)
#4 0x0000000000c3ea1b n/a (ts3client_linux_amd64 + 0x83ea1b)
#5 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#6 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3633:
#0 0x00007f362b4fc8ca __futex_abstimed_wait_common64 (libpthread.so.0 + 0x158ca)
#1 0x00007f362b4f6270 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf270)
#2 0x0000000000b9218a n/a (ts3client_linux_amd64 + 0x79218a)
#3 0x0000000000b91dc1 n/a (ts3client_linux_amd64 + 0x791dc1)
#4 0x00000000011dc60a n/a (ts3client_linux_amd64 + 0xddc60a)
#5 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#6 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3635:
#0 0x00007f362b4fc8ca __futex_abstimed_wait_common64 (libpthread.so.0 + 0x158ca)
#1 0x00007f362b4f6270 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf270)
#2 0x0000000000c8aa7f n/a (ts3client_linux_amd64 + 0x88aa7f)
#3 0x0000000000c859fc n/a (ts3client_linux_amd64 + 0x8859fc)
#4 0x0000000000c8c43d n/a (ts3client_linux_amd64 + 0x88c43d)
#5 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#6 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
Stack trace of thread 3639:
#0 0x00007f362b4fc8ca __futex_abstimed_wait_common64 (libpthread.so.0 + 0x158ca)
#1 0x00007f362b4f6270 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf270)
#2 0x00007f360e3b9739 pa_threaded_mainloop_wait (libpulse.so.0 + 0x34739)
#3 0x00007f360e3df7c9 n/a (libpulseaudio_linux_amd64.so + 0x57c9)
#4 0x00007f360e3de96a n/a (libpulseaudio_linux_amd64.so + 0x496a)
#5 0x00007f360e3de856 n/a (libpulseaudio_linux_amd64.so + 0x4856)
#6 0x00007f362b4f0259 start_thread (libpthread.so.0 + 0x9259)
#7 0x00007f3622ef95e3 __clone (libc.so.6 + 0xfe5e3)
```
</details>https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1298Audio & Audio controls suddenly disappeared in f342021-08-28T02:50:09ZSiddharth NaithaniAudio & Audio controls suddenly disappeared in f34- Version: `0.3.29-2.fc34`
- Distribution: `Fedora 34` (latest)
- Desktop Environment: `Gnome 40.1.0`
Description of Problem:
Audio suddenly disappeared, so did the controls but mic works fine.
pw-dump -N > file [file](/uploads/e3ee...- Version: `0.3.29-2.fc34`
- Distribution: `Fedora 34` (latest)
- Desktop Environment: `Gnome 40.1.0`
Description of Problem:
Audio suddenly disappeared, so did the controls but mic works fine.
pw-dump -N > file [file](/uploads/e3ee6ab8e92f80cc7b04d1214cff1d89/file)
I have tried:
1. `sudo dnf reinstall pipewire pipewire-pulseaudio`
2. `systemctl --user restart pipewire pipewire-pulse`
3. Deleting files in `/home/$USER/.config/pipewire/media-session.d/` and then doing 1 again
Some additional info:
```shell
❯ systemctl --user status pipewire
● pipewire.service - Multimedia Service
Loaded: loaded (/usr/lib/systemd/user/pipewire.service; disabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/user/pipewire.service.d
└─00-uresourced.conf
Active: active (running) since Fri 2021-06-11 01:12:39 IST; 3min 39s ago
TriggeredBy: ● pipewire.socket
Main PID: 6123 (pipewire)
Tasks: 4 (limit: 18377)
Memory: 5.6M
CPU: 76ms
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
├─6123 /usr/bin/pipewire
└─6152 /usr/bin/pipewire-media-session
Jun 11 01:12:39 alfred systemd[2147]: Started Multimedia Service.
Jun 11 01:12:40 alfred pipewire-media-session[6152]: can't make factory instance: No such file or directory
Jun 11 01:12:40 alfred pipewire[6123]: '_ucm0004.hw:Generic_1': playback open failed: No such device
Jun 11 01:12:40 alfred pipewire[6123]: adapter 0x5580b8a3ff10: can't get format: No such device
Jun 11 01:12:40 alfred pipewire[6123]: usage: node.name=<string>
Jun 11 01:12:40 alfred pipewire-media-session[6152]: error id:75 seq:350 res:-22 (Invalid argument): usage: node.name=<string>
```
```shell
❯ systemctl --user status pipewire-pulse
● pipewire-pulse.service - PipeWire PulseAudio
Loaded: loaded (/usr/lib/systemd/user/pipewire-pulse.service; disabled; vendor preset: disabled)
Active: active (running) since Fri 2021-06-11 01:12:39 IST; 4min 43s ago
TriggeredBy: ● pipewire-pulse.socket
Main PID: 6124 (pipewire-pulse)
Tasks: 2 (limit: 18377)
Memory: 1.6M
CPU: 13ms
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire-pulse.service
└─6124 /usr/bin/pipewire-pulse
Jun 11 01:12:39 alfred systemd[2147]: Started PipeWire PulseAudio.
```
```shell
❯ ps ax | grep pipewire
6123 ? S<sl 0:00 /usr/bin/pipewire
6124 ? S<sl 0:00 /usr/bin/pipewire-pulse
6152 ? S<l 0:00 /usr/bin/pipewire-media-session
6701 pts/0 S+ 0:00 grep --color=auto pipewire
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1299Switching user with MuseScore running new user does not have sound2022-04-12T17:31:32ZPaul MenzelSwitching user with MuseScore running new user does not have soundUsing Debian sid/unstable with PipeWire 0.3.27 from the experimental suite and GNOME 3.38, having [MuseScore](https://musescore.org/) (*musescore3* 3.2.3+dfsg2-11) running, and switching to another user, that user does not have any sound...Using Debian sid/unstable with PipeWire 0.3.27 from the experimental suite and GNOME 3.38, having [MuseScore](https://musescore.org/) (*musescore3* 3.2.3+dfsg2-11) running, and switching to another user, that user does not have any sound. Closing MuseScore in the other session, and trying again, there is sound.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1300Internal sound card breaks with pw 3.30 when multi-channel device is plugged ...2021-07-05T13:28:49ZMarcus HusarInternal sound card breaks with pw 3.30 when multi-channel device is plugged in before bootVersion, Distribution, Desktop Environment:
Pipewire 3.30, Fedora 34, Gnome 40.1
Description of Problem:
I usually use an **internal sound card in my laptop** for playback (ALC287) and a **Behringer UMC404HD as external sound card** con...Version, Distribution, Desktop Environment:
Pipewire 3.30, Fedora 34, Gnome 40.1
Description of Problem:
I usually use an **internal sound card in my laptop** for playback (ALC287) and a **Behringer UMC404HD as external sound card** connected per USB for capturing microphones and more.
When I plug in the UMC404HD **after the laptop is booted**, everything is working as expected:
[aplay_working.txt](/uploads/756aa8a2b424cd099fd2baac18599244/aplay_working.txt)
[pactl_list_sinks_working.txt](/uploads/900a4f6e5b0279257b29430e36347d79/pactl_list_sinks_working.txt)
But when it is plugged in **before I start the laptop**, neither headphones nor laptop speakers are available for playback. The sinks are completely missing. All playback devices are still visible in Gnome Control Center but not able to play any sound.
[aplay_not_working.txt](/uploads/7b4e2980a507e2a18a77c1b5f04515bb/aplay_not_working.txt)
[pactl_list_sinks_not_working.txt](/uploads/52eeaff1ff21cfa3e9b06917d363f3af/pactl_list_sinks_not_working.txt)
How Reproducible:
Plug in a multi-channel external sound card and start your computer/laptop afterwards. The internal sound card is missing as playback sink.
Expected Results:
The internal sound card works as expected.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1301No Sound in VMware Fusion or VirtualBox VM's with Fedora 34 Gnome/KDE2023-08-29T14:51:11ZBig HuskyNo Sound in VMware Fusion or VirtualBox VM's with Fedora 34 Gnome/KDEHi
Running Fedora 34 Gnome or KDE in VMware Fusion or VirtualBox VM fresh install or from LiveCD session on MacBook Pro's produces no sound from any application. Also the audio test in the system settings does not output any sound (in VM...Hi
Running Fedora 34 Gnome or KDE in VMware Fusion or VirtualBox VM fresh install or from LiveCD session on MacBook Pro's produces no sound from any application. Also the audio test in the system settings does not output any sound (in VMware Fusion you can see some activity on the speaker icon, but no sound.
Reverting back to pulseaudio restores audio output in all environments.
Posts in Fedora/VMware/VirtualBox forums point to post a ticket with pipewire.
Let me know what would be useful to provide to assist in resolving this situation.
Thankshttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1302no audio on telegram since pipewire was installed (gentoo amd64)2021-06-12T00:39:48Zdarkicekeelno audio on telegram since pipewire was installed (gentoo amd64)If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
pipewire 0.3.29
gentoo amd64
xfce
Description of Problem:
no audio on telegram. pavucontrol...If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
pipewire 0.3.29
gentoo amd64
xfce
Description of Problem:
no audio on telegram. pavucontrol shows telegram stream reproducing media but no audio on speakers
How Reproducible:
play any audio from telegram results in no corresponding feedback from the speakers
Steps to Reproduce:
1.
2.
3.
Actual Results:
no audio
Expected Results:
audio
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):
[pipewiredump.txt](/uploads/6f1e58a2158438b2b502e0c6bd4bfcda/pipewiredump.txt)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1303No sound after disconnecting WD15 dock2022-01-15T20:07:40ZBjörn Daasebjoern.daase@gmail.comNo sound after disconnecting WD15 dockIf you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
* pipewire 0.30 (issue occurs since 0.29)
* GNOME
* Fedora 34
Description of Problem:
Whe...If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
* pipewire 0.30 (issue occurs since 0.29)
* GNOME
* Fedora 34
Description of Problem:
Whenever I disconnect my docking station, I have no more sound. This seems to be caused by the default sink transitioning to some HDMI sink, even though no HDMI is connected anymore.
How Reproducible:
Always.
Steps to Reproduce:
1.Disconnect WD15 dock.
Actual Results:
The pipewire default sink transitions to some HDMI think, even though no HDMI is connected.
```
➜ ~ pw-metadata
Found "default" metadata 33
update: id:0 key:'default.configured.audio.source' value:'{ "name": "alsa_input.pci-0000_00_1f.3.analog-stereo" }' type:'Spa:String:JSON'
update: id:0 key:'default.audio.sink' value:'{ "name": "alsa_output.pci-0000_00_1f.3.hdmi-stereo" }' type:'Spa:String:JSON'
update: id:0 key:'default.audio.source' value:'{ "name": "alsa_input.pci-0000_00_1f.3.analog-stereo" }' type:'Spa:String:JSON'
update: id:0 key:'default.video.source' value:'{ "name": "v4l2_input.pci-0000_00_14.0-usb-0_5_1.2" }' type:'Spa:String:JSON'
```
Expected Results:
The pipewire default sink are my internal laptop speakers.
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):
This is in the logs whenever I disconnect my dock
```
Jun 12 17:26:48 xps-9370 pipewire[141093]: ALSA lib pcm.c:8562:(snd_pcm_recover) cannot recovery from underrun, prepare failed: Broken pipe
Jun 12 17:26:48 xps-9370 pipewire[141093]: (alsa_output.usb-Generic_USB_Audio_200901010001-00.HiFi___ucm0001.hw_Dock_1__sink-52) XRun! rate:1024/48000 count:1 time:67766039186 delay:299 max:299
Jun 12 17:26:48 xps-9370 pipewire[141093]: alsa-pcm _ucm0001.hw:Dock,1: snd_pcm_recover error: Broken pipe
Jun 12 17:26:48 xps-9370 pipewire[141093]: alsa-pcm _ucm0001.hw:Dock,1: snd_pcm_drop No such device
Jun 12 17:26:48 xps-9370 pipewire[141093]: _ucm0001.hw:Dock,1: close failed: No such device
Jun 12 17:26:49 xps-9370 pipewire[141093]: (alsa_output.pci-0000_00_1f.3.hdmi-stereo-56) XRun! rate:1024/48000 count:1 time:67766299240 delay:1037509 max:1037509
Jun 12 17:26:49 xps-9370 pipewire[141093]: (alsa_input.pci-0000_00_1f.3.analog-stereo-57) client too slow! rate:1024/48000 pos:504453120 status:triggered
Jun 12 17:26:49 xps-9370 pipewire[141093]: (alsa_input.pci-0000_00_1f.3.analog-stereo-57) client too slow! rate:1024/48000 pos:504453120 status:triggered
Jun 12 17:26:49 xps-9370 pipewire[141093]: (alsa_input.pci-0000_00_1f.3.analog-stereo-57) client missed 1 wakeups
Jun 12 17:26:49 xps-9370 pipewire[141093]: (alsa_input.pci-0000_00_1f.3.analog-stereo-57) client missed 1 wakeups
Jun 12 17:26:54 xps-9370 pipewire[141093]: 1 events suppressed
Jun 12 17:26:54 xps-9370 pipewire[141093]: (alsa_input.pci-0000_00_1f.3.analog-stereo-57) XRun! rate:1024/48000 count:2 time:0 delay:0 max:0
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1304pipewire fails to compile at module-zeroconf-publish.c:351:32021-06-14T15:35:10Zdebiangamerpipewire fails to compile at module-zeroconf-publish.c:351:3Version, Distribution, Desktop Environment: git, Debian Sid, Xfce
Description of Problem:
```
../src/modules/module-protocol-pulse/modules/module-zeroconf-publish.c: In function ‘service_entry_group_callback’:
../src/modules/module-prot...Version, Distribution, Desktop Environment: git, Debian Sid, Xfce
Description of Problem:
```
../src/modules/module-protocol-pulse/modules/module-zeroconf-publish.c: In function ‘service_entry_group_callback’:
../src/modules/module-protocol-pulse/modules/module-zeroconf-publish.c:351:3: error: a label can only be part of a statement and a declaration is not a statement
351 | char *t;
| ^~~~
```
How Reproducible:
1. with pipewire git.
Steps to Reproduce:
1. git pull
2. debuild -us -uc -b
Actual Results:
module-zeroconf-publish.c:351:3: error: a label can only be part of a statement and a declaration is not a statement
Expected Results:
Compilation succeeds.
Fix:
```
static void service_entry_group_callback(AvahiEntryGroup *g, AvahiEntryGroupState state, void *userdata)
{
struct service *s = userdata;
char *t;
spa_assert(s);
switch (state) {
case AVAHI_ENTRY_GROUP_ESTABLISHED:
pw_log_info("Successfully established service %s.", s->service_name);
break;
case AVAHI_ENTRY_GROUP_COLLISION:
t = avahi_alternative_service_name(s->service_name);
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1308Fail to setup a2dp source connection2021-06-17T07:22:58ZmsntfsFail to setup a2dp source connectionWireplumber fails to setup an a2dp connection if the audio source plays immediately after connection. This can be replicated by connecting an Android phone while a music is playing.
This seems to be caused by a missed `create-object` no...Wireplumber fails to setup an a2dp connection if the audio source plays immediately after connection. This can be replicated by connecting an Android phone while a music is playing.
This seems to be caused by a missed `create-object` notification, but I do not fully understand the PipeWire/WirePlumber object model so I am not sure how to fix this. The device object gets created and exported, but the node object does not get exported and does not turn up in e.g. `pw-mon`.
The sequence of events seems to be roughly this:
1) Bluez notifies WP about the transport
1) `lua:createDevice` runs and calls device:activate
2) `bluez5-device.c:emit_node` runs, but there are no listeners registered, so `create-object` does not get called
3) main event loop activates the device and registers listeners
If the source starts playing some time after connection, (2) (3) get reordered and the connection works.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1305Large quantity of audio streams freezes pipewire-pulse, trashes filesystem du...2021-06-30T11:39:30ZAndreas BjörkmanLarge quantity of audio streams freezes pipewire-pulse, trashes filesystem due to journalctl spam#### Version, Distribution, Desktop Environment:
`$ pipewire --version`
```
pipewire
Compiled with libpipewire 0.3.30
Linked with libpipewire 0.3.30
```
`$ pipewire-pulse --version`
```
pipewire-pulse
Compiled with libpipewire 0.3.30...#### Version, Distribution, Desktop Environment:
`$ pipewire --version`
```
pipewire
Compiled with libpipewire 0.3.30
Linked with libpipewire 0.3.30
```
`$ pipewire-pulse --version`
```
pipewire-pulse
Compiled with libpipewire 0.3.30
Linked with libpipewire 0.3.30
```
Distro: Arch Linux (5.12.10-arch1-1)
WM: Awesome
#### Description of Problem:
When using a program that creates a large amount of audio streams it appears pipewire can get confused (e.g `core 0x556d35dd9070: invalid mem id 178, expected 177`), this results in a total hang of the audio server (ranging from 0 to
This is most obviously noticed by video playback in the program (e.g firefox) freezing and audio playback dropping out, or or video and audio stuttering extremely. Additionally pipewire will use a large amount of RAM during this time (699mb+)
This results in thrashing the file system and practically hanging journalctl due to the inordinately large amount of logging data it outputs.
#### How Reproducible:
In my testing it's consistently reproducible (read: works every time) using waterfox G3.2.3 and this post on imgur imgur.com/gallery/daGLqjC (the url contains several dozen mp4 and/or webm video files) (though any program that generates up to tens or hundreds of audio streams at once should have the same issue)
#### Steps to Reproduce:
1. run pipewire & pipewire pulse
2. start waterfox-g3 or similar
3. create a large quantity of audio streams
4. keep going until pipewire hangs (in the example case here it should hang after you click "load more" after scrolling to the bottom, as it will load the remaining videos in the post)
#### Actual Results:
Pipewire hangs due to too many audio streams, fails to map memory, accesses invalid memory ids, generating large amounts of no such file or directory errors, bad file descriptor errors, resource temporarily unavailable errors, thrashing file system with journalctl and causing general system instability due to hanging, due to locking up journalctl, and due to causing problems depending on sound server to miss wakeups, e.g:
```
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 1292785156095 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 206158430208000 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 1023 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 43980465111040 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 2061584302719 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 4294967320 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 9223372036854775807 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 4294967295 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 4607182418800017407 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 4607182418800017407 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 4607182418800017407 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 4607182418800017407 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 4607182418800017407 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 4607182418800017407 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 4607182418800017407 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 4607182418800017407 wakeups
Jun 13 17:23:43 nihil pipewire-pulse[1536]: (PulseAudio Volume Control-247) client missed 4999999999 wakeups
```
#### Expected Results:
Either allocating the audio streams successfully, merging them as needed, or failing gracefully.
#### Additional Info:
Attached is the system journal demonstrating the problem (27.7MB, a few minutes of observing the problem -- relevant output starts at `line 2346` through `line 214,500` or so)
[boot.journal](/uploads/70fc59e9a0ca0140c13ba707bd270495/boot.journal)
Not sure if `pw-dump -N` output is useful here, but here it is anyway.
[pw-dump](/uploads/ff6d9c0037ae598277a49e071fb92645/pw-dump)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1306XRuns when enabling echo-cancel module2022-04-12T18:52:24ZAereauxXRuns when enabling echo-cancel moduleThanks for implementing echo-cancellation in pipewire, it's basically the last thing that I needed to replace pulseaudio. However, when I attempt to enable it with `pactl load-module module-echo-cancel use_master_format=1 aec_method=web...Thanks for implementing echo-cancellation in pipewire, it's basically the last thing that I needed to replace pulseaudio. However, when I attempt to enable it with `pactl load-module module-echo-cancel use_master_format=1 aec_method=webrtc aec_args="analog_gain_control=0\ digital_gain_control=1"`, the output audio begins to distort. I also get these errors continuously in the logs:
```
Jun 13 10:01:39 hostname pipewire[1702468]: (alsa_output.pci-0000_00_1b.0.analog-stereo-40) XRun! rate:256/48000 count:815 time:576785968771 delay:133490 max:8856005392
Jun 13 10:01:39 hostname pipewire[1702468]: alsa-pcm front:0: follower delay:520 target:512 resync 0.000430 0.000035 0.000000
Jun 13 10:01:40 hostname pipewire[1702468]: alsa-pcm front:0: follower delay:520 target:512 resync 0.000504 0.000041 0.000000
Jun 13 10:01:40 hostname pipewire[1702468]: alsa-pcm front:0: follower delay:520 target:512 resync 0.000529 0.000043 0.000000
Jun 13 10:01:40 hostname pipewire[1702468]: alsa-pcm front:0: follower delay:520 target:512 resync 0.000529 0.000043 0.000000
Jun 13 10:01:40 hostname pipewire[1702468]: alsa-pcm front:0: follower delay:520 target:512 resync 0.000529 0.000043 0.000000
Jun 13 10:01:40 hostname pipewire[1702468]: alsa-pcm front:0: follower delay:520 target:512 resync 0.000529 0.000043 0.000000
Jun 13 10:01:40 hostname pipewire[1702468]: alsa-pcm front:0: follower delay:520 target:512 resync 0.000430 0.000035 0.000000
Jun 13 10:01:41 hostname pipewire[1702468]: alsa-pcm front:0: follower delay:520 target:512 resync 0.000529 0.000043 0.000000
Jun 13 10:01:41 hostname pipewire[1702468]: alsa-pcm front:0: follower delay:520 target:512 resync 0.000529 0.000043 0.000000
Jun 13 10:01:41 hostname pipewire[1702468]: alsa-pcm front:0: follower delay:520 target:512 resync 0.000529 0.000043 0.000000
Jun 13 10:01:41 hostname pipewire[1702468]: alsa-pcm front:0: follower delay:520 target:512 resync 0.000529 0.000043 0.000000
Jun 13 10:01:41 hostname pipewire[1702468]: alsa-pcm front:0: follower delay:520 target:512 resync 0.000529 0.000043 0.000000
Jun 13 10:01:41 hostname pipewire[1702468]: alsa-pcm front:0: follower delay:520 target:512 resync 0.000529 0.000043 0.000000
Jun 13 10:01:41 hostname pipewire[1702468]: 21 events suppressed
```
I am using Arch Linux with pipewire version 0.3.30-2, wireplumber version 0.4.0-2, and webrtc-audio-processing version 0.3.1-3https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1307Cannot connect Bluetooth headphones in Dual Channel SBC XQ2021-06-14T17:12:06ZaljazzairCannot connect Bluetooth headphones in Dual Channel SBC XQHello and thank you for the progress on this modern alternative to pulseaudio and jack.
.
I am posting this issue as a follow up on the below exchange some time ago, after trying several builds over time:
https://gitlab.freedesktop.org/...Hello and thank you for the progress on this modern alternative to pulseaudio and jack.
.
I am posting this issue as a follow up on the below exchange some time ago, after trying several builds over time:
https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/249#note_787631
I installed pipewire on a fresh manjaro VM, as a test bed before transitioning from a forked version of pulseaudio (using pali's enhancements) from all my machines.
.
Did the required configuration (including setting bluez5.sbc-xq-support=true).
My Bose 700 do connect in Joint Stereo however NOT in dual channel, not with the highest quality SBC XQ setting.
.
The same headphones are connected to the same dongle in SBC XQ Dual Channel using other software (bluez-alsa, pali's pulseaudio on manjaro, and also zenwalk) so it is not a hardware issue.
.
To help with diagnosing the problem I have just compiled the following files:
.
Attached file capabilitiesBose.txt is BTmon showing the Dual Channel capability is advertised by the headphones, and the successful SBC Dual Channel connection with other software solutions.
[capabilitiesBose.txt](/uploads/a5ee90666910944c21b07f6f78d768c5/capabilitiesBose.txt)
Attached file pwdump.txt is a pipewire dump.
[pwdump.txt](/uploads/ab8e9a74443b0ae9192d0a082070f9f8/pwdump.txt)
Attached file journalctlentries.txt is a couple of easier to read logs (grep a2dp and grep blue).
[journalctlentries.txt](/uploads/431715bdff16dd26f0688e392f598bfe/journalctlentries.txt)
Attached file failedDual-BTmon.txt shows the current bluetooth negotiation.
[failedDual-BTmon.txt](/uploads/f3261134b193dbd3d7c285fbe733596e/failedDual-BTmon.txt)
Attached file configs.txt shows the pipewire conf files.
[configs.txt](/uploads/fe694dc2583d2a30ce10f16bd8152b2e/configs.txt)
Attached pwinfoall.txt shows the output of pw-cli.
[pwinfoall.txt](/uploads/5a57598c77b9f08d80bacb59cf846e76/pwinfoall.txt)
Specs and software versions:
```
bluetoothctl --version
bluetoothctl: 5.58
```
```
uname -a
Linux testPC 5.10.41-1-MANJARO #1 SMP PREEMPT Fri May 28 19:10:32 UTC 2021 x86_64 GNU/Linux
Desktop env: XFCE
```
```
pipewire
Compiled with libpipewire 0.3.28
Linked with libpipewire 0.3.28
```
```
Bluetooth Radio
ID 046d:c709 Logitech, Inc. BT Mini-Receiver (HCI mode)
Bluetooth Headphones
Bose 700
```
As @pvir mentionned he can successfully use his headphones in Dual Channel mode, I am hoping this can be done as well with the Bose headphones, and would appreciate any guidance. Thank you.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1309Source is created twice when using source-rnnoise.conf2021-07-20T14:32:04ZEduard TolosaSource is created twice when using source-rnnoise.confVersion, Distribution, Desktop Environment: 0.3.30. ArchLinux
Description of Problem: Pipewire creates input source twice when using https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/master/src/daemon/filter-chain/source-rnnoise....Version, Distribution, Desktop Environment: 0.3.30. ArchLinux
Description of Problem: Pipewire creates input source twice when using https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/master/src/daemon/filter-chain/source-rnnoise.conf for noise cancellation but only one works. The problem with this is that having two sources with the same name - but where only one works, causes applications that have been configured to use that source to fail the next time the system boots because they do not know what the true source is (the one that works).
How Reproducible: Always.
Steps to Reproduce:
1. Add the source-rnnoise.conf config options to your pipewire.conf, my pipewire.conf is: [pipewire.conf](/uploads/2c2a93ad79e60d99ab17d5d63efd9f1d/pipewire.conf)
2. Restart the pipewire user's services.
3. Look Pavucontrol -> Input Devices
Actual Results: "Noise Cancelling source" is created twice:
![image](/uploads/87d2daea70d26e100b264740b1100306/image.png)
Expected Results: "Noise Cancelling source" is created once.
Additional Info Eg. `pw-dump -N > file` (As Attachment Please): [dump.txt](/uploads/87b6057286e6d5a8b5e68741a7a807d2/dump.txt)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1310My Line Out device randomly disappeared2021-07-22T05:01:23ZGuilhermeMy Line Out device randomly disappearedVersion, Distribution, Desktop Environment:
* 0.3.30
* Arch Linux
* GNOME
Description of Problem:
I was just watching a video on mpv (on mute) and also listening to music on MPD (Music Player Daemon) and suddenly I noticed I had no o...Version, Distribution, Desktop Environment:
* 0.3.30
* Arch Linux
* GNOME
Description of Problem:
I was just watching a video on mpv (on mute) and also listening to music on MPD (Music Player Daemon) and suddenly I noticed I had no output devices anymore. System journal logs right before the "disappearance" of Line Out:
```
jun 15 01:44:04 arch gnome-shell[743]: Can't update stage views actor MetaWindowGroup is on because it needs an allocation.
jun 15 01:44:04 arch gnome-shell[743]: Can't update stage views actor MetaWindowActorX11 is on because it needs an allocation.
jun 15 01:44:04 arch gnome-shell[743]: Can't update stage views actor MetaSurfaceActorX11 is on because it needs an allocation.
jun 15 01:45:12 arch pipewire-pulse[781]: pulse-server 0x55eddf97e140: [mpv] UNDERFLOW channel:0 offset:8727872 underrun:15056
jun 15 01:46:28 arch mpd-mpris[1064]: 2021/06/15 01:46:28 Play/Pause requested. Switching context...
jun 15 01:46:28 arch mpd-mpris[1064]: 2021/06/15 01:46:28 Pause requested
jun 15 01:48:01 arch pipewire[778]: (alsa_output.pci-0000_00_1b.0.analog-stereo-49) XRun! rate:1024/48000 count:9 time:51672743697 delay:5054638189 max:5054638189
jun 15 01:48:59 arch pipewire-pulse[781]: pulse-server 0x55eddf8fef30: [mpv] UNDERFLOW channel:0 offset:8740864 underrun:16384
jun 15 01:51:19 arch systemd[663]: Started VTE child process 96381 launched by gnome-terminal-server process 94827.
jun 15 01:52:03 arch systemd[663]: app-gnome-chromium-21438.scope: Deactivated successfully.
jun 15 01:52:23 arch systemd[663]: Started Application launched by gnome-shell.
jun 15 01:53:54 arch chromium.desktop[96936]: Fontconfig error: Cannot load default config file: No such file: (null)
jun 15 01:53:58 arch pipewire-pulse[781]: pulse-server 0x55eddf9d9e50: [mpv] UNDERFLOW channel:0 offset:1155072 underrun:16384
jun 15 01:54:36 arch mpv[97261]: g_dbus_connection_emit_signal: assertion 'G_IS_DBUS_CONNECTION (connection)' failed
jun 15 01:54:58 arch chromium.desktop[96980]: Fontconfig error: Cannot load default config file: No such file: (null)
jun 15 01:56:05 arch chromium.desktop[97378]: Fontconfig error: Cannot load default config file: No such file: (null)
jun 15 01:58:16 arch chromium.desktop[97630]: Fontconfig error: Cannot load default config file: No such file: (null)
jun 15 02:02:16 arch pipewire[778]: 1 events suppressed
jun 15 02:02:16 arch pipewire[778]: (alsa_output.pci-0000_00_1b.0.analog-stereo-49) XRun! rate:1024/48000 count:10 time:57580881774 delay:1535280 max:5054638189
jun 15 02:02:22 arch mpv[98014]: g_dbus_connection_emit_signal: assertion 'G_IS_DBUS_CONNECTION (connection)' failed
jun 15 02:03:29 arch pipewire-pulse[781]: pulse-server 0x55eddf9ce4b0: [mpv] UNDERFLOW channel:0 offset:2210272 underrun:15056
jun 15 02:06:06 arch pipewire-pulse[781]: pulse-server 0x55eddf951050: [mpv] UNDERFLOW channel:0 offset:33906688 underrun:16384
jun 15 02:07:03 arch pipewire-pulse[781]: pulse-server 0x55eddf954700: [mpv] UNDERFLOW channel:0 offset:11198464 underrun:16384
jun 15 02:07:38 arch pipewire[778]: 1 events suppressed
jun 15 02:08:39 arch pipewire-pulse[781]: pulse-server 0x55eddf8b9f40: [mpv] UNDERFLOW channel:0 offset:32497664 underrun:16384
jun 15 02:09:52 arch pipewire-pulse[781]: pulse-server 0x55eddf954420: [mpv] UNDERFLOW channel:0 offset:18440192 underrun:16384
jun 15 02:11:50 arch pipewire-pulse[781]: pulse-server 0x55eddf9024f0: [mpv] UNDERFLOW channel:0 offset:7692288 underrun:16384
jun 15 02:12:32 arch pipewire-pulse[781]: pulse-server 0x55eddf97f750: [mpv] UNDERFLOW channel:0 offset:7430144 underrun:16384
jun 15 02:13:31 arch gsd-media-keys[894]: Unable to get default sink
jun 15 02:13:31 arch gsd-media-keys[894]: Unable to get default source
jun 15 02:13:31 arch gsd-media-keys[894]: Unable to get default sink
jun 15 02:13:31 arch pipewire-media-session[780]: no node found for 66
jun 15 02:13:31 arch pipewire-pulse[781]: stream 0x55eddf91e840: error no node available
jun 15 02:13:31 arch pipewire-pulse[781]: pulse-server 0x55eddf7fcff0: [Music Player Daemon] ERROR command:-1 (invalid) tag:4294967295 error:25 (Input/output error)
jun 15 02:13:31 arch pipewire-media-session[780]: no node found for 66
jun 15 02:13:31 arch gsd-media-keys[894]: Unable to get default source
jun 15 02:13:31 arch gsd-media-keys[894]: Unable to get default sink
jun 15 02:13:32 arch gsd-media-keys[894]: Unable to get default source
jun 15 02:13:32 arch gsd-media-keys[894]: Unable to get default sink
jun 15 02:13:32 arch gsd-media-keys[894]: Unable to get default source
jun 15 02:13:32 arch gsd-media-keys[894]: Unable to get default sink
jun 15 02:13:32 arch gsd-media-keys[894]: Unable to get default source
jun 15 02:13:32 arch gsd-media-keys[894]: Unable to get default sink
jun 15 02:13:32 arch gsd-media-keys[894]: Unable to get default source
jun 15 02:13:32 arch gsd-media-keys[894]: Unable to get default sink
jun 15 02:13:32 arch gsd-media-keys[894]: Unable to get default source
jun 15 02:13:33 arch gsd-media-keys[894]: Unable to get default sink
jun 15 02:13:33 arch gsd-media-keys[894]: Unable to get default source
jun 15 02:13:33 arch gsd-media-keys[894]: Unable to get default sink
jun 15 02:13:33 arch gsd-media-keys[894]: Unable to get default source
jun 15 02:13:33 arch gsd-media-keys[894]: Unable to get default sink
jun 15 02:13:33 arch gsd-media-keys[894]: Unable to get default source
jun 15 02:13:33 arch gsd-media-keys[894]: Unable to get default sink
jun 15 02:13:33 arch gsd-media-keys[894]: Unable to get default source
jun 15 02:13:33 arch gsd-media-keys[894]: Unable to get default sink
jun 15 02:13:36 arch gsd-media-keys[894]: Unable to get default source
jun 15 02:13:36 arch gsd-media-keys[894]: Unable to get default sink
jun 15 02:16:25 arch mpd-mpris[1064]: 2021/06/15 02:16:25 Play/Pause requested. Switching context...
jun 15 02:16:25 arch mpd-mpris[1064]: 2021/06/15 02:16:25 Play requested
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:25 arch pipewire-pulse[781]: pulse-server 0x55eddf77ce40: client:0x55eddf7fcff0 [Music Player Daemon] error -22 (Invalid argument)
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 42
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 43
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 44
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 45
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 46
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 47
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 48
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 49
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 50
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 51
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 52
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 53
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 54
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 55
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 56
jun 15 02:16:33 arch mpd-mpris[1064]: 2021/06/15 02:16:33 Volume changed to 55
jun 15 02:16:34 arch mpd-mpris[1064]: 2021/06/15 02:16:34 Volume changed to 54
jun 15 02:16:34 arch mpd-mpris[1064]: 2021/06/15 02:16:34 Volume changed to 53
jun 15 02:16:34 arch mpd-mpris[1064]: 2021/06/15 02:16:34 Volume changed to 51
jun 15 02:16:34 arch mpd-mpris[1064]: 2021/06/15 02:16:34 Volume changed to 50
jun 15 02:16:34 arch mpd-mpris[1064]: 2021/06/15 02:16:34 Volume changed to 49
jun 15 02:16:34 arch mpd-mpris[1064]: 2021/06/15 02:16:34 Volume changed to 47
jun 15 02:16:34 arch mpd-mpris[1064]: 2021/06/15 02:16:34 Volume changed to 46
jun 15 02:16:34 arch mpd-mpris[1064]: 2021/06/15 02:16:34 Volume changed to 45
jun 15 02:16:34 arch mpd-mpris[1064]: 2021/06/15 02:16:34 Volume changed to 44
jun 15 02:16:34 arch mpd-mpris[1064]: 2021/06/15 02:16:34 Volume changed to 43
jun 15 02:16:35 arch mpd-mpris[1064]: 2021/06/15 02:16:35 Play/Pause requested. Switching context...
jun 15 02:16:35 arch mpd-mpris[1064]: 2021/06/15 02:16:35 Pause requested
jun 15 02:16:35 arch mpd-mpris[1064]: 2021/06/15 02:16:35 Play/Pause requested. Switching context...
jun 15 02:16:35 arch mpd-mpris[1064]: 2021/06/15 02:16:35 Play requested
jun 15 02:17:50 arch pipewire-media-session[780]: no node found for 90
jun 15 02:17:50 arch pipewire-pulse[781]: stream 0x55eddf858f20: error no node available
jun 15 02:17:50 arch pipewire-pulse[781]: pulse-server 0x55eddf980640: [Chromium] ERROR command:-1 (invalid) tag:2 error:25 (Input/output error)
jun 15 02:17:50 arch chromium.desktop[97428]: [97428:97428:0615/021750.379233:ERROR:pulse_util.cc(343)] pa_operation is nullptr.
jun 15 02:17:52 arch pipewire-media-session[780]: no node found for 90
jun 15 02:17:52 arch pipewire-pulse[781]: stream 0x55eddf858f20: error no node available
jun 15 02:17:52 arch pipewire-pulse[781]: pulse-server 0x55eddf9ed9e0: [Chromium] ERROR command:-1 (invalid) tag:2 error:25 (Input/output error)
jun 15 02:17:52 arch chromium.desktop[97428]: [97428:97428:0615/021752.398243:ERROR:pulse_util.cc(343)] pa_operation is nullptr.
jun 15 02:17:52 arch pipewire-media-session[780]: no node found for 90
jun 15 02:17:52 arch pipewire-pulse[781]: stream 0x55eddf858f20: error no node available
jun 15 02:17:52 arch chromium.desktop[97428]: [97428:97428:0615/021752.595394:ERROR:pulse_util.cc(343)] pa_operation is nullptr.
jun 15 02:17:52 arch pipewire-pulse[781]: pulse-server 0x55eddf9219c0: [Chromium] ERROR command:-1 (invalid) tag:2 error:25 (Input/output error)
jun 15 02:24:32 arch systemd[663]: Started Application launched by gsd-media-keys.
jun 15 02:24:32 arch systemd[663]: Started VTE child process 99779 launched by gnome-terminal-server process 94827.
jun 15 02:24:32 arch systemd[663]: app-gnome-gnome\x2dterminal-99773.scope: Deactivated successfully.
```
How Reproducible:
This never happened before.
Steps to Reproduce:
N/A
Actual Results:
N/A
Expected Results:
To always have a working output device...?
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):
[pw-dump.txt](/uploads/011a8de6e6c14836b8f9a0777c17e5a2/pw-dump.txt)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1311How to set device output format?2022-08-25T16:34:51ZSteve ParrisHow to set device output format?On a target system with HDMI audio there are two output formats supported (s32le and s16le). Pipewire always seems to use s32le. How can i set/enforce s16le output? There is no sound output with s32le so i want to test s16le.
I've teste...On a target system with HDMI audio there are two output formats supported (s32le and s16le). Pipewire always seems to use s32le. How can i set/enforce s16le output? There is no sound output with s32le so i want to test s16le.
I've tested this on my local system with loopback device:
```
$ pw-cli e 49 EnumFormat
Object: size 240, type Spa:Pod:Object:Param:Format (262147), id Spa:Enum:ParamId:EnumFormat (3)
Prop: key Spa:Pod:Object:Param:Format:mediaType (1), flags 00000000
Id 1 (Spa:Enum:MediaType:audio)
Prop: key Spa:Pod:Object:Param:Format:mediaSubtype (2), flags 00000000
Id 1 (Spa:Enum:MediaSubtype:raw)
Prop: key Spa:Pod:Object:Param:Format:Audio:format (65537), flags 00000000
Choice: type Spa:Enum:Choice:Enum, flags 00000000 44 4
Id 267 (Spa:Enum:AudioFormat:S32LE)
Id 267 (Spa:Enum:AudioFormat:S32LE)
Id 268 (Spa:Enum:AudioFormat:S32BE)
Id 263 (Spa:Enum:AudioFormat:S24_32LE)
Id 271 (Spa:Enum:AudioFormat:S24LE)
Id 259 (Spa:Enum:AudioFormat:S16LE)
Id 260 (Spa:Enum:AudioFormat:S16BE)
Prop: key Spa:Pod:Object:Param:Format:Audio:rate (65539), flags 00000000
Choice: type Spa:Enum:Choice:Range, flags 00000000 28 4
Int 48000
Int 8000
Int 192000
Prop: key Spa:Pod:Object:Param:Format:Audio:channels (65540), flags 00000000
Choice: type Spa:Enum:Choice:None, flags 00000000 20 4
Int 2
Prop: key Spa:Pod:Object:Param:Format:Audio:position (65541), flags 00000000
Array: child.size 4, child.type Spa:Id
Id 3 (Spa:Enum:AudioChannel:FL)
Id 4 (Spa:Enum:AudioChannel:FR)
```
These are some commands i've tested. They don't work (`pw-cli e 49 4` still shows S32LE). I do not really have a clue though how it should be done. Any help appreciated.
```
$ pactl set-sink-formats 49 'pcm, format = "[ S16LE ]"'
Failure: Not supported
$ pw-cli set-param 49 4 { format: "S16LE" }
Object: size 32, type Spa:Pod:Object:Param:Format (262147), id Spa:Enum:ParamId:Format (4)
Prop: key Spa:Pod:Object:Param:Format:Audio:format (65537), flags 00000000
Id 259 (Spa:Enum:AudioFormat:S16LE)
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1312mitigate compiler warnings in pwtest.c2021-06-21T07:17:22ZSourav Dassouravdas142@gmail.commitigate compiler warnings in pwtest.c
On only gcc 9.3.0, shows below warning
```bash
[352/611] cc -o src/tools/pw-dump 'src/tools/00c74c6@@pw-dump@exe/pw-dump.c.o' -flto -Wl,--as-needed -Wl,--no-undefined -pie -g -O2 -fdebug-prefix-map=/home/sdas/git/tmp/pipewire-0.3.30=....
On only gcc 9.3.0, shows below warning
```bash
[352/611] cc -o src/tools/pw-dump 'src/tools/00c74c6@@pw-dump@exe/pw-dump.c.o' -flto -Wl,--as-needed -Wl,--no-undefined -pie -g -O2 -fdebug-prefix-map=/home/sdas/git/tmp/pipewire-0.3.30=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -Wl,-z,defs -Wl,--as-needed -Wl,--start-group src/pipewire/libpipewire-0.3.so.0.330.0 -pthread -lm -Wl,--end-group '-Wl,-rpath,$ORIGIN/../pipewire' -Wl,-rpath-link,/home/sdas/git/tmp/pipewire-0.3.30/obj-x86_64-linux-gnu/src/pipewire
../src/tools/pw-dump.c: In function ‘json_dump_val’:
lto1: warning: ‘strnlen’ specified bound [18446744071562067968, 18446744073709551615] exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
```
On any version of gcc, shows the warnings.
```bash
[557/611] cc -Itest/9f86d08@@pwtest@sta -Itest -I../test -Ispa/include -I../spa/include -Isrc -I../src -I. -I../ -I../include -flto -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -Werror=suggest-attribute=format -Wsign-compare -Wpointer-arith -Wpointer-sign -Wformat -Wformat-security -Wimplicit-fallthrough -Wmissing-braces -Wtype-limits -Wvariadic-macros -Wno-missing-field-initializers -Wno-unused-parameter -Wno-pedantic -Wold-style-declaration -Wunused-result -DFASTPATH -g -O2 -fdebug-prefix-map=/home/sdas/git/tmp/pipewire-0.3.30=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread '-DBUILD_ROOT="/home/sdas/git/tmp/pipewire-0.3.30/obj-x86_64-linux-gnu"' '-DSOURCE_ROOT="/home/sdas/git/tmp/pipewire-0.3.30"' -MD -MQ 'test/9f86d08@@pwtest@sta/pwtest.c.o' -MF 'test/9f86d08@@pwtest@sta/pwtest.c.o.d' -o 'test/9f86d08@@pwtest@sta/pwtest.c.o' -c ../test/pwtest.c
../test/pwtest.c: In function ‘run_test’:
../test/pwtest.c:922:2: warning: ignoring return value of ‘chdir’, declared with attribute warn_unused_result [-Wunused-result]
922 | chdir(getenv("TMPDIR"));
| ^~~~~~~~~~~~~~~~~~~~~~~
../test/pwtest.c: In function ‘monitor_test_forked’:
../test/pwtest.c:878:10: warning: ignoring return value of ‘read’, declared with attribute warn_unused_result [-Wunused-result]
878 | (void)read(pidfd, &buf, sizeof(buf)); /* for timerfd fallback */
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
**Solution :**
For above on [test/pwtest.c#L922](https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/master/test/pwtest.c#L922) should we handle something like this? and for [test/pwtest.c#L878](https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/master/test/pwtest.c#L878) warnings can be handled by the similar solution and problem came after commits e01faf42a107fb824ba3f04ad6c976e5061a046b and 28f74dc6b23765f229e236964a8d069da1fee6d7
```bash
if (chdir(getenv("TMPDIR")) == -1){
// handle error/warning
}
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1313jack_port_get_aliases() blocks until the buffer size change callback returns2021-06-17T08:57:12Zalex-teejack_port_get_aliases() blocks until the buffer size change callback returnsIf you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
0.3.30, pipewire JACK dropin using arch linux
Description of Problem:
`jack_port_get_aliase...If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
0.3.30, pipewire JACK dropin using arch linux
Description of Problem:
`jack_port_get_aliases()` blocks until the buffer size change callback returns
How Reproducible:
not sure, it happened very randomly in my app
Steps to Reproduce:
1. wait for the JACK buffer size callback to be called and sleep in there
2. call `jack_port_get_aliases()` from another thread while the buffer size callback is sleeping
Actual Results:
looks like `jack_port_get_aliases()` blocks while buffer size callback is sleeping:
```
Thread 26 (Thread 0x7fffb57fa640 (LWP 1701274) "Zrythm"):
0 0x00007ffff6035a95 in clock_nanosleep@GLIBC_2.2.5 () at /usr/lib/libc.so.6
1 0x00007ffff603ac77 in nanosleep () at /usr/lib/libc.so.6
2 0x00007ffff7ee55f1 in g_usleep () at /usr/lib/libglib-2.0.so.0
3 0x0000555555ea26e6 in process_change_request (self=0x5555832f8370) at ../src/audio/engine_jack.c:197
4 0x0000555555ea2a66 in buffer_size_cb (nframes=2048, self=0x5555832f8370) at ../src/audio/engine_jack.c:263
5 0x00007ffff68b395b in () at /usr/lib/pipewire-0.3/jack/libjack.so.0
6 0x00007ffff7fb3d66 in () at /usr/lib/spa-0.2/support/libspa-support.so
7 0x00007ffff7fb2c66 in () at /usr/lib/spa-0.2/support/libspa-support.so
8 0x00007ffff7fb511b in () at /usr/lib/spa-0.2/support/libspa-support.so
9 0x00007ffff4d248f6 in () at /usr/lib/libpipewire-0.3.so.0
10 0x00007ffff6890259 in start_thread () at /usr/lib/libpthread.so.0
11 0x00007ffff606d5e3 in clone () at /usr/lib/libc.so.6
Thread 1 (Thread 0x7ffff1c0fb80 (LWP 1701249) "zrythm"):
0 0x00007ffff6899600 in __lll_lock_wait () at /usr/lib/libpthread.so.0
1 0x00007ffff6892580 in pthread_mutex_lock () at /usr/lib/libpthread.so.0
2 0x00007ffff4d24c9e in pw_thread_loop_lock () at /usr/lib/libpipewire-0.3.so.0
3 0x00007ffff68c1f7b in jack_port_get_aliases () at /usr/lib/pipewire-0.3/jack/libjack.so.0
4 0x0000555555e0c648 in ext_port_from_jack_port (jport=0x7fff98009030) at ../src/audio/ext_port.c:471
5 0x0000555555e0c851 in get_ext_ports_from_jack (type=TYPE_AUDIO, flow=FLOW_OUTPUT, hw=1, arr=0x7fffffffdb60, size=0x7fffffffdbc4) at ../src/audio/ext_port.c:536
6 0x0000555555e0ce66 in ext_ports_get (type=TYPE_AUDIO, flow=FLOW_OUTPUT, hw=true, arr=0x7fffffffdb60, size=0x7fffffffdbc4) at ../src/audio/ext_port.c:826
7 0x0000555555e17deb in hardware_processor_rescan_ext_ports (self=0x555582afc160) at ../src/audio/hardware_processor.c:195
8 0x00007ffff7ebc614 in () at /usr/lib/libglib-2.0.so.0
9 0x00007ffff7ebbf30 in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
10 0x00007ffff7f0fb59 in () at /usr/lib/libglib-2.0.so.0
11 0x00007ffff7eb9781 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
12 0x00007ffff730828e in g_application_run () at /usr/lib/libgio-2.0.so.0
13 0x0000555555dd8e7b in main (argc=1, argv=0x7fffffffdf38) at ../src/main.c:52
```
Expected Results:
`jack_port_get_aliases()` should not wait for buffer size callback to finish
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1314Microphone not working on USB-C headset2024-02-22T14:08:36Zbno1Microphone not working on USB-C headset## Version, Distribution, Desktop Environment:
Tried both 0.3.30 and the current master branch (61bcd4f98881d45a94767d6eef9cea41d58ebb73), Arch Linux, XFCE4 4.16.
## Description of Problem:
I have a [Samsung USB-C headset](https://www.s...## Version, Distribution, Desktop Environment:
Tried both 0.3.30 and the current master branch (61bcd4f98881d45a94767d6eef9cea41d58ebb73), Arch Linux, XFCE4 4.16.
## Description of Problem:
I have a [Samsung USB-C headset](https://www.samsung.com/us/mobile/mobile-accessories/phones/samsung-type-c-headphones-black-eo-ic100bbegus/) that was working fine on pulseaudio. On pipewire, the microphone doesn't work (no sound), and applications that try to play audio after I try to use the mic start freezing. I have to reconnect the headset to unfreeze them.
The headset has 2 profiles with mic enabled:
* Analog Stereo Output + Mono Input
* Digital Stereo (IEC958) Output + Mono Input
Both profiles were working on pulseaudio, and neither is working on pipewire.
I also get the following errors in journalctl:
When connecting the headset:
```
Jun 16 15:30:01 arch kernel: ucsi_acpi USBC000:00: ucsi_handle_connector_change: GET_CONNECTOR_STATUS failed (-5)
Jun 16 15:30:01 arch kernel: usb 1-7: new full-speed USB device number 9 using xhci_hcd
Jun 16 15:30:02 arch kernel: usb 1-7: not running at top speed; connect to a high speed hub
Jun 16 15:30:02 arch kernel: usb 1-7: New USB device found, idVendor=04e8, idProduct=a051, bcdDevice= 0.03
Jun 16 15:30:02 arch kernel: usb 1-7: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jun 16 15:30:02 arch kernel: usb 1-7: Product: USBC Headset
Jun 16 15:30:02 arch kernel: usb 1-7: Manufacturer: Samsung
Jun 16 15:30:02 arch kernel: usb 1-7: SerialNumber: 20190816
Jun 16 15:30:02 arch kernel: hid-generic 0003:04E8:A051.000C: No inputs registered, leaving
Jun 16 15:30:02 arch kernel: hid-generic 0003:04E8:A051.000C: hidraw5: USB HID v1.11 Device [Samsung USBC Headset] on usb-0000:00:14.0-7/input3
Jun 16 15:30:02 arch kernel: input: Samsung USBC Headset as /devices/pci0000:00/0000:00:14.0/usb1/1-7/1-7:1.4/0003:04E8:A051.000D/input/input43
Jun 16 15:30:02 arch mtp-probe[10043]: checking bus 1, device 9: "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-7"
Jun 16 15:30:02 arch mtp-probe[10043]: bus: 1, device: 9 was not an MTP device
Jun 16 15:30:02 arch kernel: hid-generic 0003:04E8:A051.000D: input,hidraw6: USB HID v1.11 Device [Samsung USBC Headset] on usb-0000:00:14.0-7/input4
Jun 16 15:30:02 arch upowerd[4322]: treating change event as add on /sys/devices/pci0000:00/0000:00:14.0/usb1/1-7
Jun 16 15:30:03 arch mtp-probe[12043]: checking bus 1, device 9: "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-7"
Jun 16 15:30:03 arch mtp-probe[12043]: bus: 1, device: 9 was not an MTP device
```
When using the microphone:
```
Jun 16 15:30:27 arch pipewire-pulse[4272]: pulse-server 0x55f8e51c48a0: [Firefox] UNDERFLOW channel:1 offset:12779520 underrun:4096
Jun 16 15:30:29 arch pipewire[4270]: set_hw_params: No space left on device
Jun 16 15:30:29 arch pipewire[4270]: (alsa_input.usb-Samsung_USBC_Headset_20190816-00.mono-fallback-73) suspended -> error (Start error: No space left on device)
Jun 16 15:30:29 arch pipewire[4270]: link 0x55b7dcba3500: one of the nodes is in error out:error in:suspended
Jun 16 15:30:29 arch pipewire-media-session[4271]: error id:10 seq:2450 res:-28 (No space left on device): Start error: No space left on device
Jun 16 15:30:29 arch kernel: usb 1-7: Not enough bandwidth for new device state.
Jun 16 15:30:29 arch kernel: usb 1-7: Not enough bandwidth for altsetting 2
Jun 16 15:30:29 arch kernel: usb 1-7: 1:2: usb_set_interface failed (-28)
```
when disconnecting the headset:
```
Jun 16 15:30:38 arch pipewire[4270]: alsa-pcm front:2: snd_pcm_drop No such device
Jun 16 15:30:38 arch kernel: usb 1-7: USB disconnect, device number 9
Jun 16 15:30:38 arch pipewire[4270]: front:2: close failed: No such device
Jun 16 15:30:38 arch pipewire-pulse[4272]: node 0x55f8e69842b0: set_param Spa:Enum:ParamId:PortConfig (11) 0x55f8e5baa3d0: Input/output error
Jun 16 15:30:38 arch pipewire[4270]: impl-core 0x55b7dca95710: error -5 for resource 33: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 16 15:30:38 arch pipewire[4270]: client-node 0x55b7dcbd55e0: error seq:2902 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 16 15:30:38 arch acpid[1359]: input device has been disconnected, fd 32
Jun 16 15:30:39 arch pipewire-pulse[4272]: 1 events suppressed
Jun 16 15:30:39 arch pipewire-pulse[4272]: pulse-server 0x55f8e51c48a0: [Firefox] UNDERFLOW channel:1 offset:98304 underrun:4096
```
## How Reproducible:
Always
## Steps to Reproduce:
1. Plug headset in.
2. Open pavucontrol, configure profile and set it as the default audio device.
3. Go to https://www.onlinemictest.com/ and test the mic
## Actual Results:
* No signal from the microphone
* Applications that play audio start freezing
## Expected Results:
* Mic to work and not to freeze applications
## Additional Info Eg. `pw-dump -N > file` (As Attachment Please):
[pw-dump.txt](/uploads/22994f9a7651d76dffa52c3b8e779ed4/pw-dump.txt)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1315Microphones are not working on Sony WH-1000XM4 in mSBC unless laptop's intern...2024-03-21T16:09:29ZTomáš PopelaMicrophones are not working on Sony WH-1000XM4 in mSBC unless laptop's internal microphone is unmutedWhen I connect my headphones through BlueTooth (Sony WH-1000XM4 here) they end up with the A2DP profile. I want to use them with mSBC, so what I do is change the profile in GNOME Control Center, but the thing is that unless I unmute the ...When I connect my headphones through BlueTooth (Sony WH-1000XM4 here) they end up with the A2DP profile. I want to use them with mSBC, so what I do is change the profile in GNOME Control Center, but the thing is that unless I unmute the internal laptop microphone before the switch the other side doesn't hear me (probably because the headphone microphones are muted). If I unmute the internal laptop microphone (in GNOME Control Center) and switch to mSBC, then they hear me well.
```
$ rpm -qa | grep "gnome-control-center\|pipewire\|gnome-settings-daemon"
gnome-control-center-filesystem-40.0-9.fc34.noarch
pipewire-libs-0.3.30-2.fc34.x86_64
pipewire-0.3.30-2.fc34.x86_64
pipewire-gstreamer-0.3.30-2.fc34.x86_64
pipewire-pulseaudio-0.3.30-2.fc34.x86_64
gnome-settings-daemon-40.0.1-1.fc34.x86_64
gnome-control-center-40.0-9.fc34.x86_64
pipewire-alsa-0.3.30-2.fc34.x86_64
pipewire-jack-audio-connection-kit-0.3.30-2.fc34.x86_64
pipewire-utils-0.3.30-2.fc34.x86_64
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1316Pulseaudio profile is not reset when unplugging HDMI cable2022-05-12T19:26:20ZNicolas FellaPulseaudio profile is not reset when unplugging HDMI cableMy Laptop has a single card that does internal + HDMI audio
When I plug a HDMI cable in the HDMI-related profiles become available and I can switch to one. When I unplug the cable again the profile becomes unavailable, but the card stil...My Laptop has a single card that does internal + HDMI audio
When I plug a HDMI cable in the HDMI-related profiles become available and I can switch to one. When I unplug the cable again the profile becomes unavailable, but the card still shows it as active profile. I'd expect it to switch to an available profile like the analog-stereo one.
Output of `pactl list cards` after unplugging the HDMI cable:
```
Card #41
Name: alsa_card.pci-0000_00_1f.3
Driver: alsa
Owner Module: n/a
Properties:
device.enum.api = "udev"
device.api = "alsa"
media.class = "Audio/Device"
api.alsa.path = "hw:0"
api.alsa.card = "0"
api.alsa.card.name = "HDA Intel PCH"
api.alsa.card.longname = "HDA Intel PCH at 0xec248000 irq 161"
device.plugged.usec = "12391427"
device.bus_path = "pci-0000:00:1f.3"
device.sysfs.path = "/sys/devices/pci0000:00/0000:00:1f.3/sound/card0"
device.bus = "pci"
device.subsystem = "sound"
device.vendor.id = "32902"
device.vendor.name = "Intel Corporation"
device.product.id = "40305"
device.product.name = "Sunrise Point-LP HD Audio"
device.form_factor = "internal"
device.name = "alsa_card.pci-0000_00_1f.3"
device.description = "Built-in Audio"
device.nick = "HDA Intel PCH"
device.icon_name = "audio-card-pci"
api.alsa.use-acp = "true"
api.acp.auto-profile = "false"
api.acp.auto-port = "false"
api.dbus.ReserveDevice1 = "Audio0"
factory.id = "14"
client.id = "31"
object.id = "41"
object.path = "alsa:pcm:0"
alsa.card = "0"
alsa.card_name = "HDA Intel PCH"
alsa.long_card_name = "HDA Intel PCH at 0xec248000 irq 161"
alsa.driver_name = "snd_hda_intel"
device.string = "0"
Profiles:
off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
output:analog-stereo+input:analog-stereo: Analog Stereo Duplex (sinks: 1, sources: 1, priority: 6565, available: yes)
output:analog-stereo: Analog Stereo Output (sinks: 1, sources: 0, priority: 6500, available: yes)
output:hdmi-stereo+input:analog-stereo: Digital Stereo (HDMI) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 5965, available: no)
output:hdmi-stereo: Digital Stereo (HDMI) Output (sinks: 1, sources: 0, priority: 5900, available: no)
output:hdmi-stereo-extra1+input:analog-stereo: Digital Stereo (HDMI 2) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 5765, available: no)
output:hdmi-stereo-extra2+input:analog-stereo: Digital Stereo (HDMI 3) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 5765, available: no)
output:hdmi-stereo-extra3+input:analog-stereo: Digital Stereo (HDMI 4) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 5765, available: no)
output:hdmi-stereo-extra4+input:analog-stereo: Digital Stereo (HDMI 5) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 5765, available: no)
output:hdmi-stereo-extra1: Digital Stereo (HDMI 2) Output (sinks: 1, sources: 0, priority: 5700, available: no)
output:hdmi-stereo-extra2: Digital Stereo (HDMI 3) Output (sinks: 1, sources: 0, priority: 5700, available: no)
output:hdmi-stereo-extra3: Digital Stereo (HDMI 4) Output (sinks: 1, sources: 0, priority: 5700, available: no)
output:hdmi-stereo-extra4: Digital Stereo (HDMI 5) Output (sinks: 1, sources: 0, priority: 5700, available: no)
output:hdmi-surround+input:analog-stereo: Digital Surround 5.1 (HDMI) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 865, available: no)
output:hdmi-surround71+input:analog-stereo: Digital Surround 7.1 (HDMI) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 865, available: no)
output:hdmi-surround: Digital Surround 5.1 (HDMI) Output (sinks: 1, sources: 0, priority: 800, available: no)
output:hdmi-surround71: Digital Surround 7.1 (HDMI) Output (sinks: 1, sources: 0, priority: 800, available: no)
output:hdmi-surround-extra1+input:analog-stereo: Digital Surround 5.1 (HDMI 2) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 665, available: no)
output:hdmi-surround71-extra1+input:analog-stereo: Digital Surround 7.1 (HDMI 2) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 665, available: no)
output:hdmi-surround-extra2+input:analog-stereo: Digital Surround 5.1 (HDMI 3) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 665, available: no)
output:hdmi-surround71-extra2+input:analog-stereo: Digital Surround 7.1 (HDMI 3) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 665, available: no)
output:hdmi-surround-extra3+input:analog-stereo: Digital Surround 5.1 (HDMI 4) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 665, available: no)
output:hdmi-surround71-extra3+input:analog-stereo: Digital Surround 7.1 (HDMI 4) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 665, available: no)
output:hdmi-surround-extra4+input:analog-stereo: Digital Surround 5.1 (HDMI 5) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 665, available: no)
output:hdmi-surround71-extra4+input:analog-stereo: Digital Surround 7.1 (HDMI 5) Output + Analog Stereo Input (sinks: 1, sources: 1, priority: 665, available: no)
output:hdmi-surround-extra1: Digital Surround 5.1 (HDMI 2) Output (sinks: 1, sources: 0, priority: 600, available: no)
output:hdmi-surround71-extra1: Digital Surround 7.1 (HDMI 2) Output (sinks: 1, sources: 0, priority: 600, available: no)
output:hdmi-surround-extra2: Digital Surround 5.1 (HDMI 3) Output (sinks: 1, sources: 0, priority: 600, available: no)
output:hdmi-surround71-extra2: Digital Surround 7.1 (HDMI 3) Output (sinks: 1, sources: 0, priority: 600, available: no)
output:hdmi-surround-extra3: Digital Surround 5.1 (HDMI 4) Output (sinks: 1, sources: 0, priority: 600, available: no)
output:hdmi-surround71-extra3: Digital Surround 7.1 (HDMI 4) Output (sinks: 1, sources: 0, priority: 600, available: no)
output:hdmi-surround-extra4: Digital Surround 5.1 (HDMI 5) Output (sinks: 1, sources: 0, priority: 600, available: no)
output:hdmi-surround71-extra4: Digital Surround 7.1 (HDMI 5) Output (sinks: 1, sources: 0, priority: 600, available: no)
input:analog-stereo: Analog Stereo Input (sinks: 0, sources: 1, priority: 65, available: yes)
pro-audio: Pro Audio (sinks: 6, sources: 1, priority: 1, available: yes)
Active Profile: output:hdmi-stereo-extra1+input:analog-stereo
Ports:
analog-input-internal-mic: Internal Microphone (type: Mic, priority: 8900, latency offset: 0 usec, availability group: Legacy 1, availability unknown)
Properties:
port.type = "mic"
port.availability-group = "Legacy 1"
device.icon_name = "audio-input-microphone"
card.profile.port = "0"
Part of profile(s): input:analog-stereo, output:analog-stereo+input:analog-stereo, output:hdmi-stereo+input:analog-stereo, output:hdmi-surround+input:analog-stereo, output:hdmi-surround71+input:analog-stereo, output:hdmi-stereo-extra1+input:analog-stereo, output:hdmi-surround-extra1+input:analog-stereo, output:hdmi-surround71-extra1+input:analog-stereo, output:hdmi-stereo-extra2+input:analog-stereo, output:hdmi-surround-extra2+input:analog-stereo, output:hdmi-surround71-extra2+input:analog-stereo, output:hdmi-stereo-extra3+input:analog-stereo, output:hdmi-surround-extra3+input:analog-stereo, output:hdmi-surround71-extra3+input:analog-stereo, output:hdmi-stereo-extra4+input:analog-stereo, output:hdmi-surround-extra4+input:analog-stereo, output:hdmi-surround71-extra4+input:analog-stereo
analog-input-mic: Microphone (type: Mic, priority: 8700, latency offset: 0 usec, availability group: Legacy 2, not available)
Properties:
port.type = "mic"
port.availability-group = "Legacy 2"
device.icon_name = "audio-input-microphone"
card.profile.port = "1"
Part of profile(s): input:analog-stereo, output:analog-stereo+input:analog-stereo, output:hdmi-stereo+input:analog-stereo, output:hdmi-surround+input:analog-stereo, output:hdmi-surround71+input:analog-stereo, output:hdmi-stereo-extra1+input:analog-stereo, output:hdmi-surround-extra1+input:analog-stereo, output:hdmi-surround71-extra1+input:analog-stereo, output:hdmi-stereo-extra2+input:analog-stereo, output:hdmi-surround-extra2+input:analog-stereo, output:hdmi-surround71-extra2+input:analog-stereo, output:hdmi-stereo-extra3+input:analog-stereo, output:hdmi-surround-extra3+input:analog-stereo, output:hdmi-surround71-extra3+input:analog-stereo, output:hdmi-stereo-extra4+input:analog-stereo, output:hdmi-surround-extra4+input:analog-stereo, output:hdmi-surround71-extra4+input:analog-stereo
analog-output-speaker: Speakers (type: Speaker, priority: 10000, latency offset: 0 usec, availability group: Legacy 3, availability unknown)
Properties:
port.type = "speaker"
port.availability-group = "Legacy 3"
device.icon_name = "audio-speakers"
card.profile.port = "2"
Part of profile(s): output:analog-stereo, output:analog-stereo+input:analog-stereo
analog-output-headphones: Headphones (type: Headphones, priority: 9900, latency offset: 0 usec, availability group: Legacy 4, not available)
Properties:
port.type = "headphones"
port.availability-group = "Legacy 4"
device.icon_name = "audio-headphones"
card.profile.port = "3"
Part of profile(s): output:analog-stereo, output:analog-stereo+input:analog-stereo
hdmi-output-0: HDMI / DisplayPort (type: HDMI, priority: 5900, latency offset: 0 usec, availability group: Legacy 5, not available)
Properties:
port.type = "hdmi"
port.availability-group = "Legacy 5"
device.icon_name = "video-display"
card.profile.port = "4"
Part of profile(s): output:hdmi-stereo, output:hdmi-stereo+input:analog-stereo, output:hdmi-surround, output:hdmi-surround+input:analog-stereo, output:hdmi-surround71, output:hdmi-surround71+input:analog-stereo
hdmi-output-1: HDMI / DisplayPort 2 (type: HDMI, priority: 5800, latency offset: 0 usec, availability group: Legacy 6, not available)
Properties:
port.type = "hdmi"
port.availability-group = "Legacy 6"
device.icon_name = "video-display"
card.profile.port = "5"
Part of profile(s): output:hdmi-stereo-extra1, output:hdmi-stereo-extra1+input:analog-stereo, output:hdmi-surround-extra1, output:hdmi-surround-extra1+input:analog-stereo, output:hdmi-surround71-extra1, output:hdmi-surround71-extra1+input:analog-stereo
hdmi-output-2: HDMI / DisplayPort 3 (type: HDMI, priority: 5700, latency offset: 0 usec, availability group: Legacy 7, not available)
Properties:
port.type = "hdmi"
port.availability-group = "Legacy 7"
device.icon_name = "video-display"
card.profile.port = "6"
Part of profile(s): output:hdmi-stereo-extra2, output:hdmi-stereo-extra2+input:analog-stereo, output:hdmi-surround-extra2, output:hdmi-surround-extra2+input:analog-stereo, output:hdmi-surround71-extra2, output:hdmi-surround71-extra2+input:analog-stereo
hdmi-output-3: HDMI / DisplayPort 4 (type: HDMI, priority: 5600, latency offset: 0 usec, availability group: Legacy 8, not available)
Properties:
port.type = "hdmi"
port.availability-group = "Legacy 8"
device.icon_name = "video-display"
card.profile.port = "7"
Part of profile(s): output:hdmi-stereo-extra3, output:hdmi-stereo-extra3+input:analog-stereo, output:hdmi-surround-extra3, output:hdmi-surround-extra3+input:analog-stereo, output:hdmi-surround71-extra3, output:hdmi-surround71-extra3+input:analog-stereo
hdmi-output-4: HDMI / DisplayPort 5 (type: HDMI, priority: 5500, latency offset: 0 usec, availability group: Legacy 9, not available)
Properties:
port.type = "hdmi"
port.availability-group = "Legacy 9"
device.icon_name = "video-display"
card.profile.port = "8"
Part of profile(s): output:hdmi-stereo-extra4, output:hdmi-stereo-extra4+input:analog-stereo, output:hdmi-surround-extra4, output:hdmi-surround-extra4+input:analog-stereo, output:hdmi-surround71-extra4, output:hdmi-surround71-extra4+input:analog-stereo
```
pipewire 0.3.30 on Manjaro KDE Plasmahttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1317Please document how to use echo cancellation2022-04-12T17:01:40ZAlexander PatrakovPlease document how to use echo cancellationIf you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment: pipewire 1:0.3.30-2 on Arch Linux, with Cinnamon
Description of Problem: There is absolutel...If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment: pipewire 1:0.3.30-2 on Arch Linux, with Cinnamon
Description of Problem: There is absolutely no documentation how to use pipewire-module-echo-cancel, and the defaults create issues with e.g. Skype.
How Reproducible: always
Steps to Reproduce: Go to https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/home or https://docs.pipewire.org/.
Actual Results: there is absolutely nothing about pipewire-module-echo-cancel, in many places this feature is still marked as a TODO item.
Expected Results: some documentation that explains the available module options.
OK, more details.
Now that pipewire supports echo cancellation, I thought, maybe it's time to switch my desktop setup. So, I loaded `pipewire-module-echo-cancel` from `pipewire.conf` without any arguments, and got two sources and two sinks with the name `pipewire` (this double-loading is likely an instance of #1309). Eventually I found that loading the module in `pipewire-pulse.conf` is a useful workaround. But then, if I select this new source in Skype (well, for no good reason), then next time it tries to record from the monitor of the echo-cancelled sink, and in some other cases there are non-movable streams in pavucontrol.
Eventually I figured out (can't recollect how exactly) that the "Skype wants to record from the monitor" problem stems from the echo-cancelled source and the echo-cancelled sink having the same node name. Then I spent a lot of time trying to set them in pipewire-pulse.conf - could not find any documentation or a working example. Eventually I had to resort to reading the source code, https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/master/src/modules/module-protocol-pulse/modules/module-echo-cancel.c, the `module_echo_cancel_load()` function, and trying to mimic the args structure that it creates. And the existing filter examples.
So I ended up with this:
```
{ name = libpipewire-module-echo-cancel
args = {
source.props = {
node.name = "echo-cancel.source"
node.description = "Echo Cancelled Mic"
}
sink.props = {
node.name = "echo-cancel.sink"
node.description = "Echo Cancelled Output"
}
}
}
```
This works (after I moved the echo-cancel streams to the correct sound card), but:
1. The echo canceler eats the CPU time even if there is no application recording or playing any sound.
2. The arguments mentioned in other examples, `node.passive` and `node.pause-on-idle`, do not do anything.
So, please provide a ready-made fully-working example.
Here is what I have now: [pipewire-pulse.conf](/uploads/a87ead1817aa8ee7200b33a1a2198afe/pipewire-pulse.conf)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1318USB audio cutting out when KDE volume control applet closed2023-08-29T15:42:20ZAleksandar KostadinovUSB audio cutting out when KDE volume control applet closedHi, I face a strange issue with Fedora 34. Sometimes USB audio (lenovo thunderbolt dock) starts to cut out horribly.
The strange thing I notice is that at the time I keep open the KDE Audio Volume applet, the cutting is completely gone ...Hi, I face a strange issue with Fedora 34. Sometimes USB audio (lenovo thunderbolt dock) starts to cut out horribly.
The strange thing I notice is that at the time I keep open the KDE Audio Volume applet, the cutting is completely gone for as long as I keep applet open. Once I close it, it goes to shambles again.
Any suggestions how to debug and fix?
```
🐚 rpm -qa pipewire*
pipewire0.2-libs-0.2.7-5.fc34.x86_64
pipewire-0.3.30-2.fc34.x86_64
pipewire-libs-0.3.30-2.fc34.x86_64
pipewire-pulseaudio-0.3.30-2.fc34.x86_64
pipewire-gstreamer-0.3.30-2.fc34.x86_64
pipewire-alsa-0.3.30-2.fc34.x86_64
pipewire-utils-0.3.30-2.fc34.x86_64
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1319pipewire causing laptop fan to run constantly2021-06-18T07:41:26ZTim Draperpipewire causing laptop fan to run constantlyrecently I got a new laptop and installed Fedora34 (didnt seem to matter if KDE or Gnome). I immediately noticed CPU fans would run constantly (95%+ duty cycle). Being unfamiliar with the laptop, I tried Ubuntu 20.10/21.04 and noticed th...recently I got a new laptop and installed Fedora34 (didnt seem to matter if KDE or Gnome). I immediately noticed CPU fans would run constantly (95%+ duty cycle). Being unfamiliar with the laptop, I tried Ubuntu 20.10/21.04 and noticed the fans are typically off (5% duty cycle).
I've now installed Fedora35 (KDE, rawhide) to look into the issue again and the constantly running fan is back.
After some diagnosing, it appears to be something about 'pipewire' process. It appears that when the fans come on and pipewire process is running, the fans will not turn off.
![Screenshot_20210617_182833](/uploads/d4c683585111d2b6caf1a35a42646e39/Screenshot_20210617_182833.png)
If i 'killall -9 pipewire' then within moments, the fans will turn off and fans then appear to act normally.
![Screenshot_20210617_183034](/uploads/04063a0c6416ad0ac0b5d9505ceea6e9/Screenshot_20210617_183034.png)
just noticed i haven't included top. CPU time is fully idle (0-5% load at most) so it's not a bad process.
as i'm sure you're aware, after killall then pw-top will close. if i rerun it, then pipewire process will return.
as per screenshots of before & after killall; i've included pw-top, lm-sensors filtered to fan rpm, dmesg of audio hardware (incase it's an audio issue), and powertop.
Laptop is Dell XPS13 9305, i5 1135G7, intel Xe iGPU.
What i have just noticed is that the laptop feels slightly warmer around the 'RTY' area of the keyboard. the 9305 appears to be based upon the 2019 XPS13 layout (https://laptopmedia.com/gb/comparisons/comparison-dell-xps-13-9300-2020-vs-dell-xps-13-7390-2019-whats-changed/) so looks like it could well be CPU/gpu related.
edit: gpu info could possible be useful:
````
$ glxinfo -B
name of display: :1
display: :1 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: Intel (0x8086)
Device: Mesa Intel(R) Xe Graphics (TGL GT2) (0x9a49)
Version: 21.1.2
Accelerated: yes
Video memory: 3072MB
Unified memory: yes
Preferred profile: core (0x1)
Max core profile version: 4.6
Max compat profile version: 4.6
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
OpenGL vendor string: Intel
OpenGL renderer string: Mesa Intel(R) Xe Graphics (TGL GT2)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 21.1.2
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 4.6 (Compatibility Profile) Mesa 21.1.2
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 21.1.2
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1320Issues with output switching after suspend2022-04-12T03:46:53ZSvetlozar ArgirovIssues with output switching after suspendVersion, Distribution, Desktop Environment:
------------------------------------------
0.3.30 , Fedora 34, Gnome 40.1.0
Description of Problem:
-----------------------
With the latest update to 0.3.30 (I think it was 0.3.29 before that...Version, Distribution, Desktop Environment:
------------------------------------------
0.3.30 , Fedora 34, Gnome 40.1.0
Description of Problem:
-----------------------
With the latest update to 0.3.30 (I think it was 0.3.29 before that), after suspend output switching doesn't work correctly anymore. I have the laptop speakers, one HDMI which I am using for sound and bluetooth headphones. When I boot my laptop everything works as expected, but after suspend and resume only the builtin speakers and the bluetooth headphones work, if I switch to the HDMI output, it shows in the UI that it has switched, but the sound continues to go trough whatever it was using before. Switching between the internal speakers and bluetooth works as expected .
How Reproducible:
-----------------
Every time
Steps to Reproduce:
-------------------
1. suspend laptop
2. resume
3. now HDMI outputs can be still selected, but the sound output doesn't actually change
Actual Results:
---------------
HDMI outputs cannot be used
Expected Results:
-----------------
HDMI outputs should work after suspend
Additional Info :
-----------------
[pw-dump.txt](/uploads/52a23065b2dcf83ac28a5cd5d2dba070/pw-dump.txt)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1321Bluetooth: device.profile seemingly ignored?2021-09-30T21:27:00ZYuriBluetooth: device.profile seemingly ignored?Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
* Aftershokz Opencomm headset
* bluez 5.55
* kernel 5.10.40
* pipewire 0.3.30
Description of Problem:
I'm trying to set the ...Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
* Aftershokz Opencomm headset
* bluez 5.55
* kernel 5.10.40
* pipewire 0.3.30
Description of Problem:
I'm trying to set the default profile to be "headset-head-unit", but the first connected profile I get is still always a2dp-sink. This is my current bluez-monitor.conf:
[bluez-monitor.conf](/uploads/ad300edb70edfb72000c1f39426ee0bb/bluez-monitor.conf)
How Reproducible:
Always.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1322Bluetooth: hfp requires one profile switch before recording works2021-10-01T09:06:48ZYuriBluetooth: hfp requires one profile switch before recording worksBluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
Aftershokz Opencomm headset
bluez 5.55
kernel 5.10.40
pipewire 0.3.30
Description of Problem:
On this headse...Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
Aftershokz Opencomm headset
bluez 5.55
kernel 5.10.40
pipewire 0.3.30
Description of Problem:
On this headset, on the first connection I have the a2dp-sink profile.
When I switch to any "HSP/HFP" profile (CVSD or mSBC) for the first time, the microphone doesn't seem to work.
You can see it even in the volume monitor in pavucontrol, the level is flat.
If I switch to another profile (from CVSD to mSBC or viceversa), I hear from the headset a click from the profile switch, and the mic starts to work.
So after the headset is connected, I'm always switching to CVSD first, then mSBC to get it working.
There are definitely issues with profile selection. I enabled mSCB on this headset. In order to reliably get all profiles (see #1045) I also have to use multiprofile=off in bluez's main.conf. The first profile I get on this headset is also always a2dp-sink despite my choice of headset (see #1321).
I exhumed the debian's package for pipewire 0.3.24, and I somehow this version doesn't have any of the above issues (or, they're more rare so I couldn't reproduce them). All profiles are always detected on start even with this old version of bluez, even with multiprofile=multiple. Switching to headset works on the first try.
Attaching my bluez-monitor.conf, just in case I'm doing something odd with the config:
[bluez-monitor.conf](/uploads/144cd85482522b61e6abc94ecf7258a9/bluez-monitor.conf)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1323pactl info: Connection failure: Connection refused, pulseaudio socket using h...2022-02-10T14:41:46Zxutax kamaypactl info: Connection failure: Connection refused, pulseaudio socket using home directory instead of /var/run ?If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
Using version 0.3.30.
I'm using Gentoo, on KDE Plasma; everything worked fine until I added ...If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
Using version 0.3.30.
I'm using Gentoo, on KDE Plasma; everything worked fine until I added quite a lot new use flags, so I can't go back and check what I added previously sadly.
Description of Problem:
I can't control sound through the plasma-pa widget which I could control before, I don't have any sound in normal conditions.
The reason I think is because the file created that should be in /var/run/pulse/native, is in fact in /home/myhome/pulse/native for some reasons, I guess this is the "fake" pulseaudio server socket used client applications such as plasma-pa.
I can control the sound/select sound card fine with alsamixer though.
Additional informations:
Here's the system calls trace of pactl info:
```
6101 execve("/usr/bin/pactl", ["pactl", "info"], 0x7ffe5d5e4120 /* 89 vars */) = 0
6101 brk(NULL) = 0x559ace208000
6101 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/glibc-hwcaps/x86-64-v3/libpulse.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "/usr/lib64/pulseaudio/glibc-hwcaps/x86-64-v3", 0x7ffd37ed3a50, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/glibc-hwcaps/x86-64-v2/libpulse.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "/usr/lib64/pulseaudio/glibc-hwcaps/x86-64-v2", 0x7ffd37ed3a50, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/tls/haswell/x86_64/libpulse.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "/usr/lib64/pulseaudio/tls/haswell/x86_64", 0x7ffd37ed3a50, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/tls/haswell/libpulse.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "/usr/lib64/pulseaudio/tls/haswell", 0x7ffd37ed3a50, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/tls/x86_64/libpulse.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "/usr/lib64/pulseaudio/tls/x86_64", 0x7ffd37ed3a50, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/tls/libpulse.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "/usr/lib64/pulseaudio/tls", 0x7ffd37ed3a50, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/haswell/x86_64/libpulse.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "/usr/lib64/pulseaudio/haswell/x86_64", 0x7ffd37ed3a50, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/haswell/libpulse.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "/usr/lib64/pulseaudio/haswell", 0x7ffd37ed3a50, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/x86_64/libpulse.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "/usr/lib64/pulseaudio/x86_64", 0x7ffd37ed3a50, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libpulse.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "/usr/lib64/pulseaudio", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
6101 openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
6101 newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=218642, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 218642, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f59eed27000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/libpulse.so.0", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300\327\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=349920, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f59eed25000
6101 mmap(NULL, 351272, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59eeccf000
6101 mprotect(0x7f59eecdb000, 294912, PROT_NONE) = 0
6101 mmap(0x7f59eecdb000, 200704, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7f59eecdb000
6101 mmap(0x7f59eed0c000, 90112, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3d000) = 0x7f59eed0c000
6101 mmap(0x7f59eed23000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x53000) = 0x7f59eed23000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libpulsecommon-13.0.so", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340n\1\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=560888, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 563928, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59eec45000
6101 mmap(0x7f59eec59000, 311296, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14000) = 0x7f59eec59000
6101 mmap(0x7f59eeca5000, 159744, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x60000) = 0x7f59eeca5000
6101 mmap(0x7f59eeccc000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x86000) = 0x7f59eeccc000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libX11-xcb.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/libX11-xcb.so.1", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\20\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=13912, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 16424, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59eec40000
6101 mmap(0x7f59eec41000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x7f59eec41000
6101 mmap(0x7f59eec42000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59eec42000
6101 mmap(0x7f59eec43000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59eec43000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libX11.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/libX11.so.6", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P\351\1\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1416504, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 1420616, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59eeae5000
6101 mprotect(0x7f59eeb01000, 1282048, PROT_NONE) = 0
6101 mmap(0x7f59eeb01000, 671744, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1c000) = 0x7f59eeb01000
6101 mmap(0x7f59eeba5000, 606208, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc0000) = 0x7f59eeba5000
6101 mmap(0x7f59eec3a000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x154000) = 0x7f59eec3a000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libxcb.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/libxcb.so.1", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \307\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=174824, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 177320, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59eeab9000
6101 mmap(0x7f59eeac5000, 86016, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7f59eeac5000
6101 mmap(0x7f59eeada000, 36864, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x21000) = 0x7f59eeada000
6101 mmap(0x7f59eeae3000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x29000) = 0x7f59eeae3000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libICE.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/libICE.so.6", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220X\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=110272, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 127176, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59eea99000
6101 mmap(0x7f59eea9e000, 65536, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5000) = 0x7f59eea9e000
6101 mmap(0x7f59eeaae000, 20480, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x7f59eeaae000
6101 mmap(0x7f59eeab3000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19000) = 0x7f59eeab3000
6101 mmap(0x7f59eeab5000, 12488, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f59eeab5000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libSM.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/libSM.so.6", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\"\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=38928, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f59eea97000
6101 mmap(NULL, 41320, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59eea8c000
6101 mmap(0x7f59eea8e000, 20480, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59eea8e000
6101 mmap(0x7f59eea93000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f59eea93000
6101 mmap(0x7f59eea95000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8000) = 0x7f59eea95000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libXtst.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/libXtst.so.6", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360!\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=26792, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 29240, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59eea84000
6101 mmap(0x7f59eea86000, 12288, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59eea86000
6101 mmap(0x7f59eea89000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5000) = 0x7f59eea89000
6101 mmap(0x7f59eea8a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5000) = 0x7f59eea8a000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libwrap.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/lib64/libwrap.so.0", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\3206\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=44608, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 48256, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59eea78000
6101 mmap(0x7f59eea7b000, 20480, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f59eea7b000
6101 mmap(0x7f59eea80000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8000) = 0x7f59eea80000
6101 mmap(0x7f59eea82000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9000) = 0x7f59eea82000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libasyncns.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/libasyncns.so.0", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\22\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=18336, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 20776, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59eea72000
6101 mmap(0x7f59eea73000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x7f59eea73000
6101 mmap(0x7f59eea75000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f59eea75000
6101 mmap(0x7f59eea76000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f59eea76000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libdbus-1.so.3", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/libdbus-1.so.3", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000\355\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=317056, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 319792, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59eea23000
6101 mprotect(0x7f59eea30000, 258048, PROT_NONE) = 0
6101 mmap(0x7f59eea30000, 188416, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xd000) = 0x7f59eea30000
6101 mmap(0x7f59eea5e000, 65536, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3b000) = 0x7f59eea5e000
6101 mmap(0x7f59eea6f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4b000) = 0x7f59eea6f000
6101 mmap(0x7f59eea71000, 304, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f59eea71000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libsndfile.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/libsndfile.so.1", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240y\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=672184, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 684192, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee97b000
6101 mmap(0x7f59ee982000, 507904, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f59ee982000
6101 mmap(0x7f59ee9fe000, 122880, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x83000) = 0x7f59ee9fe000
6101 mmap(0x7f59eea1c000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa0000) = 0x7f59eea1c000
6101 mmap(0x7f59eea20000, 8352, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f59eea20000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libgdbm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib64/libgdbm.so.6", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\208\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=64392, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f59ee979000
6101 mmap(NULL, 66616, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee968000
6101 mmap(0x7f59ee96b000, 36864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f59ee96b000
6101 mmap(0x7f59ee974000, 12288, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7f59ee974000
6101 mmap(0x7f59ee977000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe000) = 0x7f59ee977000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libpthread.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/lib64/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320k\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=148104, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 128048, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee948000
6101 mprotect(0x7f59ee94e000, 81920, PROT_NONE) = 0
6101 mmap(0x7f59ee94e000, 61440, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7f59ee94e000
6101 mmap(0x7f59ee95d000, 16384, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x7f59ee95d000
6101 mmap(0x7f59ee962000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19000) = 0x7f59ee962000
6101 mmap(0x7f59ee964000, 13360, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f59ee964000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libcap.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/lib64/libcap.so.2", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\3403\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=43320, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 45608, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee93c000
6101 mmap(0x7f59ee93f000, 20480, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f59ee93f000
6101 mmap(0x7f59ee944000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8000) = 0x7f59ee944000
6101 mmap(0x7f59ee946000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9000) = 0x7f59ee946000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/librt.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/lib64/librt.so.1", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360#\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=35560, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 39936, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee932000
6101 mmap(0x7f59ee934000, 16384, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59ee934000
6101 mmap(0x7f59ee938000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7f59ee938000
6101 mmap(0x7f59ee93a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f59ee93a000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/lib64/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\21\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=18424, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 20752, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee92c000
6101 mmap(0x7f59ee92d000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x7f59ee92d000
6101 mmap(0x7f59ee92f000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f59ee92f000
6101 mmap(0x7f59ee930000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f59ee930000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/lib64/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\322\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1247336, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 1249552, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee7fa000
6101 mmap(0x7f59ee807000, 569344, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xd000) = 0x7f59ee807000
6101 mmap(0x7f59ee892000, 622592, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x98000) = 0x7f59ee892000
6101 mmap(0x7f59ee92a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12f000) = 0x7f59ee92a000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libgomp.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/libgomp.so.1", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20\227\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=265672, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f59ee7f8000
6101 mmap(NULL, 268624, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee7b6000
6101 mmap(0x7f59ee7bf000, 176128, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9000) = 0x7f59ee7bf000
6101 mmap(0x7f59ee7ea000, 49152, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x34000) = 0x7f59ee7ea000
6101 mmap(0x7f59ee7f6000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3f000) = 0x7f59ee7f6000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/pulseaudio/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@9\2\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1790032, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 1803016, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee5fd000
6101 mmap(0x7f59ee61f000, 1318912, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x22000) = 0x7f59ee61f000
6101 mmap(0x7f59ee761000, 307200, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x164000) = 0x7f59ee761000
6101 mmap(0x7f59ee7ac000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1ae000) = 0x7f59ee7ac000
6101 mmap(0x7f59ee7b2000, 13064, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f59ee7b2000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/libXau.so.6", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\22\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=14280, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 16672, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee5f8000
6101 mmap(0x7f59ee5f9000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x7f59ee5f9000
6101 mmap(0x7f59ee5fa000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59ee5fa000
6101 mmap(0x7f59ee5fb000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59ee5fb000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/libXdmcp.so.6", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320!\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=26544, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 28912, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee5f0000
6101 mmap(0x7f59ee5f2000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59ee5f2000
6101 mmap(0x7f59ee5f4000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7f59ee5f4000
6101 mmap(0x7f59ee5f6000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5000) = 0x7f59ee5f6000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/libbsd.so.0", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240H\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=122128, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 128464, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee5d0000
6101 mmap(0x7f59ee5d4000, 86016, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7f59ee5d4000
6101 mmap(0x7f59ee5e9000, 16384, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19000) = 0x7f59ee5e9000
6101 mmap(0x7f59ee5ed000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1c000) = 0x7f59ee5ed000
6101 mmap(0x7f59ee5ef000, 1488, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f59ee5ef000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/lib64/libuuid.so.1", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000#\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=35136, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f59ee5ce000
6101 mmap(NULL, 37288, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee5c4000
6101 mmap(0x7f59ee5c6000, 20480, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59ee5c6000
6101 mmap(0x7f59ee5cb000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f59ee5cb000
6101 mmap(0x7f59ee5cc000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f59ee5cc000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/libXext.so.6", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320C\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=97744, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 100632, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee5ab000
6101 mmap(0x7f59ee5af000, 61440, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7f59ee5af000
6101 mmap(0x7f59ee5be000, 16384, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13000) = 0x7f59ee5be000
6101 mmap(0x7f59ee5c2000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16000) = 0x7f59ee5c2000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/libXi.so.6", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\"\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=71888, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 74184, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee598000
6101 mmap(0x7f59ee59a000, 49152, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59ee59a000
6101 mmap(0x7f59ee5a6000, 12288, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe000) = 0x7f59ee5a6000
6101 mmap(0x7f59ee5a9000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10000) = 0x7f59ee5a9000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/libnsl.so.2", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220Y\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=101456, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 113640, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee57c000
6101 mprotect(0x7f59ee581000, 77824, PROT_NONE) = 0
6101 mmap(0x7f59ee581000, 57344, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5000) = 0x7f59ee581000
6101 mmap(0x7f59ee58f000, 16384, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13000) = 0x7f59ee58f000
6101 mmap(0x7f59ee594000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x7f59ee594000
6101 mmap(0x7f59ee596000, 7144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f59ee596000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/lib64/libresolv.so.2", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260C\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=88624, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 100992, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee563000
6101 mprotect(0x7f59ee567000, 69632, PROT_NONE) = 0
6101 mmap(0x7f59ee567000, 53248, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7f59ee567000
6101 mmap(0x7f59ee574000, 12288, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x11000) = 0x7f59ee574000
6101 mmap(0x7f59ee578000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14000) = 0x7f59ee578000
6101 mmap(0x7f59ee57a000, 6784, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f59ee57a000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/lib64/libelogind.so.0", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\2208\1\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=716312, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 720568, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee4b3000
6101 mmap(0x7f59ee4c5000, 475136, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12000) = 0x7f59ee4c5000
6101 mmap(0x7f59ee539000, 151552, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x86000) = 0x7f59ee539000
6101 mmap(0x7f59ee55e000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xaa000) = 0x7f59ee55e000
6101 close(3) = 0
6101 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f59ee4b1000
6101 openat(AT_FDCWD, "/usr/lib64/libFLAC.so.8", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340\230\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=310160, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 312448, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee464000
6101 mprotect(0x7f59ee46d000, 270336, PROT_NONE) = 0
6101 mmap(0x7f59ee46d000, 225280, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9000) = 0x7f59ee46d000
6101 mmap(0x7f59ee4a4000, 40960, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x40000) = 0x7f59ee4a4000
6101 mmap(0x7f59ee4af000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4a000) = 0x7f59ee4af000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/libvorbis.so.0", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0006\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=272920, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 275208, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee420000
6101 mprotect(0x7f59ee423000, 258048, PROT_NONE) = 0
6101 mmap(0x7f59ee423000, 180224, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f59ee423000
6101 mmap(0x7f59ee44f000, 73728, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2f000) = 0x7f59ee44f000
6101 mmap(0x7f59ee462000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x41000) = 0x7f59ee462000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/libvorbisenc.so.2", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300@\1\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=702400, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 704688, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee373000
6101 mmap(0x7f59ee387000, 20480, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14000) = 0x7f59ee387000
6101 mmap(0x7f59ee38c000, 487424, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19000) = 0x7f59ee38c000
6101 mmap(0x7f59ee403000, 118784, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8f000) = 0x7f59ee403000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/libopus.so.0", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 3\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=551080, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 553368, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee2eb000
6101 mmap(0x7f59ee2ee000, 450560, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f59ee2ee000
6101 mmap(0x7f59ee35c000, 86016, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x71000) = 0x7f59ee35c000
6101 mmap(0x7f59ee371000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x85000) = 0x7f59ee371000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/usr/lib64/libogg.so.0", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\"\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=47104, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 49472, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee2de000
6101 mprotect(0x7f59ee2e0000, 36864, PROT_NONE) = 0
6101 mmap(0x7f59ee2e0000, 20480, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59ee2e0000
6101 mmap(0x7f59ee2e5000, 12288, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f59ee2e5000
6101 mmap(0x7f59ee2e9000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa000) = 0x7f59ee2e9000
6101 close(3) = 0
6101 openat(AT_FDCWD, "//usr/lib64/glibc-hwcaps/x86-64-v3/libtirpc.so.3", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "//usr/lib64/glibc-hwcaps/x86-64-v3", 0x7ffd37ed33c0, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "//usr/lib64/glibc-hwcaps/x86-64-v2/libtirpc.so.3", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "//usr/lib64/glibc-hwcaps/x86-64-v2", 0x7ffd37ed33c0, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "//usr/lib64/tls/haswell/x86_64/libtirpc.so.3", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "//usr/lib64/tls/haswell/x86_64", 0x7ffd37ed33c0, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "//usr/lib64/tls/haswell/libtirpc.so.3", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "//usr/lib64/tls/haswell", 0x7ffd37ed33c0, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "//usr/lib64/tls/x86_64/libtirpc.so.3", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "//usr/lib64/tls/x86_64", 0x7ffd37ed33c0, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "//usr/lib64/tls/libtirpc.so.3", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "//usr/lib64/tls", 0x7ffd37ed33c0, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "//usr/lib64/haswell/x86_64/libtirpc.so.3", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "//usr/lib64/haswell/x86_64", 0x7ffd37ed33c0, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "//usr/lib64/haswell/libtirpc.so.3", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "//usr/lib64/haswell", 0x7ffd37ed33c0, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "//usr/lib64/x86_64/libtirpc.so.3", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "//usr/lib64/x86_64", 0x7ffd37ed33c0, 0) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "//usr/lib64/libtirpc.so.3", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 newfstatat(AT_FDCWD, "//usr/lib64", {st_mode=S_IFDIR|0755, st_size=241664, ...}, 0) = 0
6101 openat(AT_FDCWD, "/lib64/libtirpc.so.3", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\221\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=197096, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f59ee2dc000
6101 mmap(NULL, 202512, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee2aa000
6101 mprotect(0x7f59ee2b2000, 159744, PROT_NONE) = 0
6101 mmap(0x7f59ee2b2000, 118784, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8000) = 0x7f59ee2b2000
6101 mmap(0x7f59ee2cf000, 36864, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x25000) = 0x7f59ee2cf000
6101 mmap(0x7f59ee2d9000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2e000) = 0x7f59ee2d9000
6101 mmap(0x7f59ee2db000, 1808, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f59ee2db000
6101 close(3) = 0
6101 openat(AT_FDCWD, "//usr/lib64/libgssapi_krb5.so.2", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20\325\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=342600, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 345376, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee255000
6101 mprotect(0x7f59ee261000, 282624, PROT_NONE) = 0
6101 mmap(0x7f59ee261000, 225280, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7f59ee261000
6101 mmap(0x7f59ee298000, 53248, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x43000) = 0x7f59ee298000
6101 mmap(0x7f59ee2a6000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x50000) = 0x7f59ee2a6000
6101 close(3) = 0
6101 openat(AT_FDCWD, "//usr/lib64/libkrb5.so.3", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20H\2\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=920912, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 923840, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee173000
6101 mmap(0x7f59ee195000, 425984, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x22000) = 0x7f59ee195000
6101 mmap(0x7f59ee1fd000, 294912, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8a000) = 0x7f59ee1fd000
6101 mmap(0x7f59ee245000, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xd1000) = 0x7f59ee245000
6101 close(3) = 0
6101 openat(AT_FDCWD, "//usr/lib64/libk5crypto.so.3", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220E\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=207560, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 213552, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee13e000
6101 mprotect(0x7f59ee142000, 188416, PROT_NONE) = 0
6101 mmap(0x7f59ee142000, 131072, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7f59ee142000
6101 mmap(0x7f59ee162000, 53248, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x24000) = 0x7f59ee162000
6101 mmap(0x7f59ee170000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x31000) = 0x7f59ee170000
6101 mmap(0x7f59ee172000, 560, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f59ee172000
6101 close(3) = 0
6101 openat(AT_FDCWD, "//usr/lib64/libcom_err.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/lib64/libcom_err.so.2", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200\"\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=18520, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 20864, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee138000
6101 mmap(0x7f59ee13a000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59ee13a000
6101 mmap(0x7f59ee13b000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f59ee13b000
6101 mmap(0x7f59ee13c000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f59ee13c000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/lib64/libmvec.so.1", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200!\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=174120, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 176328, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee10c000
6101 mmap(0x7f59ee10e000, 53248, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59ee10e000
6101 mmap(0x7f59ee11b000, 110592, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x7f59ee11b000
6101 mmap(0x7f59ee136000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x29000) = 0x7f59ee136000
6101 close(3) = 0
6101 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f59ee10a000
6101 openat(AT_FDCWD, "/usr/lib64/libkrb5support.so.0", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@6\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=56144, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 58760, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee0fb000
6101 mmap(0x7f59ee0fe000, 28672, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f59ee0fe000
6101 mmap(0x7f59ee105000, 12288, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa000) = 0x7f59ee105000
6101 mmap(0x7f59ee108000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7f59ee108000
6101 close(3) = 0
6101 openat(AT_FDCWD, "/lib64/libkeyutils.so.1", O_RDONLY|O_CLOEXEC) = 3
6101 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\"\0\0\0\0\0\0"..., 832) = 832
6101 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=22608, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 24896, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f59ee0f4000
6101 mmap(0x7f59ee0f6000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f59ee0f6000
6101 mmap(0x7f59ee0f8000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7f59ee0f8000
6101 mmap(0x7f59ee0f9000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7f59ee0f9000
6101 close(3) = 0
6101 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f59ee0f2000
6101 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f59ee0f0000
6101 mmap(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f59ee0ed000
6101 arch_prctl(ARCH_SET_FS, 0x7f59ee0ed8c0) = 0
6101 mprotect(0x7f59ee7ac000, 16384, PROT_READ) = 0
6101 mprotect(0x7f59ee962000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee930000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee7f6000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee0f9000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee578000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee108000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee92a000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee136000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee13c000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee170000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee245000, 53248, PROT_READ) = 0
6101 mprotect(0x7f59ee2a6000, 8192, PROT_READ) = 0
6101 mprotect(0x7f59ee2d9000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee2e9000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee371000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee462000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee403000, 114688, PROT_READ) = 0
6101 mprotect(0x7f59ee4af000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee946000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee55e000, 16384, PROT_READ) = 0
6101 mprotect(0x7f59ee594000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee5fb000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee5ed000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee5f6000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59eeae3000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59eec3a000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee5c2000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee5a9000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee5cc000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee93a000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59ee977000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59eea1c000, 12288, PROT_READ) = 0
6101 mprotect(0x7f59eea6f000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59eea76000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59eea82000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59eea8a000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59eeab3000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59eea95000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59eec43000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59eeccc000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59eed23000, 4096, PROT_READ) = 0
6101 mprotect(0x559acd8ba000, 4096, PROT_READ) = 0
6101 mprotect(0x7f59eed8c000, 8192, PROT_READ) = 0
6101 munmap(0x7f59eed27000, 218642) = 0
6101 set_tid_address(0x7f59ee0edb90) = 6101
6101 set_robust_list(0x7f59ee0edba0, 24) = 0
6101 rt_sigaction(SIGRTMIN, {sa_handler=0x7f59ee94e680, sa_mask=[], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7f59ee95a180}, NULL, 8) = 0
6101 rt_sigaction(SIGRT_1, {sa_handler=0x7f59ee94e720, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART|SA_SIGINFO, sa_restorer=0x7f59ee95a180}, NULL, 8) = 0
6101 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
6101 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
6101 openat(AT_FDCWD, "/sys/devices/system/cpu", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3
6101 newfstatat(3, "", {st_mode=S_IFDIR|0755, st_size=0, ...}, AT_EMPTY_PATH) = 0
6101 brk(NULL) = 0x559ace208000
6101 brk(0x559ace229000) = 0x559ace229000
6101 getdents64(3, 0x559ace2082d0 /* 27 entries */, 32768) = 784
6101 getdents64(3, 0x559ace2082d0 /* 0 entries */, 32768) = 0
6101 close(3) = 0
6101 sched_getaffinity(6101, 8, [0, 1, 2, 3, 4, 5, 6, 7]) = 8
6101 prctl(PR_CAPBSET_READ, CAP_MAC_OVERRIDE) = 1
6101 prctl(PR_CAPBSET_READ, 0x30 /* CAP_??? */) = -1 EINVAL (Invalid argument)
6101 prctl(PR_CAPBSET_READ, CAP_CHECKPOINT_RESTORE) = 1
6101 prctl(PR_CAPBSET_READ, 0x2c /* CAP_??? */) = -1 EINVAL (Invalid argument)
6101 prctl(PR_CAPBSET_READ, 0x2a /* CAP_??? */) = -1 EINVAL (Invalid argument)
6101 prctl(PR_CAPBSET_READ, 0x29 /* CAP_??? */) = -1 EINVAL (Invalid argument)
6101 openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
6101 newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=5951904, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 5951904, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f59edb3f000
6101 close(3) = 0
6101 pipe2([3, 4], O_CLOEXEC) = 0
6101 fcntl(3, F_GETFD) = 0x1 (flags FD_CLOEXEC)
6101 fcntl(4, F_GETFD) = 0x1 (flags FD_CLOEXEC)
6101 fcntl(3, F_GETFL) = 0 (flags O_RDONLY)
6101 fcntl(3, F_SETFL, O_RDONLY|O_NONBLOCK) = 0
6101 fcntl(4, F_GETFL) = 0x1 (flags O_WRONLY)
6101 fcntl(4, F_SETFL, O_WRONLY|O_NONBLOCK) = 0
6101 pipe2([5, 6], O_CLOEXEC) = 0
6101 fcntl(5, F_GETFD) = 0x1 (flags FD_CLOEXEC)
6101 fcntl(6, F_GETFD) = 0x1 (flags FD_CLOEXEC)
6101 fcntl(5, F_GETFL) = 0 (flags O_RDONLY)
6101 fcntl(5, F_SETFL, O_RDONLY|O_NONBLOCK) = 0
6101 fcntl(6, F_GETFL) = 0x1 (flags O_WRONLY)
6101 fcntl(6, F_SETFL, O_WRONLY|O_NONBLOCK) = 0
6101 sendto(4, "W", 1, MSG_NOSIGNAL, NULL, 0) = -1 ENOTSOCK (Socket operation on non-socket)
6101 write(4, "W", 1) = 1
6101 rt_sigaction(SIGINT, {sa_handler=0x7f59eecf3460, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f59ee95a180}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
6101 rt_sigaction(SIGTERM, {sa_handler=0x7f59eecf3460, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART, sa_restorer=0x7f59ee95a180}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
6101 rt_sigaction(SIGPIPE, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
6101 rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f59ee95a180}, NULL, 8) = 0
6101 getpid() = 6101
6101 getpid() = 6101
6101 openat(AT_FDCWD, "/home/kamay/.pulse/client.conf", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/home/kamay/.config/pulse/client.conf", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/etc/pulse/client.conf", O_RDONLY|O_CLOEXEC) = 7
6101 fcntl(7, F_GETFD) = 0x1 (flags FD_CLOEXEC)
6101 readlink("/proc/self/exe", "/usr/bin/pactl", 99) = 14
6101 openat(AT_FDCWD, "/usr/lib64/gconv/gconv-modules.cache", O_RDONLY) = 8
6101 newfstatat(8, "", {st_mode=S_IFREG|0644, st_size=26988, ...}, AT_EMPTY_PATH) = 0
6101 mmap(NULL, 26988, PROT_READ, MAP_SHARED, 8, 0) = 0x7f59eed56000
6101 close(8) = 0
6101 futex(0x7f59ee7b19bc, FUTEX_WAKE_PRIVATE, 2147483647) = 0
6101 newfstatat(7, "", {st_mode=S_IFREG|0644, st_size=1198, ...}, AT_EMPTY_PATH) = 0
6101 read(7, "# This file is part of PulseAudi"..., 4096) = 1198
6101 read(7, "", 4096) = 0
6101 openat(AT_FDCWD, "/etc/pulse/client.conf.d", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (No such file or directory)
6101 close(7) = 0
6101 openat(AT_FDCWD, "/dev/shm/", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 7
6101 newfstatat(7, "", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=40, ...}, AT_EMPTY_PATH) = 0
6101 getdents64(7, 0x559ace20b250 /* 2 entries */, 32768) = 48
6101 getdents64(7, 0x559ace20b250 /* 0 entries */, 32768) = 0
6101 close(7) = 0
6101 openat(AT_FDCWD, "/dev/urandom", O_RDONLY|O_NOCTTY|O_CLOEXEC) = 7
6101 fcntl(7, F_GETFD) = 0x1 (flags FD_CLOEXEC)
6101 read(7, "\207?jo", 4) = 4
6101 close(7) = 0
6101 memfd_create("pulseaudio", MFD_ALLOW_SEALING) = 7
6101 ftruncate(7, 67108864) = 0
6101 mmap(NULL, 67108864, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_NORESERVE, 7, 0) = 0x7f59e9b3f000
6101 openat(AT_FDCWD, "/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 8
6101 newfstatat(8, "", {st_mode=S_IFREG|0644, st_size=2998, ...}, AT_EMPTY_PATH) = 0
6101 read(8, "# Locale name alias data base.\n#"..., 4096) = 2998
6101 read(8, "", 4096) = 0
6101 close(8) = 0
6101 openat(AT_FDCWD, "/usr/share/locale/en_US.UTF-8/LC_MESSAGES/pulseaudio.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/share/locale/en_US.utf8/LC_MESSAGES/pulseaudio.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/share/locale/en_US/LC_MESSAGES/pulseaudio.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/share/locale/en.UTF-8/LC_MESSAGES/pulseaudio.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/share/locale/en.utf8/LC_MESSAGES/pulseaudio.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/share/locale/en/LC_MESSAGES/pulseaudio.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
6101 futex(0x7ffd37ed4724, FUTEX_UNLOCK_PI_PRIVATE) = -1 EPERM (Operation not permitted)
6101 getpid() = 6101
6101 getpid() = 6101
6101 newfstatat(AT_FDCWD, "/home/kamay", {st_mode=S_IFDIR|0750, st_size=12288, ...}, 0) = 0
6101 getuid() = 1000
6101 access("/home/kamay/.pulse", F_OK) = -1 ENOENT (No such file or directory)
6101 umask(077) = 022
6101 mkdir("/home/kamay/.config/pulse", 0700) = -1 EEXIST (File exists)
6101 umask(022) = 077
6101 openat(AT_FDCWD, "/home/kamay/.config/pulse", O_RDONLY|O_NOCTTY|O_NOFOLLOW|O_CLOEXEC) = 8
6101 newfstatat(8, "", {st_mode=S_IFDIR|0700, st_size=4096, ...}, AT_EMPTY_PATH) = 0
6101 getuid() = 1000
6101 getgid() = 1000
6101 close(8) = 0
6101 openat(AT_FDCWD, "/etc/machine-id", O_RDONLY|O_CLOEXEC) = 8
6101 fcntl(8, F_GETFD) = 0x1 (flags FD_CLOEXEC)
6101 newfstatat(8, "", {st_mode=S_IFREG|0644, st_size=33, ...}, AT_EMPTY_PATH) = 0
6101 read(8, "621da4be72bc07ac31f617d85fa5b8bb"..., 4096) = 33
6101 close(8) = 0
6101 readlink("/home/kamay/.config/pulse/621da4be72bc07ac31f617d85fa5b8bb-runtime", "/tmp/pulse-PKdhtXMmr18n", 99) = 23
6101 newfstatat(AT_FDCWD, "/tmp/pulse-PKdhtXMmr18n", {st_mode=S_IFDIR|0700, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0
6101 getuid() = 1000
6101 readlink("/home", 0x7ffd37ed3f10, 1023) = -1 EINVAL (Invalid argument)
6101 readlink("/home/kamay", 0x7ffd37ed3f10, 1023) = -1 EINVAL (Invalid argument)
6101 readlink("/home/kamay/.config", 0x7ffd37ed3f10, 1023) = -1 EINVAL (Invalid argument)
6101 readlink("/home/kamay/.config/pulse", 0x7ffd37ed3f10, 1023) = -1 EINVAL (Invalid argument)
6101 readlink("/home/kamay/.config/pulse/621da4be72bc07ac31f617d85fa5b8bb-runtime", "/tmp/pulse-PKdhtXMmr18n", 1023) = 23
6101 readlink("/tmp", 0x7ffd37ed3f10, 1023) = -1 EINVAL (Invalid argument)
6101 readlink("/tmp/pulse-PKdhtXMmr18n", 0x7ffd37ed3f10, 1023) = -1 EINVAL (Invalid argument)
6101 socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0) = 8
6101 fcntl(8, F_GETFD) = 0x1 (flags FD_CLOEXEC)
6101 setsockopt(8, SOL_SOCKET, SO_PRIORITY, [6], 4) = 0
6101 fcntl(8, F_GETFL) = 0x2 (flags O_RDWR)
6101 fcntl(8, F_SETFL, O_RDWR|O_NONBLOCK) = 0
6101 connect(8, {sa_family=AF_UNIX, sun_path="/tmp/pulse-PKdhtXMmr18n/native"}, 110) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/share/locale/en_US.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/share/locale/en_US.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/share/locale/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/share/locale/en.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/share/locale/en.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
6101 openat(AT_FDCWD, "/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
6101 close(8) = 0
6101 socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0) = 8
6101 fcntl(8, F_GETFD) = 0x1 (flags FD_CLOEXEC)
6101 setsockopt(8, SOL_SOCKET, SO_PRIORITY, [6], 4) = 0
6101 fcntl(8, F_GETFL) = 0x2 (flags O_RDWR)
6101 fcntl(8, F_SETFL, O_RDWR|O_NONBLOCK) = 0
6101 connect(8, {sa_family=AF_UNIX, sun_path="/var/run/pulse/native"}, 110) = -1 ENOENT (No such file or directory)
6101 close(8) = 0
6101 write(2, "Connection failure: Connection r"..., 39) = 39
6101 write(4, "W", 1) = 1
6101 write(2, "pa_context_connect() failed: Con"..., 48) = 48
6101 munmap(0x7f59e9b3f000, 67108864) = 0
6101 close(7) = 0
6101 rt_sigaction(SIGTERM, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f59ee95a180}, NULL, 8) = 0
6101 rt_sigaction(SIGINT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f59ee95a180}, NULL, 8) = 0
6101 write(4, "W", 1) = 1
6101 close(5) = 0
6101 close(6) = 0
6101 close(3) = 0
6101 close(4) = 0
6101 exit_group(1) = ?
6101 +++ exited with 1 +++
```
I think this is maybe an issue with PAM because I'm using cracklib instead for shadow system app but I'm not sure yet, checkinghttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1324Pipewire sometimes prevents suspend2022-07-18T16:56:20ZBjörn Daasebjoern.daase@gmail.comPipewire sometimes prevents suspendIf you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
* Fedora 34
* pipewire 0.30
* GNOME
Description of Problem:
Pipewire sometimes, but regul...If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
* Fedora 34
* pipewire 0.30
* GNOME
Description of Problem:
Pipewire sometimes, but regularly prevents the system from suspending.
This is the `dmesg` entry when this happens (the following gets printed over and over again)
```
[24326.604875] Freezing user space processes ...
[24346.612301] Freezing of tasks failed after 20.007 seconds (1 tasks refusing to freeze, wq_busy=0):
[24346.612377] task:pipewire-media- state:D stack: 0 pid: 2120 ppid: 1831 flags:0x00000224
[24346.612389] Call Trace:
[24346.612399] __schedule+0x2e2/0x930
[24346.612416] schedule+0x46/0xb0
[24346.612423] rwsem_down_write_slowpath+0x214/0x5b0
[24346.612433] ? dput+0xca/0x2f0
[24346.612442] ? __fsnotify_parent+0x10f/0x2e0
[24346.612455] snd_ctl_release+0x86/0x130 [snd]
[24346.612481] __fput+0x94/0x240
[24346.612491] task_work_run+0x65/0xa0
[24346.612501] exit_to_user_mode_prepare+0x218/0x220
[24346.612510] syscall_exit_to_user_mode+0x18/0x40
[24346.612520] entry_SYSCALL_64_after_hwframe+0x44/0xae
[24346.612532] RIP: 0033:0x7f80627499db
[24346.612538] RSP: 002b:00007ffeec798680 EFLAGS: 00000293 ORIG_RAX: 0000000000000003
[24346.612546] RAX: 0000000000000000 RBX: 0000563c04147720 RCX: 00007f80627499db
[24346.612552] RDX: 0000000000000002 RSI: 0000000563c0434a RDI: 000000000000001c
[24346.612557] RBP: 0000563c03d154a0 R08: 0000000000000000 R09: 0000000000000011
[24346.612561] R10: 00007ffeec7986bc R11: 0000000000000293 R12: 0000000000000000
[24346.612566] R13: 0000563c041109c0 R14: 0000563c042dc400 R15: 0000563c042dc400
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1325Hardware mute button mutes incorrect audio device when that device isn't active2021-06-21T18:17:43ZGert-devHardware mute button mutes incorrect audio device when that device isn't active## Version, Distribution, Desktop Environment:
* PipeWire: 0.3.30
* Distribution: Arch Linux x86-64
* Desktop Environment: GNOME
## Description of Problem:
I have USB speakers connected with a (hardware) mute button on the side. Using t...## Version, Distribution, Desktop Environment:
* PipeWire: 0.3.30
* Distribution: Arch Linux x86-64
* Desktop Environment: GNOME
## Description of Problem:
I have USB speakers connected with a (hardware) mute button on the side. Using this button works fine in PipeWire. However, if I switch to internal laptop speakers, pressing this button suddenly mutes/unmutes the internal laptop speakers instead of the USB speakers themselves, and also results in PipeWire getting confused about the USB speaker volume.
## How Reproducible:
Always.
## Steps to Reproduce:
1. Make USB speakers the active device.
2. Set the volume slider to e.g. 50%, so they can play sound.
3. Switch to different speakers, such as internal laptop speakers.
4. Press the physical mute button on the USB speakers.
## Actual Results:
* The USB speakers indicate physically they are muted (in my case the LED flickers), which is correct.
* In PipeWire/GNOME, my internal laptop speakers just became muted, even though only the USB speakers were supposed to mute.
* Also, switching back to the USB speakers as active device in GNOME, I see that they are _not_ muted according to GNOME and still have volume 50% set, i.e. the state in PipeWire is different from the actual speaker state.
## Expected Results:
* PipeWire mutes (just) the USB speakers.
* PipeWire does not mute the internal laptop speakers.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1326pipewiresink: assertion 'gst_buffer_is_writable (buffer)' failed2022-05-30T17:12:19ZRafał Dzięgielpipewiresink: assertion 'gst_buffer_is_writable (buffer)' failedGStreamer `pipewiresink` often crashes when seeking with failed assertions. Assertions are always preceded with lots of `queue empty` warnings from pipewirepool.
pipewire 0.3.30-git, GStreamer 1.18.4, Fedora 34, GNOME 40.1
How Reproduc...GStreamer `pipewiresink` often crashes when seeking with failed assertions. Assertions are always preceded with lots of `queue empty` warnings from pipewirepool.
pipewire 0.3.30-git, GStreamer 1.18.4, Fedora 34, GNOME 40.1
How Reproducible:
```sh
GST_DEBUG=*pipewire*:5 gst-play-1.0 --audiosink=pipewiresink "/tmp/test.aac"
```
Steps to Reproduce:
1. Run above command
2. Seek few times using keyboard arrows
3. Notice lots of warnings started appearing: `pipewirepool gstpipewirepool.c:184:acquire_buffer: queue empty`
4. Seek few more times
5. Crash
output:
```sh
0:00:14.803053836 46384 0x7fffc4036360 DEBUG pipewirepool gstpipewirepool.c:192:acquire_buffer: acquire buffer 0x7fffc8165480
(gst-play-1.0:46384): GStreamer-CRITICAL **: 16:37:00.568: gst_buffer_resize_range: assertion 'gst_buffer_is_writable (buffer)' failed
** (gst-play-1.0:46384): CRITICAL **: 16:37:00.569: gst_audio_buffer_map: assertion 'GST_IS_BUFFER (gstbuffer)' failed
(gst-play-1.0:46384): GStreamer-CRITICAL **: 16:37:00.569: gst_mini_object_unref: assertion 'GST_MINI_OBJECT_REFCOUNT_VALUE (mini_object) > 0' failed
WARNING could not copy metadata
WARNING debug information: ../libs/gst/base/gstbasetransform.c(1715): default_prepare_output_buffer (): /GstPlayBin:playbin/GstPlaySink:playsink/GstBin:abin/GstPlaySinkAudioConvert:aconv/GstAudioConvert:conv
ERROR The stream is in the wrong format. for file:///tmp/test.aac
ERROR debug information: ../gst/audioconvert/gstaudioconvert.c(881): gst_audio_convert_transform (): /GstPlayBin:playbin/GstPlaySink:playsink/GstBin:abin/GstPlaySinkAudioConvert:aconv/GstAudioConvert:conv:
failed to map output buffer
0:00:14.805344043 46384 0x5555559e7980 DEBUG pipewirepool gstpipewirepool.c:214:flush_start: flush start
0:00:14.805886410 46384 0x5555559e7980 DEBUG pipewiresink gstpipewiresink.c:473:on_state_changed: got stream state 2
(gst-play-1.0:46384): GStreamer-CRITICAL **: 16:37:00.571: gst_mini_object_unref: assertion 'GST_MINI_OBJECT_REFCOUNT_VALUE (mini_object) > 0' failed
0:00:14.806345227 46384 0x5555559e7980 DEBUG pipewiresink gstpipewiresink.c:473:on_state_changed: got stream state 0
```
gdb:
```c
(gst-play-1.0:45731): GStreamer-CRITICAL **: 16:19:04.224: gst_buffer_resize_range: assertion 'gst_buffer_is_writable (buffer)' failed
Thread 13 "aqueue:src" received signal SIGTRAP, Trace/breakpoint trap.
[Switching to Thread 0x7fffeffff640 (LWP 45745)]
0x00007ffff7d18647 in g_logv () from /lib64/libglib-2.0.so.0
(gdb) bt full
#0 0x00007ffff7d18647 in g_logv () at /lib64/libglib-2.0.so.0
#1 0x00007ffff7d18903 in g_log () at /lib64/libglib-2.0.so.0
#2 0x00007ffff7b61f89 in gst_buffer_resize_range () at /lib64/libgstreamer-1.0.so.0
#3 0x00007ffff62c3ea6 in gst_audio_convert_prepare_output_buffer () at /usr/lib64/gstreamer-1.0/libgstaudioconvert.so
#4 0x00007ffff77bfbc8 in default_generate_output.lto_priv () at /lib64/libgstbase-1.0.so.0
#5 0x00007ffff77c035c in gst_base_transform_chain.lto_priv () at /lib64/libgstbase-1.0.so.0
#6 0x00007ffff7b9e76d in gst_pad_chain_data_unchecked () at /lib64/libgstreamer-1.0.so.0
#7 0x00007ffff7ba1cc9 in gst_pad_push_data () at /lib64/libgstreamer-1.0.so.0
#8 0x00007ffff7ba20ee in gst_pad_push () at /lib64/libgstreamer-1.0.so.0
#9 0x00007ffff7b8a713 in gst_proxy_pad_chain_default () at /lib64/libgstreamer-1.0.so.0
#10 0x00007ffff7b9e76d in gst_pad_chain_data_unchecked () at /lib64/libgstreamer-1.0.so.0
#11 0x00007ffff7ba1cc9 in gst_pad_push_data () at /lib64/libgstreamer-1.0.so.0
#12 0x00007ffff7ba20ee in gst_pad_push () at /lib64/libgstreamer-1.0.so.0
#13 0x00007ffff61878cd in gst_queue_loop () at /usr/lib64/gstreamer-1.0/libgstcoreelements.so
#14 0x00007ffff7bc8fd7 in gst_task_func () at /lib64/libgstreamer-1.0.so.0
#15 0x00007ffff7d41b24 in g_thread_pool_thread_proxy.lto_priv () at /lib64/libglib-2.0.so.0
#16 0x00007ffff7d3ec32 in g_thread_proxy () at /lib64/libglib-2.0.so.0
#17 0x00007ffff7647299 in start_thread () at /lib64/libpthread.so.0
#18 0x00007ffff78fd6a3 in clone () at /lib64/libc.so.6
```
gdb backtrace from unref fail:
```c
Thread 1 "gst-play-1.0" received signal SIGSEGV, Segmentation fault.
0x00007ffff7b95d2e in gst_mini_object_unref () from /lib64/libgstreamer-1.0.so.0
(gdb) bt full
#0 0x00007ffff7b95d2e in gst_mini_object_unref () at /lib64/libgstreamer-1.0.so.0
#1 0x00007ffff6249fdb in clear_buffers (stream=stream@entry=0x555555852100) at ../src/pipewire/stream.c:686
_f = <optimized out>
list = 0x555555852168
s = 0x555555852168
cursor = {link = {next = 0x555555852168, prev = 0x555555817580}, cb = {funcs = 0x0, data = 0x0}, removed = 0x0, priv = 0x0}
ci = <optimized out>
count = <optimized out>
b = 0x5555558525a0
impl = 0x555555852100
i = 7
j = <optimized out>
__func__ = "clear_buffers"
#2 0x00007ffff624cdb8 in impl_port_set_param
(object=0x555555852100, direction=<optimized out>, port_id=<optimized out>, id=4, flags=<optimized out>, param=<optimized out>)
at ../src/pipewire/stream.c:743
impl = 0x555555852100
stream = 0x555555852100
res = <optimized out>
__func__ = "impl_port_set_param"
#3 0x00007fffdd25d60a in configure_format (this=this@entry=0x7fffdcea6038, format=format@entry=0x0, flags=0)
at ../spa/plugins/audioconvert/audioadapter.c:401
_f = <optimized out>
_res = -95
_n = <optimized out>
res = <optimized out>
__func__ = "configure_format"
#4 0x00007fffdd25e2da in impl_node_send_command (object=0x7fffdcea6038, command=0x7fffffffd400)
at ../spa/plugins/audioconvert/audioadapter.c:564
this = 0x7fffdcea6038
res = <optimized out>
__func__ = "impl_node_send_command"
#5 0x00007ffff622ec2c in suspend_node (this=0x7fffd801f340) at ../src/pipewire/impl-node.c:397
_f = <optimized out>
_res = -95
_n = <optimized out>
res = <optimized out>
p = <optimized out>
__func__ = "suspend_node"
__func__ = "suspend_node"
#6 suspend_node (this=0x7fffd801f340) at ../src/pipewire/impl-node.c:368
__func__ = "suspend_node"
#7 0x00007ffff6236850 in pw_impl_node_set_state (node=0x7fffd801f340, state=state@entry=PW_NODE_STATE_SUSPENDED)
at ../src/pipewire/impl-node.c:2090
res = 0
impl = 0x7fffd801f340
old = PW_NODE_STATE_RUNNING
__func__ = "pw_impl_node_set_state"
#8 0x00007ffff5666065 in client_node_removed (_data=0x7fffdce1d088) at ../src/modules/module-client-node/remote-node.c:1103
data = 0x7fffdce1d088
__func__ = "client_node_removed"
#9 0x00007ffff6247e18 in pw_proxy_destroy (proxy=0x7fffdce1d010) at ../src/pipewire/proxy.c:254
_f = <optimized out>
list = 0x7fffdce1d058
s = 0x7fffdce1d058
cursor = {link = {next = 0x555555852180, prev = 0x7fffdce1d058}, cb = {funcs = 0x0, data = 0x0}, removed = 0x0, priv = 0x0}
ci = <optimized out>
count = <optimized out>
__func__ = "pw_proxy_destroy"
__PRETTY_FUNCTION__ = "pw_proxy_destroy"
#10 0x00007ffff6254881 in pw_stream_disconnect (stream=0x555555852100) at ../src/pipewire/stream.c:1820
__func__ = "pw_stream_disconnect"
impl = 0x555555852100
__func__ = "pw_stream_disconnect"
#11 pw_stream_disconnect (stream=0x555555852100) at ../src/pipewire/stream.c:1805
impl = 0x555555852100
__func__ = "pw_stream_disconnect"
#12 0x00007ffff6254bb8 in pw_stream_destroy (stream=0x555555852100) at ../src/pipewire/stream.c:1410
impl = 0x555555852100
c = <optimized out>
__func__ = "pw_stream_destroy"
#13 0x00007ffff62b8ced in gst_pipewire_sink_stop (basesink=0x555555817290) at ../src/gst/gstpipewiresink.c:721
pwsink = 0x555555817290
#14 0x00007ffff77aca0b in gst_base_sink_change_state () at /lib64/libgstbase-1.0.so.0
#15 0x00007ffff62b4daf in gst_pipewire_sink_change_state (element=0x555555817290, transition=GST_STATE_CHANGE_READY_TO_NULL)
at ../src/gst/gstpipewiresink.c:798
ret = <optimized out>
this = 0x555555817290
#16 0x00007ffff7b7f8d9 in gst_element_change_state () at /lib64/libgstreamer-1.0.so.0
#17 0x00007ffff7b7ffe5 in gst_element_set_state_func.lto_priv () at /lib64/libgstreamer-1.0.so.0
#18 0x00007ffff7b5879c in gst_bin_change_state_func () at /lib64/libgstreamer-1.0.so.0
#19 0x00007ffff7b7f8d9 in gst_element_change_state () at /lib64/libgstreamer-1.0.so.0
#20 0x00007ffff7b7ffe5 in gst_element_set_state_func.lto_priv () at /lib64/libgstreamer-1.0.so.0
#21 0x00007ffff632cbb2 in gst_play_sink_change_state.lto_priv () at /usr/lib64/gstreamer-1.0/libgstplayback.so
#22 0x00007ffff7b7f8d9 in gst_element_change_state () at /lib64/libgstreamer-1.0.so.0
#23 0x00007ffff7b7ffe5 in gst_element_set_state_func.lto_priv () at /lib64/libgstreamer-1.0.so.0
#24 0x00007ffff7b5879c in gst_bin_change_state_func () at /lib64/libgstreamer-1.0.so.0
#25 0x00007ffff7baa70e in gst_pipeline_change_state () at /lib64/libgstreamer-1.0.so.0
#26 0x00007ffff630e539 in gst_play_bin_change_state () at /usr/lib64/gstreamer-1.0/libgstplayback.so
#27 0x00007ffff7b7f8d9 in gst_element_change_state () at /lib64/libgstreamer-1.0.so.0
#28 0x00007ffff7b7ffe5 in gst_element_set_state_func.lto_priv () at /lib64/libgstreamer-1.0.so.0
#29 0x000055555555c578 in play_bus_msg ()
#30 0x00007ffff7b691ec in gst_bus_source_dispatch () at /lib64/libgstreamer-1.0.so.0
#31 0x00007ffff7d104cf in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#32 0x00007ffff7d644e8 in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
#33 0x00007ffff7d0fa93 in g_main_loop_run () at /lib64/libglib-2.0.so.0
#34 0x0000555555559bb6 in main ()
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1327stuttering when plugging in USB audio interface on PinePhone2022-04-14T16:28:16ZBestuttering when plugging in USB audio interface on PinePhoneI use USB audio interfaces with pipewire-pulse to play music on my PinePhone on Fedora 34. I have a [little USB audio interface](https://www.aliexpress.com/item/4000701034717.html) that I use with my headphones. Unfortunately its connect...I use USB audio interfaces with pipewire-pulse to play music on my PinePhone on Fedora 34. I have a [little USB audio interface](https://www.aliexpress.com/item/4000701034717.html) that I use with my headphones. Unfortunately its connection is rather unstable so it comes unplugged easily when my PinePhone is in my pocket. When it reconnects, pipewire-pulse usually stutters. This only happens on my PinePhone; I cannot reproduce it on my x86 laptop with Fedora 34.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1328Bluetooth: Pipewire does not configure A2DP2021-06-27T02:59:55ZGraham NorthupBluetooth: Pipewire does not configure A2DP# Version:
```
hygiea ~ # pipewire --version
pipewire
Compiled with libpipewire 0.3.30
Linked with libpipewire 0.3.30
```
This _might_ not be `master`, but it appears to match the newest versioned tag. If you think master has diverged,...# Version:
```
hygiea ~ # pipewire --version
pipewire
Compiled with libpipewire 0.3.30
Linked with libpipewire 0.3.30
```
This _might_ not be `master`, but it appears to match the newest versioned tag. If you think master has diverged, let me know, and I can try it in earnest.
# Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
```
hygiea ~ # lsusb | grep Bluetooth
Bus 001 Device 004: ID 8087:0a2b Intel Corp. Bluetooth wireless interface # not sure what hardware version
hygiea ~ # cave show pipewire
* media/pipewire
::desktop 0.3.30(~)* (scm)R(~) {:0}
::installed 0.3.30 {:0}
media/pipewire-0.3.30:0::installed (world)
[snip]
Options
OPTIONS
(alsa) Build Pipewire's ALSA plugin and provide a default output
(aptx) Support the Bluetooth aptX codec
(-avahi) Add support for zero configuration networking through Avahi
(bluetooth) Build Pipewire's BlueZ plugin
(-doc) Adds extra documentation (API, Javadoc, etc)
(-echo-cancel-webrtc) Build Pipewire's WebRTC-based echo canceller module
(fdk-aac) Support the Bluetooth AAC codec
(ffmpeg) Build Pipewire's FFmpeg plugin
(gstreamer) Build Pipewire's GStreamer plugins
(jack) Build Pipewire's JACK plugin
(ldac) Support the Bluetooth LDAC codec
(pulseaudio) Module to tunnel audio to/from a (remote) PulseAudio server
(-systemd) Add support for integration with the systemd init daemon
providers
(eudev) Use eudev as the udev provider
(-systemd) Use systemd as the syslog/udev/logind provider
[snip]
hygiea ~ # uname -a
Linux hygiea 5.12.2 #4 SMP Sat May 15 10:03:38 EDT 2021 x86_64 GNU/Linux
```
Distribution is Exherbo, and the WM is Sway (which, to the best of my knowledge, isn't participating in this issue--I'm using `bluetoothctl` from another terminal.
The headset... is an MPOW something-or-other. There's another device which calls itself "T10" that is an FM transmitter (audio sink only), but not here with me. Here are the HWIDs if it helps (or let me know how to get a more authoritative answer):
```
[bluetooth]# devices
[...]
Device EB:06:EF:98:CB:6B MPOW-059
Device 00:37:17:15:2A:16 T10
```
# Description of Problem:
Pipewire only ever configures HSP/HFP for the devices it connects to; for example, from `pavucontrol`:
![scrot_pavucontrol](/uploads/aa6797fb32f8a2dd0f4ba57fcd721b6e/scrot_pavucontrol.png)
`pw-dump` confirms that these are the (only) configurations (via `EnumProfile`/`Profile` in the `Pipewire:Interface:Device` object); the output is attached as requested below.
I know that these devices support A2DP; in particular, I have `bluealsa` and the following in my `.asoundrc`:
```
pcm.car {
type bluealsa
device "00:37:17:15:2A:16"
profile a2dp
}
pcm.headphones {
type bluealsa
device "EB:06:EF:98:CB:6B"
profile a2dp
}
```
Failing a direct fix, I was trying to use `pw-jack alsa_out -d headphones` (for example), but the audio is unacceptably choppy (knowing full well that `alsa_out` is not particularly robust software):
```
grissess@hygiea ~ $ pw-jack alsa_out -d headphones
selected sample format: 16bit
err = -32
err = -32
err = -32
err = -32
err = -32
err = -32
err = -32
delay = 1726
err = -32
err = -32
err = -32
err = -32
err = -32
err = -32
err = -32
err = -32
err = -32
delay = 1713
err = -32
err = -32
[etc.]
```
I'm a bit new to the ecosystem, so anyway to tell Pipewire to load an ALSA hw interface (for one of the aforementioned `bluealsa` devices) would suffice, but I'm not otherwise sure where to start.
Pipewire _should_ be the only audio daemon running on this device; to my surprise, I can acquire the ALSA hw interface (e.g., `headphones`) from other ALSA clients (`mpv --audio-device=alsa/...`, `aplay -D ...`); the affected devices seem to prefer HSP to A2DP when both are streamed.
# How Reproducible:
Always, in this configuration.
# Steps to Reproduce:
1. Run `pipewire` and `pipewire-media-session`.
2. Connect headset/FM transmitter (via, e.g., `bluetoothctl`, or allow an automatic connection).
3. Confirm lack of A2DP profile (e.g., in `pw-dump` or `pavucontrol`).
# Actual Results:
An A2DP profile should be present for these devices.
# Expected Results:
An A2DP profile is not present.
# Additional Info Eg. Additional Kernel Patches, `pw-dump -N > file` (As Attachment Please):
For `pw-dump -N`:
[pw-dump.out](/uploads/dfe95eae1dccc812ff8f0898e6b1ce2d/pw-dump.out)
I've been playing with `/etc/pipewire/media-session.d/` (local config) files, which are fresh copies from `/usr/share/pipewire/...` with attempted fixed (ill-conceived or otherwise):
[bluez-monitor.conf](/uploads/fdd7d4bf771f52eb5e56431d83bdb4e2/bluez-monitor.conf)
[media-session.conf](/uploads/e8e9ba3525f4c2eb9a2fb7be22bfd288/media-session.conf)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1329Scratchy audio on Raspberry Pi 4, no desktop env2022-04-12T17:03:59ZjerryrScratchy audio on Raspberry Pi 4, no desktop envIf you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment: 0.3.30, Raspberry Pi OS Buster, console
Description of Problem:
pw-play works perfectly, b...If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment: 0.3.30, Raspberry Pi OS Buster, console
Description of Problem:
pw-play works perfectly, but paplay results in scratchy audio
How Reproducible:
Pipewire built from source (tag 0.3.30) and installed. Started pipewire, pipewire-media-session and pipewire-pulse on different terminals.
pw-play <wav-file> plays perfectly
paplay <wav-file> results in scratchy audio
Steps to Reproduce:
1. Fresh install of Raspberry Pi OS Buster Lite, no desktop
2. Install pipewire from source per instructions in Install.md (git checkout 0.3.30)
2a. NO configuration files were edited
3. Run eval `dbus-launch --sh-syntax`
4. Run tmux and launch 4 terminals
5. Run pipewire, pipewire-media-session & pipewire-pulse in terminals 0-2
6. Run paplay <wav-file> in terminal 3
Actual Results:
Scratchy audio plays
Expected Results:
Clear audio
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):
[dump.json](/uploads/02d139e79d906f8b2148ba8c452a9626/dump.json)
```
pi@alderan:~ $ pacmd info
No PulseAudio daemon running, or not running as session daemon.
```
All daemons print the following on startup
```
[W][00349.502901][ module-rtkit.c: 183 translate_error()] RTKit error: org.freedesktop.DBus.Error.AccessDenied
[W][00349.503184][ module-rtkit.c: 518 set_nice()] could not set nice-level to -11: Permission denied
[W][00349.513626][ module-rtkit.c: 183 translate_error()] RTKit error: org.freedesktop.DBus.Error.AccessDenied
[W][00349.513753][ module-rtkit.c: 504 idle_func()] could not make thread realtime: Permission denied
```
These errors went away when I logged in as root, but the scratchy audio problem remains.
I intermittently see the following on the pipewire stdout:
```
[W][00394.535825][ private.h: 76 ratelimit_test()] 10 events suppressed
[E][00394.535986][ impl-node.c: 1658 node_xrun()] (alsa_output.platform-bcm2835_audio.stereo-fallback-51) XRun! rate:1024/48000 count:37 time:394537231 delay:2347 max:7375
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1330Sony WH-1000XM3 fails to connect2021-06-22T19:01:05ZKDN_ObserverSony WH-1000XM3 fails to connect# Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
- Sony WH-1000XM3
- Arch Linux
- KDE Plasma 5.22.1
- Bluez 5.59
- Kernel 5.12.12
- PipeWire 0.3.30
# Description of Problem:...# Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
- Sony WH-1000XM3
- Arch Linux
- KDE Plasma 5.22.1
- Bluez 5.59
- Kernel 5.12.12
- PipeWire 0.3.30
# Description of Problem:
I decided to switch from PulseAudio to Pipewire because I'm sick and tired of the "A2DP sink profile is unavailable" issue (every time I connect to my headset I have to first double tap on the right side panel, which is to play/pause, then manually switch to A2DP). I followed the Arch wiki page to setup Pipewire with Bluetooth headsets. But it always fails when I tried to connect to my headset (I could hear from my headset the voice "Bluetooth connected" followed immediately by "Bluetooth disconnected").
Here's the output from `pipewire-media-session.service`
```
native: unknown device for path /org/bluez/hci0/dev_38_18_4C_24_9A_05
```
And the output from `bluetoothd`
```
src/profile.c:new_conn_reply() Hands-Free Voice gateway replied with an error: org.freedesktop.DBus.Error.UnknownMethod, Method "NewConnection" with signature "oha{sv}" on interface "org.bluez.Profile1" doesn't exist
profiles/audio/avdtp.c:avdtp_parse_rej() SET_CONFIGURATION request rejected: Configuration not supported (41)
```
# How Reproducible:
Always, at least on my laptop
# Steps to Reproduce:
1. Make sure `pipewire`, `pipewire-pulse` and `pipewire-media-session` are all up and running
2. Pair headset using either `bluetoothctl` or KDE Plasma's GUI tool
3. Connect to headset
# Actual Results:
`Failed to connect: org.bluez.Error.Failed`
# Expected Results:
Successfully connect
# Additional Info:
[pw-dump.log](/uploads/b3df594c8bd359019a99f665ce3fc7ba/pw-dump.log)
[pipewire-bluez.log](/uploads/6e9d5636867bd3277b8ad5f3ef73e51a/pipewire-bluez.log)
I'm using the default config files from `/usr/share/pipewire`
I'm dual booting Arch with Windows 10. On Windows and my Android phone the headset both work without any issues.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1331reports wrong read index and playing-for time to pulseaudio clients after 6:4...2021-06-24T16:00:47ZJonathan Matthewreports wrong read index and playing-for time to pulseaudio clients after 6:45:48 of playbackI noticed that after 6:45:48 of continuous playback in rhythmbox (using GStreamer and pulsesink), the reported playback position was both nonsense and not changing. This does not happen when using the pulseaudio server, only with pipewi...I noticed that after 6:45:48 of continuous playback in rhythmbox (using GStreamer and pulsesink), the reported playback position was both nonsense and not changing. This does not happen when using the pulseaudio server, only with pipewire. After enabling the debug output in the pulseaudio libraries, I saw the times fed in to the time smoother go a bit nuts, then restart from 0:
```
0x7f75a80062b0, put(211240665305 | 24341404744) = 24341376004
0x7f75a80062b0, put(211242166150 | 24342905589) = 24342911991
0x7f75a80062b0, put(211243667248 | 24344406687) = 24344448000
0x7f75a80062b0, put(211245167799 | 24345907238) = 24345898657
0x7f75a80062b0, put(211246668670 | 24347408109) = 24347434667
0x7f75a80062b0, put(211247164631 | 24347904070) = 48648219859
0x7f75a80062b0, put(211247175164 | 24347914603) = 48648219859
0x7f75a80062b0, put(211247195696 | 24347935135) = 48648219859
0x7f75a80062b0, put(211247236219 | 24347975658) = 48648219859
0x7f75a80062b0, put(211247317027 | 24348056466) = 48648305188
0x7f75a80062b0, put(211247477557 | 24348216996) = 48648475868
0x7f75a80062b0, put(211247797888 | 24348537327) = 48648817184
0x7f75a80062b0, put(211248438363 | 24349177802) = 48649414530
0x7f75a80062b0, put(211249719227 | 24350458666) = 48650694530
0x7f75a80062b0, put(211251220254 | 24351959693) = 48652230517
0x7f75a80062b0, put(211252721310 | 24353460749) = 48653766526
0x7f75a80062b0, put(211254221366 | 24354960805) = 48655217184
0x7f75a80062b0, put(211255721803 | 24356461242) = 48656753193
0x7f75a80062b0, put(211257222523 | 24357961962) = 48658203850
0x7f75a80062b0, put(211258723459 | 24359462898) = 48659739859
0x7f75a80062b0, put(211260223607 | 24360963046) = 48661275868
0x7f75a80062b0, put(211261724366 | 24362463805) = 48662726526
0x7f75a80062b0, put(211263225270 | 24363964709) = 48664262535
0x7f75a80062b0, put(211264726052 | 24365465491) = 48665713193
0x7f75a80062b0, put(211266227070 | 24366966509) = 48667249202
0x7f75a80062b0, put(211267727820 | 24368467259) = 48668699859
0x7f75a80062b0, put(211269228804 | 24369968243) = 48670235868
0x7f75a80062b0, put(211270729512 | 24371468951) = 48671771855
0x7f75a80062b0, put(211272230504 | 24372969943) = 48673222535
0x7f75a80062b0, put(211273731457 | 24374470896) = 48674758521
0x7f75a80062b0, put(211275232164 | 24375971603) = 48676209202
0x7f75a80062b0, put(211276733071 | 24377472510) = 48677745188
0x7f75a80062b0, put(211278233971 | 24378973410) = 48679281197
0x7f75a80062b0, put(211279734780 | 24380474219) = 48680731855
0x7f75a80062b0, put(211281235724 | 24381975163) = 48682267864
0x7f75a80062b0, put(211282736340 | 24383475779) = 48683718521
0x7f75a80062b0, put(211284237377 | 24384976816) = 48685254530
0x7f75a80062b0, put(211285738366 | 24386477805) = 48686790517
0x7f75a80062b0, put(211287239061 | 24387978500) = 48688241197
0x7f75a80062b0, put(211288740196 | 24389479635) = 48689777184
0x7f75a80062b0, put(211290240693 | 24390980132) = 48691227864
0x7f75a80062b0, put(211291741795 | 24392481234) = 48692763850
0x7f75a80062b0, put(211293242276 | 24393981715) = 48694214530
0x7f75a80062b0, put(211294695097 | 24395434536) = 0
0x7f75a80062b0, put(211294705645 | 24395445084) = 0
0x7f75a80062b0, put(211294726296 | 24395465735) = 0
0x7f75a80062b0, put(211294766921 | 24395506360) = 0
0x7f75a80062b0, put(211294847573 | 24395587012) = 61537
0x7f75a80062b0, put(211295008250 | 24395747689) = 232195
0x7f75a80062b0, put(211295328665 | 24396068104) = 573533
```
which causes the time provided by the time smoother go backwards, so pa_stream_get_time() ignores it and returns the last good time.
Next I made the client library report the read index and playing-for times it received from the server. The read index does roughly the same as the calculated time above - after it reaches 2147450494 (a bit less than 0x80000000) it doubles for a bit, then wraps to 0. The playing-for time just wraps at 0x80000000.
I had a quick look at how the pipewire server manages these, and it seems to be using 32 bit values for some of these, including struct spa_ringbuffer, which I suppose is why things get messed up at 0x80000000. This seems to be part of the pipewire API so I guess fixing this isn't as simple as just s/uint32/uint64/g..https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1332weird noises when recording audio2022-04-14T11:48:24ZSergiu Popescuweird noises when recording audioI have weird noises when recording audio with pipewire, for example recording a vocal message on Telegram it makes it impossible to make if using NoiseTorch all the issues are solvedI have weird noises when recording audio with pipewire, for example recording a vocal message on Telegram it makes it impossible to make if using NoiseTorch all the issues are solvedhttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1333Pipewire fails to compile if the option wireplumber is set to auto/enabled in...2021-06-24T14:39:04ZdebiangamerPipewire fails to compile if the option wireplumber is set to auto/enabled in meson_options.txtVersion, Distribution, Desktop Environment:git, Debian Sid, Xfce
Description of Problem:
Pipewire fails to compile if the option wireplumber is set to auto/enabled in meson_options.txt
How Reproducible:
Always
Steps to Reproduce:
1...Version, Distribution, Desktop Environment:git, Debian Sid, Xfce
Description of Problem:
Pipewire fails to compile if the option wireplumber is set to auto/enabled in meson_options.txt
How Reproducible:
Always
Steps to Reproduce:
1.git clone https://gitlab.freedesktop.org/pipewire/pipewire.git
2. copy the debian folder from Debian pipewire sources to the pipewire folder: http://deb.debian.org/debian/pool/main/p/pipewire/pipewire_0.3.30-1.debian.tar.xz
3. Run cd pipewire and debuild -us -uc -b
Actual Results:
```
../src/daemon/meson.build:35:2: ERROR: Automatic wrap-based subproject downloading is disabled
dh_auto_configure: error: cd obj-x86_64-linux-gnu && LC_ALL=C.UTF-8 meson .. --wrap-mode=nodownload --buildtype=plain --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=lib/x86_64-linux-gnu -Daudiotestsrc=disabled -Dauto_features=enabled -Davahi=disabled -Dbluez5-codec-aac=disabled -Dbluez5-codec-ldac=enabled -Dlibcamera=disabled -Ddocs=enabled -Dffmpeg=disabled -Dinstalled_tests=disabled -Dman=enabled -Dtest=disabled -Dvideotestsrc=disabled -Dvolume=enabled -Dvulkan=disabled returned exit code 1
```
Expected Results:
Pipewire compilation succeeds. Compilation succeeds if the option wireplumber is set to disabled. @wtaymans: set it disabled as default.
Compilation proceeds if adding --wrap-mode=default in debian/rules:
```
override_dh_auto_configure:
dh_auto_configure -- \
--wrap-mode=default \
```
and set option('doc', type : 'feature', value : 'disabled', in subprojects/wireplumber/meson_options.txt
Then it fails to wireplumber tests:
```
Ok: 21
Expected Fail: 0
Fail: 6
Unexpected Pass: 0
Skipped: 0
Timeout: 0
dh_auto_test: error: cd obj-x86_64-linux-gnu && LC_ALL=C.UTF-8 MESON_TESTTHREADS=12 meson test --timeout-multiplier 1 returned exit code 6
make[1]: *** [debian/rules:53: override_dh_auto_test] Error 25
```
I can not find a configuration file where wireplumber tests can be disabled.George KiagiadakisGeorge Kiagiadakishttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1334pipewiresrc crash when connected to certain enc like gifenc2024-02-17T10:46:29ZDave Patrick Cabertopipewiresrc crash when connected to certain enc like gifenc##### Version, Distribution, Desktop Environment:
libpipewire 0.3.30
Fedora 34 Workstation
GNOME 40
##### Description of Problem:
It crashes when I use gifenc to encode streams. It doesn't happen with vp8enc, but I think this may...##### Version, Distribution, Desktop Environment:
libpipewire 0.3.30
Fedora 34 Workstation
GNOME 40
##### Description of Problem:
It crashes when I use gifenc to encode streams. It doesn't happen with vp8enc, but I think this may be a pipewire issue since videotestsrc + gifenc doesn't crash.
##### How Reproducible:
Always
##### Steps to Reproduce:
1. Launch this: `pipewiresrc path={node_id} fd={fd} ! videoconvert ! gifenc ! filesink location=test.gif`
##### Actual Results:
It crashes
##### Expected Results:
It should not crash
##### Additional Info Eg. `pw-dump -N > file` (As Attachment Please):
https://pastebin.com/EycjjUYc
Here is some backtrace using gdbhttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1335HP UltraSlim Docking not working propertly2022-05-16T15:22:04ZsarkoziadamHP UltraSlim Docking not working propertlyIf you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
HP EliteBook 840 G5 and UltraSlim Docking Station 2013 <br>
Fedora 34 with Gnome 40 <br>
Pi...If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
HP EliteBook 840 G5 and UltraSlim Docking Station 2013 <br>
Fedora 34 with Gnome 40 <br>
PipeWire 0.3.30 (It didn't work properly with previous versions.)
Description of Problem:
Dear Developers,
There is a problem with the configuration mentioned above that when I connect my headphones to the dock line-out port, the laptop’s built-in speaker also sounds in parallel.
I attach the pw-dump files. (With and without headphones.)
[pwdump-notattached](/uploads/1471a75445c1f8414eb5a28ff7febee4/pwdump-notattached)
[pwdump-attached](/uploads/ddebe272af086d248be49dc6bbc4c8f4/pwdump-attached)
How Reproducible:
I will try to reproduce with another device soon.
Actual Results:
Expected Results:
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1336Make wireplumber a submodule?2021-06-24T14:39:05ZdarixMake wireplumber a submodule?Any reason not to?Any reason not to?https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1337Audio artifacts with bluetooth-headset when using A2DP2021-06-25T10:44:33ZTim HiltAudio artifacts with bluetooth-headset when using A2DP### Meta
- Bluetooth Headset: Redmi AirDots 2
- Distribution: Arch Linux
- Bluez: `bluez-git 1:5.59.r10.g864d03727-1` (AUR)
- Kernel (`uname -a`): `Linux t14s 5.12.12-arch1-1 #1 SMP PREEMPT Fri, 18 Jun 2021 21:59:22 +0000 x86_64 GNU/Lin...### Meta
- Bluetooth Headset: Redmi AirDots 2
- Distribution: Arch Linux
- Bluez: `bluez-git 1:5.59.r10.g864d03727-1` (AUR)
- Kernel (`uname -a`): `Linux t14s 5.12.12-arch1-1 #1 SMP PREEMPT Fri, 18 Jun 2021 21:59:22 +0000 x86_64 GNU/Linux`
- Pipewire: `pipewire 1:0.3.30-2`
- Pipewire-Pulse: `pipewire-pulse 1:0.3.30-2`
### Description of Problem
Pitch of music shifts up and down (slightly); seemingly randomly. Cannot be timed and doesn't follow any predictable pattern. Happens only when using A2DP. HSP/HFP doesn't seem to have this problem.
### How Reproducible
100%
### Steps to Reproduce
1. Connect Redmi Airdots 2
2. Switch to A2DP profile
3. Play some music and listen closely for a few seconds
### Actual Results
Music plays with shifting pitch
### Expected Results
Music plays with uniform pitch
### Additional Info
- Tried with `pipewire-git` from AUR; same result.
- Read somewhere, that this could be related to buffering (link not found in retrospect)
EDIT:
Changed title
EDIT 2:
As an aside: This also happened, when I used MacOS with the same set of headphones and I also don't have this issue with different headphones. However, I didn't have this issue, when using the headphones together with my iPhone. I will close this issue and just search for different headphones, if this is something no one else has experienced before or if no one has a clue on what could be wrong, as it may very well just be the hardware, that's at fault.
EDIT 3:
I don't have these issues, when using another laptop! I encounter this problem on a Lenovo ThinkPad T14s with an AMD Ryzen 7 processor. I **don't** however, when I use my Lenovo ThinkPad X1 Carbon 5gen, that runs on an intel i7 processor.
I tried this out with a set of different headphones and they all had weird glitches. To summarize:
- Redmi AirDots 2: Random pitch shifting
- Anker SoundCore Spirit X: Random sound-dropouts; sound slowly fades back in
- Apple AirPods Pro: Sound drops out for a split-second each 6 seconds. The 6 seconds dropout is surprisingly uniform.
I think this comes down to how the headphones handle buffering. Is it possible, that my bluetooth-card is just too week to handle A2DP? Then again, this happens on a very capable machine, while the older machine (the X1 Carbon) handles A2DP just fine. Could it be some missing kernel-modules?
``` shell
$ lsmod | grep bt
btusb 69632 0
btrtl 28672 1 btusb
btbcm 16384 1 btusb
btintel 32768 1 btusb
bluetooth 724992 42 btrtl,hidp,btintel,btbcm,bnep,btusb,rfcomm
$ hciconfig -a
hci0: Type: Primary Bus: USB
BD Address: 8C:C6:81:3F:90:70 ACL MTU: 1021:4 SCO MTU: 96:6
UP RUNNING PSCAN
RX bytes:13957417 acl:722326 sco:0 events:127641 errors:0
TX bytes:56608988 acl:127270 sco:0 commands:204 errors:0
Features: 0xbf 0xfe 0x0f 0xfe 0xdb 0xff 0x7b 0x87
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH SNIFF
Link mode: SLAVE ACCEPT
Name: 't14s'
Class: 0x6c010c
Service Classes: Rendering, Capturing, Audio, Telephony
Device Class: Computer, Laptop
HCI Version: 5.2 (0xb) Revision: 0x2576
LMP Version: 5.2 (0xb) Subversion: 0x2576
Manufacturer: Intel Corp. (2)
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1338HDMI audio cuts out when silent for too long2022-07-06T21:12:13ZDanManHDMI audio cuts out when silent for too long### Version, Distribution, Desktop Environment:
Pipewire 0.3.28, Fedora 33, Gnome 3.38.4
### Description of Problem:
When there's complete silence for a few seconds while playing games, the audio connection to my AVR cuts out and it s...### Version, Distribution, Desktop Environment:
Pipewire 0.3.28, Fedora 33, Gnome 3.38.4
### Description of Problem:
When there's complete silence for a few seconds while playing games, the audio connection to my AVR cuts out and it shows "no input". Sometimes it can be brought back again by creating sounds (switching menu items really fast), other times I have to switch the AVR to a different channel and back to get sound again.
That's an issue I've had with Pulseaudio all the time and was never able to fix, even when using `module-suspend-on-idle` with a really high value. I think it wasn't as bad a few PW versions ago and has gotten worse again up to equal level as under PA directly, but I might imagine things.
### How Reproducible:
Setup: playing games (Xorg, PW-Pulseaudio) on my NV GTX 970 (NV driver v465.31) with audio switched to its HDMI 2.0 output, connected to my AV receiver's HDMI 1.4 port, connected to my TV's HDMI 2.0 input.
Play certain games where there are situations with zero audio, like MGS5, Vampyr or Darksiders 3 for example. Sometimes just launching them is enough, because there's no audio while the company logos are displayed at the start so the main menu will be without sound already.
### Expected Results:
Audio connection should never be lost.
### Questions / possible solutions
Should I try the PA module mentioned above? Does that have an effect under PW-PA?https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1339Phone connected to BT audio-gateway does not show up correctly in pavucontrol2021-06-25T22:20:45ZhexchainPhone connected to BT audio-gateway does not show up correctly in pavucontrol## Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
Adapter: 01:00.0 Network controller [0280]: Intel Corporation Wi-Fi 6 AX200 [8086:2723] (rev 1a)
BT device: Pixel 2 XL
Des...## Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
Adapter: 01:00.0 Network controller [0280]: Intel Corporation Wi-Fi 6 AX200 [8086:2723] (rev 1a)
BT device: Pixel 2 XL
Desktop: KDE Plasma 5.22
Distribution: Arch
Versions:
```
bluez 5.59-2
linux-zen 5.12.12.zen1-1
pipewire 1:0.3.30-2
```
## Description of Problem:
I am using my computer as my mobile phone's audio output through Bluetooth A2DP, but the profile is not correctly exposed in PulseAudio tools.
`pavucontrol` shows a device with a single profile "Off", and doing anything to this device in the UI breaks audio connection until reconnecting.
`pactl` shows two profiles: `off` and `audio-gateway`, but the latter has 0 sinks and 0 sources, and it seems switching profiles does not have any effect.
## How Reproducible:
Always.
## Steps to Reproduce:
1. Connect a mobile phone to computer using Bluetooth, and make sure "Media audio" on the phone is turned on.
2. Open `pavucontrol` and switch to the "Configuration" page
## Actual Results:
Despite A2DP audio is working, the UI looks like the device is disabled:
![image](/uploads/c3752b7343cdfe2035821475852e6617/image.png)
## Expected Results:
The selection should at least contain the profile current in use.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1340pipewire goes xrun-happy if default.clock.rate is not 48000, regardless of al...2023-09-28T09:30:08ZSergey Kondakovpipewire goes xrun-happy if default.clock.rate is not 48000, regardless of all other factorsSo I've been [struggling to match stability of my pipeline's configuration](#698) under pipewire to jack2. First major obstacle turned out to be https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/724#note_823717 - overestimated au...So I've been [struggling to match stability of my pipeline's configuration](#698) under pipewire to jack2. First major obstacle turned out to be https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/724#note_823717 - overestimated automatic quantum selection.
Recently I figured out the second major obstacle: it's dropping xruns between all nodes (especially compressor and limiter) like crazy if rate is default.clock.rate=192000 regardless of node rates. In fact, it gets worse if I force rate=48000 via node.latency/audio.rate in either pre-hardware virtual interface in pipewire.conf or JACK nodes in jack.conf (or the same via envvars). 48khz processing should be easier but in 192khz PW mode with 48khz nodes it's raining xruns in thousands and LV2 GUI graphs for some reason run faster (I assume that 4x rate). In 192khz PW mode "wait" for hardware nodes and "busy" for software nodes ~4 times bigger than in 48khz PW mode, even if 48khz node rate is forced for them (meaning that they have those big wait/busy times with small, 48khz-based quantum sizes which makes them fail miserably).
Setting default.clock.rate=48000 in pipewire.conf (and not jack.conf even thou `pw-dump` shows it being applied) allows me to even go back to using all 8 bands in LSP compressor. In addition to that, `pw-top`, with which I monitor xrun rates, is completely our of whack in general: it shows hardware nodes with 48khz rate when they run in 192khz (based on `pw-dump` and /proc/asound stats), sometimes it shows all-0 or weirdly small values when both USB and build-in HDA DACs are used simultaneously for same pipeline and sometimes it just permanently hanging. `pw-top` 100% guaranteed to hang when BT headphones are connected even though everything works fine.
But even in "stock" 48khz configuration (and if default.clock.rate in pipewire.conf is 48000 when other rates are nowhere to be found in `pw-top` even if they are set in different configs, including hardware defaults) performance is far from jack2's. I still blame lack of configurable period number (mainly, 3 versus 2) for that. Keep in mind that jack2's pipeline performance is MUCH more stable (12ms without xruns versus "anything lower than 1024*2/48=42,(6)ms is a disaster") in "obsolete" "sync" mode, activated via `--sync` option, rather than default "async" mode.
I assume that a lot of issues with JACK apps comes from all that. Such as some from #1265https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1341Whenever I go out of sleep mode then I don't hear sound and I have to mute an...2022-05-12T14:26:20ZToadfieldWhenever I go out of sleep mode then I don't hear sound and I have to mute and unmute my headphones againWhen I go to sleep mode with my kde arch system and then go out of sleep mode,then I have to mute and unmute my headphones so I can hear audio again.When I go to sleep mode with my kde arch system and then go out of sleep mode,then I have to mute and unmute my headphones so I can hear audio again.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1342Bluetooth headphones do not play sound if connected after pipewire-media-sess...2021-10-13T05:58:03ZSamuel HeidenreichBluetooth headphones do not play sound if connected after pipewire-media-session starts, works fine if connected before+ Bluetooth Headset: Beats Studio 3
+ DE: none (XMonad)
+ Distribution: Artix Linux (runit)
+ Versions: Bluez 5.59, pipewire 0.3.30
Description of Problem:
If I connect my headphones after `pipewire-media-session`, no sound occurs and ...+ Bluetooth Headset: Beats Studio 3
+ DE: none (XMonad)
+ Distribution: Artix Linux (runit)
+ Versions: Bluez 5.59, pipewire 0.3.30
Description of Problem:
If I connect my headphones after `pipewire-media-session`, no sound occurs and receives these errors when I try to play audio:
```
[E][24993.914557][ audioadapter.c: 583 impl_node_send_command()] audioadapter 0x7f8b1f7d7038: can't send command: Input/output error
[E][24993.914570][ impl-node.c: 350 node_update_state()] (bluez_output.1C_36_BB_3E_F4_65.a2dp-sink-18) suspended -> error (Start error: Input/output error)
```
How Reproducible:
It has been this case for every time that I have tried on these headphones.
Steps to Reproduce:
Results in no sound:
1. Run `pipewire`, `pipewire-media-session`, `pipewire-pulse`
2. Connect Bluetooth Headphones
3. Try to play audio
Results in sound:
1. Connect Bluetooth Headphones
2. Run `pipewire`, `pipewire-media-session`, `pipewire-pulse`
3. Play audio
Actual Results:
No sound when connecting headphones after running `pipewire-media-session`.
Expected Results:
I would expect that the headphones can get sound after connecting after the daemon started. This was the case when I used PulseAudio.
Failed case: [pipewire-bluez-fail.log](/uploads/fbac3fdf33ae5387d4624a153dd19e28/pipewire-bluez-fail.log)
Succeded case: [pipewire-bluez-works.log](/uploads/807eb7f5cc37aa239a3e574073f74676/pipewire-bluez-works.log)
[pw_dump](/uploads/8061d0ee9da31fae742eda6294278fb9/pw_dump)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1343Compilation fails because of the new roc module2022-04-13T13:44:22ZdebiangamerCompilation fails because of the new roc moduleVersion, Distribution, Desktop Environment: git, Debian Sid, Xfce
Description of Problem:
Compilation fails because of the new roc module. No roc_lib can not be found. Commit:
https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/...Version, Distribution, Desktop Environment: git, Debian Sid, Xfce
Description of Problem:
Compilation fails because of the new roc module. No roc_lib can not be found. Commit:
https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/e60498df51dcae0f36f0ffc7052954098049416e
Maybe it is referring to this:
https://github.com/roc-streaming/roc-toolkit
There is no roc audio libraries in Debian.
How Reproducible: Always
Steps to Reproduce:
1. git pull
2. add the line usr/share/pipewire/media-session.d/bluez-hardware.conf to debian/pipewire-media-session.install
3. Run debuild -us -uc -b
Actual Results: The compilation stops to missing roc_lib dependency.
Expected Results: The compilation succeeds
Disabling roc in debian/rules makes the compilation to succeed.
```
override_dh_auto_configure:
dh_auto_configure -- \
-Droc=disabled \
```
So disable roc by default and document build dependencies.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1344Wine VST bridge getting SIGKILLed by pipewire/rtkit2021-07-04T20:00:38ZSteve KossouhoWine VST bridge getting SIGKILLed by pipewire/rtkitIf you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
0.3.30-2 Manjaro Gnome (X11)
Description of Problem:
Only when using Pipewire-jack (no issu...If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
0.3.30-2 Manjaro Gnome (X11)
Description of Problem:
Only when using Pipewire-jack (no issue with Pulseaudio and Jack2), when using VST bridges to load some plugins (eg. BK Synthlabs INTRO, Angular Momentum Analog Warfare 3.1), one process seems to be killed silently and a broken pipe/unexpected end of file issue happens. It causes crashes in some apps (Renoise dies), and failures in others (Carla says it couldn't load the plugin).
When switching back to pulseaudio/jack2, everything returns to normal: the plugins load properly and processes are not killed.
How Reproducible:
100% reproducible with the following:
- BK Synthlabs Intro VST (https://plugins4free.com/plugin/324/)
- LinVst or Yabridge
Steps to Reproduce:
1. Install `pipewire` and `pipewire-jack`
2. Use a recent Wine Staging
3. Run a VST host like Carla
4. Install `linvst` or `yabridge`
5. Bridge the BK SynthLabs Intro VST with one of them
6. Try to load the `.so` file in Carla
7. Error message
If you remove `pipewire` and `pipewire-jack`, step 7 works.
Actual Results:
Plugin loading via bridge (with Jack) fails and crashes with many Windows VSTs but not others. Debug never shows any valuable information except that a SIGKILL happened sometimes.
Expected Results:
Plugin loading via bridge works.
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1345pipewire-pulse: sink's state is "running" despite having no sink-inputs2021-06-30T11:16:30Zmwenzkowskipipewire-pulse: sink's state is "running" despite having no sink-inputs
- Pipewire Version: 0.3.30
- Distribution: Arch Linux
- Desktop Environment: Sway
# Description of the Problem:
I am using the Pulseaudio API to record a sink's monitor source for as long as it has at least one (non-corked) sink-inpu...
- Pipewire Version: 0.3.30
- Distribution: Arch Linux
- Desktop Environment: Sway
# Description of the Problem:
I am using the Pulseaudio API to record a sink's monitor source for as long as it has at least one (non-corked) sink-input. To see if this is the case
I check if the sink's state is equal to [PA_SINK_RUNNING](https://freedesktop.org/software/pulseaudio/doxygen/def_8h.html#ae4618f4ca1ed5b4044390f6421ac233e). This works with Pulseaudio but with Pipewire a sink which has
- it's monitor source recorded
- no sink-inputs
is still shown as Running.
# Steps to Reproduce:
1. Get the name of the desired sink with `pactl list sinks`. In my case the name is `alsa_output.pci-0000_00_1b.0.analog-stereo`.
2. Check with `pactl list sink-inputs` that you have no sink-inputs.
3. Check with `pactl list sinks` that the sinks's state is not `RUNNING` (In my case it says `SUSPENDED`).
3. Record from the sink's monitor source: `parec -d alsa_output.pci-0000_00_1b.0.analog-stereo.monitor out.wav`
4. Check the sink's state again with `pactl list sinks`.
**Actual Results:** The sink's state is `RUNNING`.
**Expected Results:** The sink's state is not `RUNNING` (i.e. `SUSPENDED` or `IDLE`).https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1346pipewire causes stuttering on Intel HD Audio SPDIF2021-06-26T01:07:32ZRichard Chanpipewire causes stuttering on Intel HD Audio SPDIFVersion, Distribution, Desktop Environment:
* pipewire-0.3.30-4.fc34.x86_64, pipewire-pulseaudio-0.3.30-4.fc34.x86_64
* Fedora 34
* Gnome
Description of Problem:
pipewire causes stuttering on Intel HD Audio SPDIF; every few seconds aud...Version, Distribution, Desktop Environment:
* pipewire-0.3.30-4.fc34.x86_64, pipewire-pulseaudio-0.3.30-4.fc34.x86_64
* Fedora 34
* Gnome
Description of Problem:
pipewire causes stuttering on Intel HD Audio SPDIF; every few seconds audio stutters; it is as if the device
is lost and rediscovered
How Reproducible:
Always
Steps to Reproduce:
1. Connect PC SPDIF to AVR
2. Choose Intel HD Audio SPDIF as the default audio output
3.
Actual Results:
```
Jun 25 20:11:57 xxxxxxxx.com pipewire[2928]: (alsa_output.pci-0000_00_1b.0.iec958-stereo-47) XRun! rate:1024/48000 count:1 time:73357834 delay:27364801 max:27364801
Jun 25 20:11:57 xxxxxxxx.com pipewire[2928]: (GNOME Settings-69) client too slow! rate:1024/48000 pos:1364992 status:awake
Jun 25 20:18:04 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 57: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:04 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae9140: error seq:1282 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:04 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 57: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:04 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae9140: error seq:1303 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:04 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 57: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:04 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae9140: error seq:1456 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:04 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 57: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:04 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae9140: error seq:1495 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:13 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:13 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:1730 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:13 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:13 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:1764 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:2145 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:2171 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:2251 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 76: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae2280: error seq:2277 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:2284 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 76: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae2280: error seq:2288 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:2326 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 76: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:20 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae2280: error seq:2346 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:21 xxxxxxxx.com pipewire-media-session[2937]: Failed to set switch of 'IEC958': Operation not permitted
Jun 25 20:18:21 xxxxxxxx.com pipewire-media-session[2937]: Failed to set switch of 'IEC958': Operation not permitted
Jun 25 20:18:21 xxxxxxxx.com pipewire-media-session[2937]: Failed to set switch of 'IEC958': Operation not permitted
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:2619 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 76: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae2280: error seq:2631 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:2643 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 76: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae2280: error seq:2655 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:21 xxxxxxxx.com pipewire-media-session[2937]: Failed to set switch of 'IEC958': Operation not permitted
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:2785 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 76: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae2280: error seq:2791 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:2809 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 76: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:21 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae2280: error seq:2821 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:45 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:45 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:3199 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:45 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 76: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:45 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae2280: error seq:3214 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:45 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:45 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:3231 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:45 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 76: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:45 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae2280: error seq:3235 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:45 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 56: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:45 xxxxxxxx.com pipewire[2928]: client-node 0x55e43132e850: error seq:3409 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 20:18:45 xxxxxxxx.com pipewire[2928]: impl-core 0x55e4309e5a40: error -5 for resource 76: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 20:18:45 xxxxxxxx.com pipewire[2928]: client-node 0x55e431ae2280: error seq:3411 -5 (node_set_param(Spa:Enum:ParamId:PortCo[pwdump.txt](/uploads/f2acb0ee737fb72df7391d891f6857ef/pwdump.txt)nfig) failed: Input/output error)
```
Expected Results:
Smooth audio playback
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):
* alsa information: [alsa](http://alsa-project.org/db/?f=f6beaaee680634016fae10af98b298ff68bc5db1)
* hardware was tested without pipewire/pipewire-pulse, only using alsa and audio playback is fine without stuttering
* this is typical sequence of error messages
```
Jun 25 21:19:25 xxxxxxxx.com pipewire-pulse[8537]: node 0x55ccdd78b890: set_param Spa:Enum:ParamId:PortConfig (11) 0x55ccdd53e938: Input/output error
Jun 25 21:19:25 xxxxxxxx.com pipewire[9325]: impl-core 0x5636bed21a40: error -5 for resource 55: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 21:19:25 xxxxxxxx.com pipewire[9325]: client-node 0x5636c0131fb0: error seq:7007 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 21:19:25 xxxxxxxx.com pipewire-pulse[8537]: node 0x55ccdd78b890: set_param Spa:Enum:ParamId:PortConfig (11) 0x55ccdd53e638: Input/output error
Jun 25 21:19:25 xxxxxxxx.com pipewire[9325]: impl-core 0x5636bed21a40: error -5 for resource 55: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 21:19:25 xxxxxxxx.com pipewire[9325]: client-node 0x5636c0131fb0: error seq:7027 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 21:19:25 xxxxxxxx.com pipewire-pulse[8537]: node 0x55ccdd78b890: set_param Spa:Enum:ParamId:PortConfig (11) 0x55ccdd53e7a8: Input/output error
Jun 25 21:19:25 xxxxxxxx.com pipewire[9325]: impl-core 0x5636bed21a40: error -5 for resource 55: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 21:19:25 xxxxxxxx.com pipewire[9325]: client-node 0x5636c0131fb0: error seq:7182 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 21:19:25 xxxxxxxx.com pipewire-pulse[8537]: node 0x55ccdd78b890: set_param Spa:Enum:ParamId:PortConfig (11) 0x55ccdd53f028: Input/output error
Jun 25 21:19:25 xxxxxxxx.com pipewire[9325]: impl-core 0x5636bed21a40: error -5 for resource 55: node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error
Jun 25 21:19:25 xxxxxxxx.com pipewire[9325]: client-node 0x5636c0131fb0: error seq:7243 -5 (node_set_param(Spa:Enum:ParamId:PortConfig) failed: Input/output error)
Jun 25 21:19:25 xxxxxxxx.com pipewire-pulse[8537]: pulse-server 0x55ccdc68f970: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:678 error:19 (Operation not supported)
Jun 25 21:19:25 xxxxxxxx.com pipewire-pulse[8537]: pulse-server 0x55ccdc68f970: [PulseAudio Volume Control] ERROR command:87 (EXTENSION) tag:701 error:19 (Operation not supported)
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1347Sound only works the first connection after boot on Soundcore Life Q30 blueto...2021-06-27T06:29:15ZDmitri SmirnovSound only works the first connection after boot on Soundcore Life Q30 bluetooth headphones.If you are filing this issue with a regular release please try master as it might already be fixed. Also test with PulseAudio because if it doesn't work there it's not going to here either.
Bluetooth Radio, Bluetooth Headset, Desktop En...If you are filing this issue with a regular release please try master as it might already be fixed. Also test with PulseAudio because if it doesn't work there it's not going to here either.
Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
Headset: Soundcore Life Q30, Fedora 34, Gnome, bluez 5.59, kernel 5.12.12, pipewire 3.30-4
Description of Problem:
If the headphones are connected directly after boot, the sound is present and everything works as expected.
If the headphones are then disconnected and reconnected, then connection fails or succeeds, but no sound is present (playback works as expected, sink is present, but headphones do not emit sound).
How Reproducible:
Steps to Reproduce:
1. boot the machine
2. pair and connect the headset
3. play sound
4. disconnect the headset
5. connect the headset again
6. play sound
Actual Results:
No sound is heard the second time
Expected Results:
Would be nice to hear it
Additional Info Eg. Additional Kernel Patches, `pw-dump -N > file` (As Attachment Please):
Logs from successful connection (right after boot):
journaclt -u bluetooth
```
Jun 25 22:52:56 hostname bluetoothd[1135]: Starting SDP server
Jun 25 22:52:56 hostname bluetoothd[1135]: Bluetooth management interface 1.19 initialized
Jun 25 22:53:06 hostname bluetoothd[1135]: Endpoint registered: sender=:1.64 path=/MediaEndpoint/A2DPSource/ldac
Jun 25 22:53:06 hostname bluetoothd[1135]: Endpoint registered: sender=:1.64 path=/MediaEndpoint/A2DPSource/aac
Jun 25 22:53:06 hostname bluetoothd[1135]: Endpoint registered: sender=:1.64 path=/MediaEndpoint/A2DPSink/sbc
Jun 25 22:53:06 hostname bluetoothd[1135]: Endpoint registered: sender=:1.64 path=/MediaEndpoint/A2DPSource/sbc
Jun 25 22:53:12 hostname bluetoothd[1135]: Endpoint unregistered: sender=:1.64 path=/MediaEndpoint/A2DPSource/ldac
Jun 25 22:53:12 hostname bluetoothd[1135]: Endpoint unregistered: sender=:1.64 path=/MediaEndpoint/A2DPSource/aac
Jun 25 22:53:12 hostname bluetoothd[1135]: Endpoint unregistered: sender=:1.64 path=/MediaEndpoint/A2DPSink/sbc
Jun 25 22:53:12 hostname bluetoothd[1135]: Endpoint unregistered: sender=:1.64 path=/MediaEndpoint/A2DPSource/sbc
Jun 25 22:53:14 hostname bluetoothd[1135]: Endpoint registered: sender=:1.95 path=/MediaEndpoint/A2DPSource/ldac
Jun 25 22:53:14 hostname bluetoothd[1135]: Endpoint registered: sender=:1.95 path=/MediaEndpoint/A2DPSource/aac
Jun 25 22:53:14 hostname bluetoothd[1135]: Endpoint registered: sender=:1.95 path=/MediaEndpoint/A2DPSink/sbc
Jun 25 22:53:14 hostname bluetoothd[1135]: Endpoint registered: sender=:1.95 path=/MediaEndpoint/A2DPSource/sbc
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:17 hostname bluetoothd[1135]: profiles/input/hog-lib.c:report_value_cb() bt_uhid_send: Invalid argument (22)
Jun 25 22:53:19 hostname bluetoothd[1135]: src/profile.c:record_cb() Unable to get Hands-Free Voice gateway SDP record: Host is down
Jun 25 22:53:24 hostname bluetoothd[1135]: src/profile.c:record_cb() Unable to get Hands-Free Voice gateway SDP record: Host is down
Jun 25 22:53:29 hostname bluetoothd[1135]: src/profile.c:record_cb() Unable to get Hands-Free Voice gateway SDP record: Host is down
Jun 25 22:55:18 hostname bluetoothd[1135]: profiles/audio/a2dp.c:load_remote_sep() Unable to load LastUsed: lseid 6 not found
Jun 25 22:55:18 hostname bluetoothd[1135]: profiles/audio/avdtp.c:caps_to_list() Invalid capability data in getcap resp
Jun 25 22:55:20 hostname bluetoothd[1135]: /org/bluez/hci0/dev_AC_12_2F_50_94_EA/fd0: fd(29) ready
```
journalctl --user -u pipewire
```
Jun 26 00:22:30 hostname pipewire-media-session[9615]: bluez5-monitor: Failed to register battery provider. Error: org.freedesktop.DBus.Error.UnknownMethod
Jun 26 00:22:30 hostname pipewire-media-session[9615]: bluez5-monitor: BlueZ Battery Provider is not available, won't retry to register it. Make sure you are running BlueZ 5.56+ with ex>
Jun 26 00:22:39 hostname pipewire-media-session[9615]: loop 0x56148db5e8e0: failed to read timer fd 49: Resource temporarily unavailablehttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1348Pipewire does not detect bluetooth A2DP source2023-11-20T11:57:15ZonnyPipewire does not detect bluetooth A2DP source**Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):**
- bluez 5.59-2
- linux-raspberrypi4 5.10.44-6
- pipewire 1:0.3.30-2
- pipewire-pulse 1:0.3.30-2
On ArchLinuxARM for Raspber...**Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):**
- bluez 5.59-2
- linux-raspberrypi4 5.10.44-6
- pipewire 1:0.3.30-2
- pipewire-pulse 1:0.3.30-2
On ArchLinuxARM for RaspberryPi 4.
**Description of Problem:**
I configured Bluez to work as a A2DP audio sink, so my mobile phone which connects to Bluez should show up in Pipewire as an additional A2DP source.
``/etc/bluetooth/audio.conf``:
```
[General]:
Enable=Source,Sink,Media,Socket
```
``/etc/bluetooth/main.conf``:
```
Class = 0x00041C
[...]
DiscoverableTimeout = 0
```
Also added ``a2dp_source`` into ``/etc/pipewire/media-session.d/bluez-monitor.conf`` and ``~/.config/pipewire/media-session.d/bluez-monitor.conf``:
```
[...]
bluez5.auto-connect = [ hfp_hf hsp_hs a2dp_sink a2dp_source ]
[...]
```
**How Reproducible:**
Always
**Steps to Reproduce:**
1. ``systemctl --user start pipewire-pulse``, ``systemctl start bluetooth``
2. Connect mobile Phone to RaspberryPi 4
3. ``pactl list sources short`` should show a bluez_source but it doesn't:
```
65586 alsa_output.usb-C-Media_Electronics_Inc._USB_Audio_Device-00.analog-stereo.monitor PipeWire s16le 2ch 48000Hz RUNNING
51 alsa_input.usb-C-Media_Electronics_Inc._USB_Audio_Device-00.mono-fallback PipeWire s16le 1ch 48000Hz SUSPENDED
65588 alsa_output.platform-bcm2835_audio.stereo-fallback.monitor PipeWire s16le 2ch 48000Hz SUSPENDED
```
**Actual Results:**
No additional bluez_source
**Expected Results:**
Additional bluez_source after connection
**Additional Info Eg. Additional Kernel Patches, `pw-dump -N > file` (As Attachment Please):**
pwdump https://git.project-insanity.org/-/snippets/484https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1349pw-jack: jack_client_create_thread does not create realtime threads2021-06-28T10:26:51ZHector Martinpw-jack: jack_client_create_thread does not create realtime threadsVersion: master
Description of Problem:
pipewire-jack's implementation of `jack_client_create_thread` ([here](https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/cb6dbd165a37c2f488a8f4e3db02940794added8/pipewire-jack/src/pipewire-j...Version: master
Description of Problem:
pipewire-jack's implementation of `jack_client_create_thread` ([here](https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/cb6dbd165a37c2f488a8f4e3db02940794added8/pipewire-jack/src/pipewire-jack.c#L5430)) ignores the `realtime` and `priority` arguments, and instead just creates a non-RT pthread.
This completely breaks realtime scheduling for clients that create auxiliary audio processing threads through JACK APIs, like Ardour's DSP threads.
How Reproducible: Always
Steps to Reproduce:
1. Run ardour under pw-jack
2. Look at the RT threads (e.g. in htop)
Actual Results:
No RT priority. xruns galore when the system is under any load.
Expected Results:
Ardour RT threads acquire RT priority.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1350Applications actively providing audio cannot handle output disappearing when ...2022-07-07T08:16:39ZMartin RysApplications actively providing audio cannot handle output disappearing when using Pulse backendSystem info:
```
pipewire: 1:0.3.30-2 (still happens on 0.3.32)
Operating System: Arch Linux
KDE Plasma Version: 5.22.2
KDE Frameworks Version: 5.83.0
Qt Version: 5.15.2
Kernel Version: 5.12.13-arch1-1 (64-bit)
Graphics Platform: X11
...System info:
```
pipewire: 1:0.3.30-2 (still happens on 0.3.32)
Operating System: Arch Linux
KDE Plasma Version: 5.22.2
KDE Frameworks Version: 5.83.0
Qt Version: 5.15.2
Kernel Version: 5.12.13-arch1-1 (64-bit)
Graphics Platform: X11
Processors: 12 × AMD Ryzen 5 3600 6-Core Processor
Memory: 31.4 GiB of RAM
Graphics Processor: NVIDIA GeForce GTX 1080 Ti/PCIe/SSE2
```
Description of Problem:
Most(all?) applications using Pulse cannot handle an output disappearing using Pipewire's Pulse backend.
There is no issue with real PulseAudio backend.
Some of the apps include:
* Youtube on Chromium - it kicks back in after a short while however
* CS:GO - needs a restart
* Tauon Music Box - needs a restart
How Reproducible: 100%
Steps to Reproduce:
1. Play a song in Tauon Music Box
2. Open up pavucontrol Configuration tab, toggle the output Off and On
3. TMB now can't play music at all, even when switching to a new song
Actual Results:
Applications are without audio, but it seems the bug only occurs while audio is actively playing.
Switching outputs while nothing is playing works as intended.
Expected Results:
Applications restore audio when output comes back
Workaround:
Mute/Stop playing the application, wait a few seconds, switch the outputs, then re-enable it again.
That usually avoids having to restart things.
[pwdump.log](/uploads/e6244f21aeb6af0d30743701a7632c81/pwdump.log)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1351Question:Packaging: Does I need to compile roc-toolkit with `--build-3rdparty...2022-04-13T13:40:14ZSourav Dassouravdas142@gmail.comQuestion:Packaging: Does I need to compile roc-toolkit with `--build-3rdparty=openfec,pulseaudio` ?Hi @wtaymans I was thinking to package roc-toolkit for debian based distros for PipeWire roc module but I have some confusion, should I compile `roc-toolkit`with `--build-3rdparty=openfec,pulseaudio` specially with `pulseaudio` ? The c...Hi @wtaymans I was thinking to package roc-toolkit for debian based distros for PipeWire roc module but I have some confusion, should I compile `roc-toolkit`with `--build-3rdparty=openfec,pulseaudio` specially with `pulseaudio` ? The confusion creates from https://roc-streaming.org/toolkit/docs/building/user_cookbook.html#id2 this instruction, The question may be dumb but please clear the confusion.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1352pipewire needs restart to get sound2022-01-29T15:36:42ZHubert Figuierepipewire needs restart to get soundVersion, Distribution, Desktop Environment:
pipewire-0.3.30-2.fc34-x86_64
Description of Problem:
Regularly I have to restart `pipewire` and `pipewire-pulse` to have Ardour (the flatpak version), using ALSA, output any sound.
This is ...Version, Distribution, Desktop Environment:
pipewire-0.3.30-2.fc34-x86_64
Description of Problem:
Regularly I have to restart `pipewire` and `pipewire-pulse` to have Ardour (the flatpak version), using ALSA, output any sound.
This is the Flaptak for Ardour:
https://flathub.org/apps/details/org.ardour.Ardour
How Reproducible:
Often, but I don't have clear reproduction steps.
Things I know is that:
1. computer didn't get suspended
2. packages didn't get updated.
Let me know if you need more info. The attached pw-dump is with Ardour 6 (flatpak) runing and working.
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):
[pw-dump.txt](/uploads/63169d489304757f3d1418e4f89836bf/pw-dump.txt)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1353Applying alsa settings - no errors, but no change either2021-06-27T07:29:34ZStanisław PituchaApplying alsa settings - no errors, but no change eitherI'm trying to apply the changes from https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Performance#latency to an iRig device.
From the `pw-cli`, I get:
```
id: 40
permissions: rwxm
type: PipeWire:Interfac...I'm trying to apply the changes from https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Performance#latency to an iRig device.
From the `pw-cli`, I get:
```
id: 40
permissions: rwxm
type: PipeWire:Interface:Device/3
properties:
device.description = "iRig HD 2"
alsa.card_name = "iRig HD 2"
...
id: 44
permissions: rwxm
type: PipeWire:Interface:Node/3
input ports: 2/64
output ports: 2/0
state: "suspended"
properties:
object.path = "alsa:pcm:1:front:1:playback"
alsa.card_name = "iRig HD 2"
node.nick = "iRig HD 2"
...
id: 45
permissions: rwxm
type: PipeWire:Interface:Node/3
input ports: 0/0
output ports: 1/64
state: "suspended"
properties:
object.path = "alsa:pcm:1:hw:1:capture"
alsa.card_name = "iRig HD 2"
node.description = "iRig HD 2 Mono"
...
```
I created `~/.config/pipewire/alsa-monitor.conf` with the following content:
```
rules = [
{
matches = [
{
alsa.card_name = "iRig HD 2"
}
]
actions = {
update-props = {
api.alsa.period-size = 6
api.alsa.disable-batch = true
}
}
}
]
```
But after restarting pipewire and pipewire-pulse, nothing's changed. I don't see the extra values in `pw-cli dump` and don't see any errors in journal output either.
A I missing some steps? How would I debug what's happening here?
I'm running pipewire-0.3.30-5.fc34.x86_64https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1354MPD stops outputting audio after tty switch until either MPD or pipewire-puls...2021-09-09T19:56:05ZFerdinand BachmannMPD stops outputting audio after tty switch until either MPD or pipewire-pulse is restartedVersion, Distribution, Desktop Environment:
0.3.30 (package version 1:0.3.30-2), Arch Linux (testing), sway
also tested on latest master (cb6dbd165), via `pipewire-common-git` AUR package.
Description of Problem:
- After switching...Version, Distribution, Desktop Environment:
0.3.30 (package version 1:0.3.30-2), Arch Linux (testing), sway
also tested on latest master (cb6dbd165), via `pipewire-common-git` AUR package.
Description of Problem:
- After switching to a (non-logged in) tty, this (expectedly) takes away permission for pipewire to output sound to the speakers.
- When switching back to the logged in tty, sound in MPD does not resume.
- With pulseaudio, pausing and resuming allowed the sound to return.
- With pipewire-pulse, only a restart of pipewire-pulse or mpd (either works), will allow the sound to return
How Reproducible:
1. start playback of a track in MPD
2. switch to an unoccupied tty (Ctrl+Alt+F5 for example)
3. switch back to the desktop tty (or any logged in tty) (Ctrl+Alt+F1/F7 for example, depending on system)
4. observe audio not playing (also expected on real pulseaudio)
5. try to pause / resume playback in MPD
6. observe still no audio playing (audio works on real pulseaudio, playback doesn't work on pipewire-pulse)
7. restart pipewire-pulse or mpd
8. observe audio working again
Actual Results:
Audio only works after restarting either pipewire-pulse or mpd. Neither is desirable, since the first will also interrupt other clients, and the second will clear the playlist.
Expected Results:
Playback should resume after a tty switch, or at least pausing and resuming playback should retry using the speakers if permission errors occurred due to a tty switch.
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):
One of the `PipeWire:Interface:Port` nodes is suspended after returning from the tty, as seen in the following pipewire dumps. This also seems to have resulted in some audio `Format` fields being missing after returning from the tty.
The only onther change in these dumps seems to be some reordering of the IDs of the pipewire-pulse clients (I didn't diff them in detail, some properties might have changed there as well).
[pipewire-before-ttyswitch](/uploads/bd1a5d0f21d5f2e26ade6cc32e0ecf15/pipewire-before-ttyswitch)
[pipewire-after-ttyswitch](/uploads/e1251dee20bad2fddc16d16a3a9564d9/pipewire-after-ttyswitch)
[pipewire-after-restart](/uploads/6cf1e24a426198aec0290cb4d9754c5a/pipewire-after-restart)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1355libcamera pkg-config file is nor named 'libcamera'2021-06-27T18:27:39ZGustavo Alvarezlibcamera pkg-config file is nor named 'libcamera'libcamera pkg-config file renames 'camera.pc' to 'libcamera.pc'
https://git.linuxtv.org/libcamera.git/commit/?id=ec7afef665a87eb389a5a4cb9ff35e9c24bbcc29
greetingslibcamera pkg-config file renames 'camera.pc' to 'libcamera.pc'
https://git.linuxtv.org/libcamera.git/commit/?id=ec7afef665a87eb389a5a4cb9ff35e9c24bbcc29
greetingshttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1356Default devices: PipeWire probably should favor hardware devices when they ar...2022-04-12T21:20:42ZWellington Wallace Miguel MeloDefault devices: PipeWire probably should favor hardware devices when they are pluggedConsider a system without any hardware source. When I load PulseEffects our virtual source is created and PipeWire selects it as default. What is reasonable considering that there is no other source. But sometimes when I plug my usb micr...Consider a system without any hardware source. When I load PulseEffects our virtual source is created and PipeWire selects it as default. What is reasonable considering that there is no other source. But sometimes when I plug my usb microphone PipeWire does not move the default source from the virtual device to the usb microphone.
That is a problem for PulseEffects because we process the microphone and send the results to our virtual source. Recording from ourselves does not make sense. So when PipeWire tells us that our source is the default device we ignore this information and our mic pipeline input isn't connected to anything.
The user could use our menu to manually select its microphone as a signal source for PulseEffects. But our default behavior is to automatically move to the server default device. Most users probably do not do manual selection.
If I am not mistaken in this situation Pulseaudio favors the hardware that was plugged and moves to it. I am not sure if PipeWire is already supposed to do the same.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1357Static noise when using module-loopback but not with pw-loopback2022-04-12T18:21:46ZErik ReiderStatic noise when using module-loopback but not with pw-loopbackEdit: `latency_msec=20` seems to fix this
# Version, Distribution, Desktop Environment:
- Manjaro unstable repos
- pipewire-git: 0.3.31.2.g5497d2d90-1
- pipewire-jack: 1:0.3.30-2
- pipewire-media-session-git: 0.3.31.2.g5497d2d90-1
- pip...Edit: `latency_msec=20` seems to fix this
# Version, Distribution, Desktop Environment:
- Manjaro unstable repos
- pipewire-git: 0.3.31.2.g5497d2d90-1
- pipewire-jack: 1:0.3.30-2
- pipewire-media-session-git: 0.3.31.2.g5497d2d90-1
- pipewire-pulse-git: 0.3.31.2.g5497d2d90-1
- sway-git: r6718.5cdce42d-1
# Description of Problem:
When loading the module-loopback module using pactl the desktop audio (firefox, discord, etc...) sometimes emits a little bit of noise. The noise disappears when using pw-loopback instead. I only seem to run into this issue when using my motherboard's audio (Gigabyte X470 Gaming 5). When using pactl and loading the module with the regular pulseaudio installed (instead of pipewire-pulse), everything works as expected.
This somehow doesn't affect the audio being looped back, in my case being my Nintendo Switch.
# How Reproducible:
This could be an incompatibility with my mobo and pipewire-pulse's pactl?
# Steps to Reproduce:
1. Run `pactl load-module module-loopback latency_msec=1`
# Actual Results:
Noise while listening to anything.
# Expected Results:
Clean audio
# Additional Info:
[file](/uploads/971192c74d200488fb4e22fd6f3ffdf5/file)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1358Configuring module-loopback in pipewire.conf doesn't work2022-04-12T18:23:45ZJames Le CuirotConfiguring module-loopback in pipewire.conf doesn't work## Version, Distribution, Desktop Environment
5497d2d907ed8614c2c0b6482ea709cc7314f301, Gentoo Linux, XFCE
## Description of Problem
Configuring module-loopback using pipewire.conf instead of running pw-loopback results in strange beh...## Version, Distribution, Desktop Environment
5497d2d907ed8614c2c0b6482ea709cc7314f301, Gentoo Linux, XFCE
## Description of Problem
Configuring module-loopback using pipewire.conf instead of running pw-loopback results in strange behaviour.
## How Reproducible
Every time.
## Steps to Reproduce
Add the following to pipewire.conf and start pipewire.
```
context.modules = [
{ name = libpipewire-module-loopback
args = {
node.name = "flipped"
capture.props = {
node.description = "Flipped"
media.class = "Audio/Sink"
audio.position = "FL,FR,RL,RR,FC,LFE"
audio.channels = 6
}
playback.props = {
node.target = "mysink"
audio.position = "RR,FL,FR,FC,RL,LFE"
audio.channels = 6
stream.dont-remix = "true"
}
}
}
]
```
I based the above on the source for `module-remap-sink`. It is equivalent to these:
```
pactl load-module module-remap-sink sink_name=flipped master=mysink channels=6 channel_map=front-left,front-right,rear-left,rear-right,front-center,lfe master_channel_map=rear-right,front-left,front-right,front-center,rear-left,lfe remix=no
pw-loopback --capture-props='media.class=Audio/Sink node.name=flipped audio.position=[FL FR RL RR FC LFE] audio.channels=6' --playback-props='audio.position=[RR FL FR FC RL LFE] node.target=mysink audio.channels=6'
```
## Actual Results
Two "flipped" sinks appear in pavucontrol. When trying to use either the "flipped" sink or the "mysink" sink, playback just jams up, like it's stuck. Nothing is heard.
## Expected Results
There should only be one "flipped" sink in pavucontrol, as you normally get when using `pactl load-module` or `pw-loopback`.
## Additional Info
I compared the output of `pw-cli dump` with the same when using `pw-loopback` and they're practically identical.
### pipewire.conf
```
id: 37
permissions: rwxm
type: PipeWire:Interface:Node/3
input ports: 6/64
output ports: 6/0
state: "suspended"
properties:
node.description = "Flipped"
media.class = "Audio/Sink"
audio.position = "FL,FR,RL,RR,FC,LFE"
audio.channels = "6"
node.name = "flipped"
node.group = "loopback-28"
node.virtual = "true"
media.name = "loopback capture"
stream.is-live = "true"
node.autoconnect = "true"
adapt.follower.node = ""
factory.id = "18"
audio.adapt.follower = ""
factory.mode = "merge"
library.name = "audioconvert/libspa-audioconvert"
object.id = "37"
client.id = "36"
params:
3 (Spa:Enum:ParamId:EnumFormat) r-
1 (Spa:Enum:ParamId:PropInfo) r-
2 (Spa:Enum:ParamId:Props) rw
4 (Spa:Enum:ParamId:Format) -w
10 (Spa:Enum:ParamId:EnumPortConfig) r-
11 (Spa:Enum:ParamId:PortConfig) rw
15 (Spa:Enum:ParamId:Latency) -w
id: 38
permissions: rwxm
type: PipeWire:Interface:Node/3
input ports: 0/0
output ports: 6/64
state: "suspended"
properties:
node.target = "mysink"
audio.position = "RR,FL,FR,FC,RL,LFE"
audio.channels = "6"
stream.dont-remix = "true"
node.name = "flipped"
node.group = "loopback-28"
media.name = "loopback playback"
stream.is-live = "true"
node.autoconnect = "true"
media.class = "Stream/Output/Audio"
adapt.follower.node = ""
factory.id = "18"
audio.adapt.follower = ""
factory.mode = "split"
library.name = "audioconvert/libspa-audioconvert"
object.id = "38"
client.id = "36"
```
### pw-loopback
```
id: 61
permissions: rwxm
type: PipeWire:Interface:Node/3
input ports: 6/64
output ports: 6/0
state: "running"
properties:
media.class = "Audio/Sink"
node.name = "flipped"
audio.position = "[FL FR RL RR FC LFE]"
audio.channels = "6"
node.group = "pw-loopback-31968"
node.virtual = "true"
media.name = "loopback capture"
stream.is-live = "true"
node.autoconnect = "true"
adapt.follower.node = ""
factory.id = "7"
audio.adapt.follower = ""
factory.mode = "merge"
library.name = "audioconvert/libspa-audioconvert"
object.id = "61"
client.id = "62"
id: 65
permissions: rwxm
type: PipeWire:Interface:Node/3
input ports: 0/0
output ports: 6/64
state: "running"
properties:
audio.position = "[RR FL FR FC RL LFE]"
node.target = "mysink"
audio.channels = "6"
node.group = "pw-loopback-31968"
node.virtual = "true"
media.name = "loopback playback"
stream.is-live = "true"
node.name = "pw-loopback"
node.autoconnect = "true"
media.class = "Stream/Output/Audio"
adapt.follower.node = ""
factory.id = "7"
audio.adapt.follower = ""
factory.mode = "split"
library.name = "audioconvert/libspa-audioconvert"
object.id = "65"
client.id = "62"
params:
3 (Spa:Enum:ParamId:EnumFormat) r-
1 (Spa:Enum:ParamId:PropInfo) r-
2 (Spa:Enum:ParamId:Props) rw
4 (Spa:Enum:ParamId:Format) rw
10 (Spa:Enum:ParamId:EnumPortConfig) r-
11 (Spa:Enum:ParamId:PortConfig) rw
15 (Spa:Enum:ParamId:Latency) rw
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1359pipewire --help prints in russian2021-06-29T10:10:32ZXakep_SDKpipewire --help prints in russianMy pipewire --help output is in russian
```
pipewire --help
pipewire [опции]
-h, --help Показать справку
--version Информация о версии
-c, --config Ука...My pipewire --help output is in russian
```
pipewire --help
pipewire [опции]
-h, --help Показать справку
--version Информация о версии
-c, --config Указать файл конфигурации (По умолчанию pipewire.conf)
```
My locale
```
LANG=de_DE.UTF-8
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_PAPER="de_DE.UTF-8"
LC_NAME="de_DE.UTF-8"
LC_ADDRESS="de_DE.UTF-8"
LC_TELEPHONE="de_DE.UTF-8"
LC_MEASUREMENT="de_DE.UTF-8"
LC_IDENTIFICATION="de_DE.UTF-8"
LC_ALL=
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1360Can't select noise suppressed mic as default in pavucontrol2021-06-29T13:08:51ZXakep_SDKCan't select noise suppressed mic as default in pavucontrolI can't select noise suppressed microphone as default in pavucontrol when i use pipewire-pulse.
Audio level bar in pavucontrol stops moving. No sound is recorded.
When i use pulseaudio, i can select suppressed mic as default and it w...I can't select noise suppressed microphone as default in pavucontrol when i use pipewire-pulse.
Audio level bar in pavucontrol stops moving. No sound is recorded.
When i use pulseaudio, i can select suppressed mic as default and it will work.
My environment:
Default pulseaudio from Arch Linux with this line in the end of /etc/pulse/default.pa file:
`load-module module-echo-cancel aec_method=webrtc use_master_format=1`
My `~/.config/pipewire/pipewire-pulse.conf`
https://gitlab.freedesktop.org/-/snippets/2280
This creates issues in some games, like Counter-Strike 1.6. This game has no mic selector so i have to start pavucontrol and manually select noise suppressed mic.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1361Fedora packaging broken for 0.3.312021-07-01T21:55:44ZDaniel Benjamin MillerFedora packaging broken for 0.3.31`file /usr/bin/pipewire-media-session conflicts between attempted installs of pipewire-media-session-0.3.31-1.fc34.x86_64 and pipewire-0.3.31-2.fc34.x86_64`
Pretty self-explanatory, I think. The file is included in both packages. Applie...`file /usr/bin/pipewire-media-session conflicts between attempted installs of pipewire-media-session-0.3.31-1.fc34.x86_64 and pipewire-0.3.31-2.fc34.x86_64`
Pretty self-explanatory, I think. The file is included in both packages. Applies when upgrading from my copr on f34 (building from upstream): https://copr.fedorainfracloud.org/coprs/dbenjaminmiller/pipewire/.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1362Pipewire should filter out the UCM prefix2021-06-29T15:44:53ZBjörn Daasebjoern.daase@gmail.comPipewire should filter out the UCM prefix* pipewire 0.3.31
As discussed on IRC, pipewire should filter out the UCM prefix. This would avoid cards getting a different node name in pipewire each time they are connected, e.g. the number, in this case the 0006, in "alsa_output.usb...* pipewire 0.3.31
As discussed on IRC, pipewire should filter out the UCM prefix. This would avoid cards getting a different node name in pipewire each time they are connected, e.g. the number, in this case the 0006, in "alsa_output.usb-Generic_USB_Audio_200901010001-00.HiFi___ucm0006.hw_Dock_1__sink" for a Dell WD15 dock changing ever time.
[pw-dump.txt](/uploads/5865feb2135ee9cb68a013109aead90e/pw-dump.txt)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1363Can't reconnect recording device on Firefox 892021-07-21T15:56:32ZYuriCan't reconnect recording device on Firefox 89Running the latest pipewire 0.3.31, with media-session and pipewire-pulse.
When the microphone is being used by Firefox 89, I cannot reconnect the recording device (for example switching from usb headphones to internal mic, viceversa, o...Running the latest pipewire 0.3.31, with media-session and pipewire-pulse.
When the microphone is being used by Firefox 89, I cannot reconnect the recording device (for example switching from usb headphones to internal mic, viceversa, or even a monitor device) using pavucontrol. It stays to the first recording device that was picked initially.
After attempting the switch I see this on the log:
```
[T][00951.688333][ connection.c: 217 refill_buffer()] connection 0x555c58d05990: 18 read 96 bytes and 0 fds
[T][00951.688449][module-protocol-: 762 process_remote()] protocol-native 0x555c58d04990: got message 1 from 3 seq:347
[D][00951.688497][ impl-metadata.c: 175 impl_set_property()] metadata 0x555c58cf77e0: id:133 key:target.node type:Spa:Id value:49
[I][00951.688555][ impl-metadata.c: 196 impl_set_property()] metadata 0x555c58cf77e0: add id:133 key:target.node type:Spa:Id value:49
[T][00951.688592][module-protocol-: 885 on_client_need_flush()] need flush
[T][00951.688621][ loop.c: 378 loop_update_io()] loop 0x555c58d17c40: update 0000001d
[W][00951.688684][ policy-node.c: 1004 handle_move()] can't reconnect node 133 to 49
[T][00951.688740][ connection.c: 723 pw_protocol_native_connection_flush()] connection 0x555c58d05990: 18 written 96 bytes and 0 fds
[T][00951.688836][ loop.c: 378 loop_update_io()] loop 0x555c58d17c40: update 00000019
```
I can successfully reconnect the playback device though.
I don't have this issue with any program so far (for example, chromium).https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1364pipewire is not syncing mute status to hardware source device2022-04-13T09:15:07ZYaroslav Isakovpipewire is not syncing mute status to hardware source deviceIf you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
pipewire-0.3.31, Gentoo Linux, Sway
Description of Problem:
When I'm muting source in Pi...If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
pipewire-0.3.31, Gentoo Linux, Sway
Description of Problem:
When I'm muting source in PipeWire (using pactl set-source-mute), I can see that it's muted in pactl, but alsamixer shows that it's not. Also, LED on keyboard is also not lights up. Same thing in other direction - if I'm muting source in alsa (and LED shows me that it's muted), PipeWire thinks that it's not muted, in `pactl list sources`.
I'm using PipeWire on Thinkpad T460s, with onboard sound card.
No such problem with sink!
How Reproducible:
100%
Steps to Reproduce:
1. Start PipeWire, pipewire-session-manager and pipewire-pulse
2. Mute source in alsamixer
3. Observe that pipewire cannot see that source is muted, using `pactl list sources`
4. Unmute source with `pactl set-source-mute 39 0`
Actual Results:
No sound can be recorded from laptop's mic.
Expected Results:
Muted status must be synced between software and hardware devices.
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):[pw-dump.file](/uploads/a97fc007be8b11cdd5da8764d4d00924/pw-dump.file)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1365Link Factory fails despite nodes existing2021-07-01T13:57:48ZNoahLink Factory fails despite nodes existing# Version, Distribution, Desktop Environment:
```
pipewire
Compiled with libpipewire 0.3.31
Linked with libpipewire 0.3.31
```
Arch Linux, KDE 5.22.2
# Description of Problem:
The changelog of 0.3.26 states that:
> The link factory can...# Version, Distribution, Desktop Environment:
```
pipewire
Compiled with libpipewire 0.3.31
Linked with libpipewire 0.3.31
```
Arch Linux, KDE 5.22.2
# Description of Problem:
The changelog of 0.3.26 states that:
> The link factory can now also make links between nodes and
ports by name so that it can be used in scripts.
However I can't seem to get the link-factory to create a link between two nodes.
# How Reproducible:
Always
# Steps to Reproduce:
```cpp
pw_properties *props = pa_properties_new(nullptr, nullptr);
pw_properties_set(props, PW_KEY_APP_NAME, "soundux");
pw_properties_set(props, PW_KEY_LINK_INPUT_NODE, std::to_string(in).c_str());
pw_properties_set(props, PW_KEY_LINK_OUTPUT_NODE, std::to_string(out).c_str());
auto *proxy = reinterpret_cast<pw_proxy *>(pw_core_create_object(core, "link-factory", PW_TYPE_INTERFACE_Link, PW_VERSION_LINK, &props->dict, 0));
```
In this example:
`in` is equal to 101
`out` is equal to 102
I also tried to do the same with different nodes how ever that fails too, also `pw-cli` is also not able to create such a link successfully.
Also passing the node's names instead of their id does also not work.
When looking at the module-link-factory source code I could see the following:
```c
struct find_node find = {
.id = atoi(name),
.name = name,
};
if (find.id != 0) {
struct pw_global *global = pw_context_find_global(context, find.id);
if (global != NULL && pw_global_is_type(global, PW_TYPE_INTERFACE_Node))
return pw_global_get_object(global);
}
```
When I try to execute `pw_context_find_global` on the node ids of the two given nodes I get the following (most likely due to the fact that the nodes were already processed by onGlobalAdded):
```cpp
auto *node1 = pw_context_find_global(context, in);
auto *node2 = pw_context_find_global(context, out);
// node1 and node2 are both a nullptr;
```
How ever `pw-cli info <nodeId>` seems to work, pw-cli does not retrieve the node through `pw_context_find_global` but instead [maintains it's own node list](https://github.com/PipeWire/pipewire/blob/master/src/tools/pw-cli.c#L315)
Something that may be interesting to note is that the link-factory only fails to find the input **swapping the input and output still results in the input not being found**, this may be interesting because the input node is obtained **after** the output node, as seen [here](https://github.com/PipeWire/pipewire/blob/master/src/modules/module-link-factory.c#L374)
Info about the two nodes
```
pipewire-0>>info 101
id: 101
permissions: rwxm
type: PipeWire:Interface:Node/3
* input ports: 2/64
* output ports: 2/0
* state: "running"
* properties:
* media.class = "Audio/Sink"
* node.name = "soundux_sink"
* factory.name = "support.null-audio-sink"
* factory.id = "18"
* client.id = "124"
* node.driver = "true"
* factory.mode = "merge"
* audio.adapt.follower = ""
* library.name = "audioconvert/libspa-audioconvert"
* object.id = "101"
* params: (7)
* 3 (Spa:Enum:ParamId:EnumFormat) r-
* 1 (Spa:Enum:ParamId:PropInfo) r-
* 2 (Spa:Enum:ParamId:Props) rw
* 4 (Spa:Enum:ParamId:Format) rw
* 10 (Spa:Enum:ParamId:EnumPortConfig) r-
* 11 (Spa:Enum:ParamId:PortConfig) rw
* 0 (Spa:Enum:ParamId:Invalid) --
pipewire-0>>info 102
id: 102
permissions: rwxm
type: PipeWire:Interface:Node/3
* input ports: 2/64
* output ports: 2/0
* state: "running"
* properties:
* client.api = "pipewire-pulse"
* pulse.server.type = "unix"
* application.name = "WEBRTC VoiceEngine"
* application.process.id = "249577"
* application.process.user = "curve"
* application.process.host = "curve-arch"
* application.process.binary = "DiscordCanary"
* application.language = "en_US.UTF-8"
* window.x11.display = ":0"
* application.process.machine-id = "4a2080efbcb24c18aea62504bc32c5e0"
* application.process.session-id = "2"
* media.name = "recStream"
* stream.is-live = "true"
* node.name = "WEBRTC VoiceEngine"
* node.autoconnect = "true"
* media.class = "Stream/Input/Audio"
* adapt.follower.node = ""
* factory.id = "6"
* audio.adapt.follower = ""
* factory.mode = "merge"
* library.name = "audioconvert/libspa-audioconvert"
* object.id = "102"
* client.id = "78"
* node.latency = "1440/48000"
* pulse.attr.maxlength = "4194304"
* pulse.attr.fragsize = "5760"
* params: (7)
* 3 (Spa:Enum:ParamId:EnumFormat) r-
* 1 (Spa:Enum:ParamId:PropInfo) r-
* 2 (Spa:Enum:ParamId:Props) rw
* 4 (Spa:Enum:ParamId:Format) rw
* 10 (Spa:Enum:ParamId:EnumPortConfig) r-
* 11 (Spa:Enum:ParamId:PortConfig) rw
* 0 (Spa:Enum:ParamId:Invalid) rw
```
# Expected Results:
The two nodes are linked
# Actual Results:
The link factory reports the following error:
```"link-factory: unknown input port (null)"```
# Additional Info:
[dump.txt](/uploads/e8b946e29898e72a671a0a24cef836f3/dump.txt)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1366mSBC broken in current kernel versions2021-09-03T19:10:06ZP VmSBC broken in current kernel versionsBluetooth-next changed mSBC altsetting again:
https://lore.kernel.org/linux-bluetooth/E9F68188-F920-4CBA-95D4-4270472D63D6@holtmann.org/T/
<s>We'll need to test if things still work before this hits mainline, and complain if it doesn't....Bluetooth-next changed mSBC altsetting again:
https://lore.kernel.org/linux-bluetooth/E9F68188-F920-4CBA-95D4-4270472D63D6@holtmann.org/T/
<s>We'll need to test if things still work before this hits mainline, and complain if it doesn't.</s>
This breaks mSBC audio output (and possibly also input) with several USB bluetooth adapters (CSR, Broadcom, many Intel ones).
cf. also https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/1201#note_940568
Kernel patch that should fix this:
https://patchwork.kernel.org/project/bluetooth/patch/20210726180206.49703-1-pav@iki.fi/
-------------
For those who want to patch their kernel: find out how to build "out-of-tree" kernel modules on your distribution, and do so for `drivers/bluetooth` (be sure to understand what you are doing first). Eg. on Fedora 34, you'll need to do:
1. `sudo dnf install kernel-devel; sudo dnf build-dep kernel`
2. Download mainline kernel sources for the kernel version you have (check `uname -r`), from https://kernel.org/ (e.g. linux-5.13.8.tar.xz) and unpack them.
3. `cd linux-5.13.8/drivers/bluetooth`
4. Download and apply patch: `curl https://patchwork.kernel.org/project/bluetooth/patch/20210726180206.49703-1-pav@iki.fi/raw/ | patch -p3 -N -E`
5. `make -C /lib/modules/$(uname -r)/build M=$PWD modules`
6. As root, copy the *.ko files to `/lib/modules/5.13.6-200.fc34.x86_64/updates/` and do `modprobe -r btusb; depmod -a; modprobe btusb` to reload the new driver.
7. On some distros, the 'updates' directory doesn't exist and you need to copy them somewhere else there, and possibly also remove old modules. `modinfo btusb` tells which module is being used.
You'll also need to set `bluez5.enable-msbc = true` in `bluez-monitor.conf` https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Config-Bluetooth and restart pipewire, to override the blocklisting of the kernel versions in question.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1367Paused YouTube video causes Telegram to start slowly2021-09-29T21:44:09ZAsciiWolfPaused YouTube video causes Telegram to start slowlyFedora 34, pipewire-0.3.30-4.fc34.x86_64.
This issue is similar to #624 (that is already fixed), but it is not the same. When I have some paused YouTube video in Firefox (standard non-Flatpak Firefox from Fedora) and try to launch Teleg...Fedora 34, pipewire-0.3.30-4.fc34.x86_64.
This issue is similar to #624 (that is already fixed), but it is not the same. When I have some paused YouTube video in Firefox (standard non-Flatpak Firefox from Fedora) and try to launch Telegram (Flatpak version from Flathub), it takes several minutes for it to start. It starts immediately if I unpause the YouTube video. This appears on Telegram stdout afterwards:
```
AL lib: (EE) Error enumerating devices: Capture Stream did not get ready (No such entity)
AL lib: (EE) Error enumerating devices: Capture Stream did not get ready (No such entity)
AL lib: (EE) Error enumerating devices: Capture Stream did not get ready (No such entity)
error: : cannot open
error: : cannot open
error: : cannot open
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1368Bluetooth device occasionally disconnects and connects automatically2023-08-29T14:32:41ZSiddhartha SahuBluetooth device occasionally disconnects and connects automaticallyBluetooth Radio: Lenovo Thinkpad T480s, Intel Dual Band Wireless-AC 8265
Bluetooth Headset: Google mini speaker
Desktop Environment: KDE Plasma (git master)
Distribution: Arch Linux
Bluez: 5.59-2
Kernel: 5.12.13.arch1-2
PipeW...Bluetooth Radio: Lenovo Thinkpad T480s, Intel Dual Band Wireless-AC 8265
Bluetooth Headset: Google mini speaker
Desktop Environment: KDE Plasma (git master)
Distribution: Arch Linux
Bluez: 5.59-2
Kernel: 5.12.13.arch1-2
PipeWire: 1:0.3.31-1
Description of Problem:
The mini speaker is working well via laptop<->bluetooth. However, ever so often, the bluetooth connection automatically fails and reconnects.
How Reproducible: Not consistent. Sometimes every couple of hours.
Relevant kernel logs:
> Jun 29 15:41:18 bluetoothd[497]: /org/bluez/hci0/dev_F0_EF_86_AC_17_D1/sep2/fd0: fd(41) ready
> Jun 29 15:41:24 pipewire-pulse[1049]: client 0x5565e4e185c0 [Firefox Developer Edition]: stream 0x5565e4debe80 UNDERFLOW channel:0 offset:2109440 underrun:4096
> Jun 29 15:41:32 pipewire-pulse[1049]: client 0x5565e4e185c0 [Firefox Developer Edition]: stream 0x5565e4e7b5a0 UNDERFLOW channel:0 offset:2306048 underrun:4096
> Jun 29 15:43:08 pipewire-pulse[1049]: client 0x5565e4e185c0 [Firefox Developer Edition]: stream 0x5565e4e82450 UNDERFLOW channel:0 offset:36380672 underrun:4096
> Jun 29 15:43:13 pipewire-pulse[1049]: client 0x5565e4e185c0 [Firefox Developer Edition]: stream 0x5565e4e76f00 UNDERFLOW channel:0 offset:1568768 underrun:4096
> Jun 29 15:49:10 pipewire-pulse[1049]: client 0x5565e4e185c0 [Firefox Developer Edition]: stream 0x5565e4de8880 UNDERFLOW channel:0 offset:136609792 underrun:4096
> Jun 29 15:49:42 pipewire-pulse[1049]: client 0x5565e4e185c0 [Firefox Developer Edition]: stream 0x5565e4e80920 UNDERFLOW channel:0 offset:4911104 underrun:4096
> Jun 29 15:49:42 pipewire[1047]: (bluez_output.F0_EF_86_AC_17_D1.a2dp-sink-54) client too slow! rate:512/48000 pos:23453696 status:triggered
> Jun 29 15:49:42 pipewire[1047]: (bluez_output.F0_EF_86_AC_17_D1.a2dp-sink-54) client too slow! rate:512/48000 pos:23453696 status:triggered
> Jun 29 15:49:42 pipewire-media-session[1048]: (bluez_output.F0_EF_86_AC_17_D1.a2dp-sink-19) client missed 1 wakeups
> Jun 29 15:50:31 kernel: i915 0000:00:02.0: [drm] *ERROR* Atomic update failure on pipe B (start=62836 end=62837) time 285 us, min 1431, max 1439, scanline start 1417, end 1443
> Jun 29 15:50:33 pipewire-pulse[1049]: client 0x5565e4e185c0 [Firefox Developer Edition]: stream 0x5565e4db4f20 UNDERFLOW channel:0 offset:356352 underrun:4096
> Jun 29 15:51:41 pipewire-pulse[1049]: client 0x5565e4e185c0 [Firefox Developer Edition]: stream 0x5565e4de9c40 UNDERFLOW channel:0 offset:25546752 underrun:4096
> Jun 29 16:13:05 dbus-daemon[499]: [system] Rejected send message, 0 matched rules; type="method_return", sender=":1.47" (uid=1000 pid=1048 comm="/usr/bin/pipewire-media-session ") interface="(unset)" member="(unset)" error name="(unset)" requested_reply="0" destination=":1.3" (uid=0 pid=497 comm="/us>
> Jun 29 16:13:11 bluetoothd[497]: profiles/audio/avdtp.c:avdtp_connect_cb() connect to F0:EF:86:AC:17:D1: Host is down (112)
> Jun 29 16:13:18 bluetoothd[497]: profiles/audio/avdtp.c:avdtp_connect_cb() connect to F0:EF:86:AC:17:D1: Host is down (112)
> Jun 29 16:13:28 bluetoothd[497]: profiles/audio/avdtp.c:avdtp_connect_cb() connect to F0:EF:86:AC:17:D1: Host is down (112)
> Jun 29 16:13:37 kernel: input: Mini speaker (AVRCP) as /devices/virtual/input/input27
> Jun 29 16:13:37 systemd-logind[501]: Watching system buttons on /dev/input/event21 (Mini speaker (AVRCP))https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1369Suspend on idle can't be disabled2023-04-24T19:40:53ZJeffrey BouterSuspend on idle can't be disabled**Version, Distribution, Desktop Environment:**
KDE Neon (Ubuntu 20.04 LTS)
Pipewire 0.3.31 (using debian PPA)
KDE Plasma
**Description of Problem:**
Since yesterday's update on the PPA, my external sound card keeps getting cut off w...**Version, Distribution, Desktop Environment:**
KDE Neon (Ubuntu 20.04 LTS)
Pipewire 0.3.31 (using debian PPA)
KDE Plasma
**Description of Problem:**
Since yesterday's update on the PPA, my external sound card keeps getting cut off when no device is using it. In pulseaudio, I could work around this issue by disabling suspend-on-idle module. There's currently no documented way (that I can find, at least) on how to disable said module on pipewire. Though I am fairly certain there's an suspend-on-idle module in there.
**How Reproducible:**
Every single boot
**Steps to Reproduce:**
1. Use an external sound card
2. Use pipewire
3. Notice it "disconnects" the sound card
**Actual Results:**
External sound card keeps getting disconnected, making the speakers connected to it pop.
**Expected Results:**
External sound card remains in a "powered on" state at all times.
Additional Info Eg. `pw-dump -N > file` (As Attachment Please): [gitlab.txt](/uploads/d4e446a0888f606ba4a96932e6653ba5/gitlab.txt)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1370BLE Hearing Aid Support (LC3 codec?)2021-07-21T17:21:24ZNacho VidalBLE Hearing Aid Support (LC3 codec?)Streaming audio from a Bluetooth source to a hearing aid is a feature incorporated by recent hearing aids. As miniaturized devices, they use BLE codecs.
Some Android vendors (Samsung, OnePlus, Google, Apple...) implement this capability...Streaming audio from a Bluetooth source to a hearing aid is a feature incorporated by recent hearing aids. As miniaturized devices, they use BLE codecs.
Some Android vendors (Samsung, OnePlus, Google, Apple...) implement this capability. It is my understanding that the Hearing Aid industry is heading towards the LC3 codec, as it can be seen here: https://www.bluetooth.org/DocMan/handlers/DownloadDoc.ashx?doc_id=502107&vId=542963 (codec specification).
An Apache 2.0 licensed implementation of said code is available here: https://github.com/zephyrproject-rtos/liblc3codec
So... What would it take to implement Hearing Aid Bluetooth streaming into pipewire? Would this be an unreasonable effort, or would this be matter of simply implementing an LC3 codec?
I do own one of these hearing aids (which are sort of a niche and expensive devices), so I'm more than willing to help with this.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1371Pipewire crashes with module-filter-chain2021-08-29T10:20:51ZA TPipewire crashes with module-filter-chainI've been trying to use Pipewire's module-filter-chain to build a systemwide parametric EQ based on the sink-eq6 example. I was never able to get the example to work properly, but came up with the following, pasted into the `context.modu...I've been trying to use Pipewire's module-filter-chain to build a systemwide parametric EQ based on the sink-eq6 example. I was never able to get the example to work properly, but came up with the following, pasted into the `context.modules` array of the default pipewire.conf:
{ name = libpipewire-module-filter-chain
args = {
node.name = "effect_output.hpeq"
node.description = "Headphone EQ Sink"
media.name = "Headphone EQ Sink"
filter.graph = {
nodes = [
{
type = builtin
name = eq_preamp
label = bq_highshelf
control = { "Freq" = 0 "Q" = 1.0 "Gain" = -12.5 }
}
{
type = builtin
name = eq_band_1
label = bq_peaking
control = { "Freq" = 25.0 "Q" = 1.0 "Gain" = 7.0 }
}
{
type = builtin
name = eq_band_2
label = bq_lowshelf
control = { "Freq" = 105.0 "Q" = 0.71 "Gain" = 5.5 }
}
{
type = builtin
name = eq_band_3
label = bq_peaking
control = { "Freq" = 700.0 "Q" = 1.0 "Gain" = 1.0 }
}
{
type = builtin
name = eq_band_4
label = bq_peaking
control = { "Freq" = 1050.0 "Q" = 2.0 "Gain" = -1.8 }
}
{
type = builtin
name = eq_band_5
label = bq_peaking
control = { "Freq" = 1900.0 "Q" = 1.2 "Gain" = 5.7 }
}
{
type = builtin
name = eq_band_6
label = bq_peaking
control = { "Freq" = 2900.0 "Q" = 1.2 "Gain" = 2.0 }
}
{
type = builtin
name = eq_band_7
label = bq_peaking
control = { "Freq" = 6100.0 "Q" = 2.0 "Gain" = -2.8 }
}
{
type = builtin
name = eq_band_8
label = bq_peaking
control = { "Freq" = 6750.0 "Q" = 4.5 "Gain" = -4.7 }
}
{
type = builtin
name = eq_band_9
label = bq_peaking
control = { "Freq" = 8450.0 "Q" = 4.0 "Gain" = -2.9 }
}
]
links = [
{ output = "eq_preamp:Out" input = "eq_band_1:In" }
{ output = "eq_band_1:Out" input = "eq_band_2:In" }
{ output = "eq_band_2:Out" input = "eq_band_3:In" }
{ output = "eq_band_3:Out" input = "eq_band_4:In" }
{ output = "eq_band_4:Out" input = "eq_band_5:In" }
{ output = "eq_band_5:Out" input = "eq_band_6:In" }
{ output = "eq_band_6:Out" input = "eq_band_7:In" }
{ output = "eq_band_7:Out" input = "eq_band_8:In" }
{ output = "eq_band_8:Out" input = "eq_band_9:In" }
]
inputs = [ "eq_preamp:In" ]
outputs = [ "eq_band_9:Out" ]
}
capture.props = {
media.class = Audio/Sink
audio.channels = 2
audio.position = [ FL FR ]
}
playback.props = {
node.passive = true
audio.channels = 2
audio.position = [ FL FR ]
node.target = "alsa_output.pci-0000_2a_00.4.analog-stereo"
}
}
}
With Pipewire < 0.3.29 it largely failed with it producing 10 different nodes in the pw-link output. Trying it with 0.3.29 resulted in Pipewire running, and I had to manually add the channel mapping and node.target output device otherwise it wouldn't output anything. However only the preamp worked; the audio wasn't processed by further nodes i.e. it was just quieter.
With 0.3.31 vanilla Pipewire works OK, but adding the above filter just crashes Pipewire, with the following log from journalctl under Arch:
Jun 29 22:18:42 hostname systemd[1031]: Started Multimedia Service.
Jun 29 22:20:13 hostname pipewire[3086]: node 0x559d57703d20: output port 0 unknown
Jun 29 22:20:13 hostname pipewire[3086]: free(): double free detected in tcache 2
Jun 29 22:20:13 hostname systemd-coredump[3238]: [🡕] Process 3086 (pipewire) of user 1000 dumped core.
Stack trace of thread 3086:
#0 0x00007f0ffa21bd22 raise (libc.so.6 + 0x3cd22)
#1 0x00007f0ffa205862 abort (libc.so.6 + 0x26862)
#2 0x00007f0ffa25dd28 __libc_message (libc.so.6 + 0x7ed28)
#3 0x00007f0ffa26592a malloc_printerr (libc.so.6 + 0x8692a)
#4 0x00007f0ffa267408 _int_free (libc.so.6 + 0x88408)
#5 0x00007f0ffa26a9e8 __libc_free (libc.so.6 + 0x8b9e8)
#6 0x00007f0ffa42c3ea n/a (libpipewire-0.3.so.0 + 0x603ea)
#7 0x00007f0ff3e6894d n/a (libspa-audioconvert.so + 0x1994d)
#8 0x00007f0ff3e69527 n/a (libspa-audioconvert.so + 0x1a527)
#9 0x00007f0ff3ea217c n/a (libspa-audioconvert.so + 0x5317c)
#10 0x00007f0ff3ea2c04 n/a (libspa-audioconvert.so + 0x53c04)
#11 0x00007f0ff3e7710c n/a (libspa-audioconvert.so + 0x2810c)
#12 0x00007f0ff3e6a02e n/a (libspa-audioconvert.so + 0x1b02e)
#13 0x00007f0ffa433145 pw_impl_port_set_param (libpipewire-0.3.so.0 + 0x67145)
#14 0x00007f0ffa445933 n/a (libpipewire-0.3.so.0 + 0x79933)
#15 0x00007f0ffa445b84 n/a (libpipewire-0.3.so.0 + 0x79b84)
#16 0x00007f0ffa41cf37 pw_impl_link_destroy (libpipewire-0.3.so.0 + 0x50f37)
#17 0x00007f0ffa42c4c6 n/a (libpipewire-0.3.so.0 + 0x604c6)
#18 0x00007f0ff3e6894d n/a (libspa-audioconvert.so + 0x1994d)
#19 0x00007f0ff3e69527 n/a (libspa-audioconvert.so + 0x1a527)
#20 0x00007f0ff3ea217c n/a (libspa-audioconvert.so + 0x5317c)
#21 0x00007f0ff3ea2a11 n/a (libspa-audioconvert.so + 0x53a11)
#22 0x00007f0ff3e75e37 n/a (libspa-audioconvert.so + 0x26e37)
#23 0x00007f0ff3e76650 n/a (libspa-audioconvert.so + 0x27650)
#24 0x00007f0ff3e7232b n/a (libspa-audioconvert.so + 0x2332b)
#25 0x00007f0ff8238f80 n/a (libpipewire-module-client-node.so + 0xcf80)
#26 0x00007f0ff8249c75 n/a (libpipewire-module-client-node.so + 0x1dc75)
#27 0x00007f0ff929abc4 n/a (libpipewire-module-protocol-native.so + 0x11bc4)
#28 0x00007f0ff929b1b0 n/a (libpipewire-module-protocol-native.so + 0x121b0)
#29 0x00007f0ffa49c11b n/a (libspa-support.so + 0x811b)
#30 0x00007f0ffa415603 pw_main_loop_run (libpipewire-0.3.so.0 + 0x49603)
#31 0x0000559d567a0292 n/a (pipewire + 0x1292)
#32 0x00007f0ffa206b25 __libc_start_main (libc.so.6 + 0x27b25)
#33 0x0000559d567a03ee n/a (pipewire + 0x13ee)
Stack trace of thread 3087:
#0 0x00007f0ffa2dd92e epoll_wait (libc.so.6 + 0xfe92e)
#1 0x00007f0ffa4a5651 n/a (libspa-support.so + 0x11651)
#2 0x00007f0ffa49c084 n/a (libspa-support.so + 0x8084)
#3 0x00007f0ffa407250 n/a (libpipewire-0.3.so.0 + 0x3b250)
#4 0x00007f0ffa3b4259 start_thread (libpthread.so.0 + 0x9259)
#5 0x00007f0ffa2dd5e3 __clone (libc.so.6 + 0xfe5e3)
Jun 29 22:20:13 hostname systemd[1031]: pipewire.service: Main process exited, code=dumped, status=6/ABRT
Jun 29 22:20:13 hostname systemd[1031]: pipewire.service: Failed with result 'core-dump'.
Jun 29 22:20:13 hostname systemd[1031]: pipewire.service: Scheduled restart job, restart counter is at 2.
Jun 29 22:20:13 hostname systemd[1031]: Stopped Multimedia Service.
Thanks if you can consider debugging the filter chain so it works -- I hope I've got the rules right. The preamp I implemented from reading the biquad source code, it mentioned a freq of zero meant it was a gain filter only (this might be worth documenting or updating the sink-eq6 example, as without it any positive gain results in distortion).https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1372How to change the maximum volume2022-06-08T19:06:16ZSteven XuHow to change the maximum volumeMy headphones has an incredibly loud volume. I have installed `pulseeffects` which works to limit this, but the install size is rather big at 134MiB with dependencies.
I tried the approach at [Pipewire configuration to lower the volume ...My headphones has an incredibly loud volume. I have installed `pulseeffects` which works to limit this, but the install size is rather big at 134MiB with dependencies.
I tried the approach at [Pipewire configuration to lower the volume - Support / Sound - Manjaro Linux Forum](https://forum.manjaro.org/t/pipewire-configuration-to-lower-the-volume/59380/4), with the following file contents:
`/usr/share/alsa-card-profile/mixer/paths/analog-output-limit-max-volume.conf`:
```
[Element PCM]
switch = mute
volume = ignore
volume-limit = 0.10
override-map.1 = all
override-map.2 = all-left,all-right
```
`/usr/share/alsa-card-profile/mixer/profile-sets/profile-limit-max-volume.conf`:
```
[General]
auto-profiles = yes
[Mapping analog-stereo]
device-strings = front:%f
channel-map = left,right
paths-output = analog-output-limit-max-volume
```
`/etc/udev/rules.d/91-pipewire-limit-max-volume.rules`:
```
ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="8771", ENV{ACP_PROFILE_SET}="profile-limit-max-volume.conf"
```
The values are from `lsusb` `Bus 001 Device 002: ID 0bda:8771 Realtek Semiconductor Corp. Bluetooth Radio`. I also tried to add `/etc/udev/rules.d/pipewire-pulse-bt.rules`:
```
SUBSYSTEM=="input", ATTRS{phys}=="a0:9f:10:bb:0c:fd", ATTR{name}=="WH-1000XM3 (AVRCP)", ACTION=="add", TAG+="systemd", ENV{SYSTEMD_USER_WANTS}+="pipewire-pulse-bt-switch.service, ENV{ACP_PROFILE_SET}="profile-limit-max-volume.conf"
```
I then killed `pipewire-media-session` and ran `PIPEWIRE_DEBUG=4 pipewire-media-session 2>/tmp/pipewire.log`. But my `profile-limit-max-volume.conf` file isn't seen anywhere in the log file. I always get `default.conf` being loaded:
```
[D][03459.697882][ conf-parser.c: 177 pa_config_parse()] Parsing configuration file '/usr/share/alsa-card-profile/mixer/profile-sets/default.conf'
```
How can I get my own profile with the volume limit to be loaded instead?https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1373pipewire-pulse: Missing sink change event2022-04-12T18:16:40Zmwenzkowskipipewire-pulse: Missing sink change event**Version, Distribution, Desktop Environment:** 0.3.31, Arch Linux, Sway
# Description of Problem:
This is a follow-up issue of #1345. With the fix for that issue, I now get the correct sink state if I query the sink's information. But ...**Version, Distribution, Desktop Environment:** 0.3.31, Arch Linux, Sway
# Description of Problem:
This is a follow-up issue of #1345. With the fix for that issue, I now get the correct sink state if I query the sink's information. But if I subscribe to sink change events via `pa_context_subscribe()`, I don't get notified about the sink's state change when it goes from `running` to `idle` because its last sink-input is removed.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1374Merge request: Russian translation2021-07-06T14:03:14Zjtux270Merge request: Russian translationHello, please update Russian translation, https://l10n.gnome.org/media/upload-backup/PipeWire-master-po-ru-974025.po
Thank you.Hello, please update Russian translation, https://l10n.gnome.org/media/upload-backup/PipeWire-master-po-ru-974025.po
Thank you.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1375echo-cancel: not friendly to dynamic environments, UX issues2023-08-08T09:49:39ZAlexander Patrakovecho-cancel: not friendly to dynamic environments, UX issuesFirst of all, this is not really a technical ticket, but more an invitation to rethink the UX issues, to avoid repeating the mistake of baking UX mistakes into the API.
I have played with `pipewire-module-echo-cancel` on my desktop, by ...First of all, this is not really a technical ticket, but more an invitation to rethink the UX issues, to avoid repeating the mistake of baking UX mistakes into the API.
I have played with `pipewire-module-echo-cancel` on my desktop, by including this into `/etc/pipewire/media-session.d/media-session.conf`:
```
context.modules = [
...
{ name = libpipewire-module-echo-cancel
args = {
source.props = {
node.name = "echo-cancel.source"
node.description = "Echo Cancelled Mic"
}
sink.props = {
node.name = "echo-cancel.sink"
node.description = "Echo Cancelled Output"
}
}
}
]
```
This works OK in static setup with one microphone and one set of speakers, but this is only one simplistic case. Here are my objections to the current design:
1. Let's suppose that sometimes someone connects a second USB microphone (with supposedly better quality). But, because the number of echo-cancel devices is configured statically in the configuration file, this means that echo cancellation can be done only on one of them. Usually this is not an issue because one can switch the echo-cancel input to the correct microphone, and so far I didn't have a situation when I need two echo-cancelled microphones, but still, this feels suboptimal. Echo cancelers should be created dynamically for all microphones.
2. The whole notion of "THE sink that this microphone is echo-cancelled with" looks like a technical limitation. Currently, this is used as a way of routing the output of the apps that play to the echo-cancelled sink, and the microphone does pick up sounds made by other apps. There is no such notion in Windows, just a checkbox in the microphone settings. And I definitely don't want notifications that someone in my contact list has logged into Skype to be heard by the participants of an active Google Meet session. From the physical perspective, all microphones pick up sounds made by all speakers, so there is no "the", and speakers can appear and disappear at any time as well. And it makes more sense to me to echo-cancel all microphones with all currently active speakers, with the extra appeal that this would be a zero-settings solution.
The following questions should be considered:
1. What is the use case for allowing apps to opt out their playback streams from being echo-cancelled?
2. If the answer to question 1 is "none", why does the echo canceler present itself as a sink at all? Why can't it use the monitor source of each speaker? And, the "intelligibility enhancer" (that can modify the playback data) being part of WebRTC is not the answer, because this kind of processing can be separated.
3. If the answer to question 1 is not "none", what would be a useful way to decouple routing the echo-cancelled app eventually to the sink X, and echo-canceling it with sinks X, Y, and Z (currently impossible)?
I understand that I am combining two enhancement request into one issue, and they can individually be valid or invalid. Feel free to split. I also understand that it is not really possible to implement this without breaking PulseAudio compatibility in terms of module-echo-cancel arguments (the "THE master sink" issue is baked into the API).https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1376echo-cancel: sometimes wants to play or record on itself2021-07-20T07:54:45ZAlexander Patrakovecho-cancel: sometimes wants to play or record on itselfPulseAudio has code designed to prevent filter sinks and sources from being looped to themselves. Pipewire has no such code (probably because Jack allows loops and gives them well-defiled semantics), but this is not what the user wants f...PulseAudio has code designed to prevent filter sinks and sources from being looped to themselves. Pipewire has no such code (probably because Jack allows loops and gives them well-defiled semantics), but this is not what the user wants for echo cancellation.
The loop can be created manually, or sometimes occurs naturally due to hot-plug events, or because the only USB audio device is detected after the module is loaded.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1377deadlock in timerfd read2021-07-01T09:05:14ZGeorge Kiagiadakisdeadlock in timerfd readUnder some rare circumstances, it looks like timerfd may cause a deadlock.
This was originally reported at https://jira.automotivelinux.org/browse/SPEC-3957
Backtrace:
```
Thread 2 (Thread 0x7f53d8545700 (LWP 1961)):
#0 __GI___libc_re...Under some rare circumstances, it looks like timerfd may cause a deadlock.
This was originally reported at https://jira.automotivelinux.org/browse/SPEC-3957
Backtrace:
```
Thread 2 (Thread 0x7f53d8545700 (LWP 1961)):
#0 __GI___libc_read (nbytes=8, buf=0x7f53d8544c10, fd=55) at ../sysdeps/unix/sysv/linux/read.c:26
#1 __GI___libc_read (fd=55, buf=0x7f53d8544c10, nbytes=nbytes@entry=8) at ../sysdeps/unix/sysv/linux/read.c:24
#2 0x00007f53d86641d3 in read (__nbytes=8, __buf=<optimized out>, __fd=<optimized out>) at /usr/include/bits/unistd.h:44
#3 impl_timerfd_read (object=<optimized out>, fd=<optimized out>, expirations=<optimized out>) at ../git/spa/plugins/support/system.c:202
#4 0x00007f53d8658816 in on_timeout (source=<optimized out>) at ../git/spa/plugins/support/null-audio-sink.c:223
#5 0x00007f53d86563ab in loop_iterate (object=0x55c2d09a6b48, timeout=<optimized out>) at ../git/spa/plugins/support/loop.c:309
#6 0x00007f53d888f550 in do_loop (user_data=0x55c2d09a69f0) at ../git/src/pipewire/data-loop.c:79
#7 0x00007f53d8677e24 in start_thread (arg=<optimized out>) at pthread_create.c:477
#8 0x00007f53d878cdcf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Thread 1 (Thread 0x7f53d866db80 (LWP 1958)):
#0 __GI___libc_read (nbytes=8, buf=0x7ffe28e425a0, fd=12) at ../sysdeps/unix/sysv/linux/read.c:26
#1 __GI___libc_read (fd=12, buf=0x7ffe28e425a0, nbytes=nbytes@entry=8) at ../sysdeps/unix/sysv/linux/read.c:24
#2 0x00007f53d8663b73 in read (__nbytes=8, __buf=<optimized out>, __fd=<optimized out>) at /usr/include/bits/unistd.h:44
#3 impl_eventfd_read (object=<optimized out>, fd=<optimized out>, count=<optimized out>) at ../git/spa/plugins/support/system.c:232
#4 0x00007f53d86569d4 in loop_invoke (object=0x55c2d09a6b48, func=<optimized out>, seq=4294967295, data=<optimized out>, size=<optimized out>, block=<optimized out>, user_data=<optimized out>) at ../git/spa/plugins/support/loop.c:222
#5 0x00007f53d88a53a0 in pw_impl_link_deactivate (this=0x55c2d0b79ca0) at ../git/src/pipewire/impl-link.c:725
#6 pw_impl_link_deactivate (this=this@entry=0x55c2d0b79ca0) at ../git/src/pipewire/impl-link.c:716
#7 0x00007f53d88acae8 in node_deactivate (this=<optimized out>) at ../git/src/pipewire/impl-node.c:98
#8 pause_node (this=<optimized out>) at ../git/src/pipewire/impl-node.c:196
#9 pause_node (this=0x55c2d0a286e0) at ../git/src/pipewire/impl-node.c:185
#10 0x00007f53d88b4b0d in pw_impl_node_set_state (node=0x55c2d0a286e0, state=PW_NODE_STATE_IDLE) at ../git/src/pipewire/impl-node.c:2093
#11 0x00007f53d8888c30 in ensure_state (node=node@entry=0x55c2d0a286e0, running=running@entry=false) at ../git/src/pipewire/context.c:877
#12 0x00007f53d888c55b in pw_context_recalc_graph (context=<optimized out>, reason=reason@entry=0x7f53d88e5e06 "node deactivate") at ../git/src/pipewire/context.c:1084
#13 0x00007f53d88b4efd in pw_impl_node_set_active (node=0x55c2d0a48880, active=<optimized out>) at ../git/src/pipewire/impl-node.c:2137
#14 0x00007f53d7cb0ded in client_node_demarshal_set_active (object=0x55c2d0b13cf0, msg=<optimized out>) at ../git/src/modules/module-client-node/protocol-native.c:1027
#15 0x00007f53d7d0c165 in process_messages (data=0x55c2d0d4a9c0) at ../git/src/modules/module-protocol-native.c:238
#16 0x00007f53d7d0c421 in connection_data (data=0x55c2d0d4a9c0, fd=<optimized out>, mask=1) at ../git/src/modules/module-protocol-native.c:309
#17 0x00007f53d86563ab in loop_iterate (object=0x55c2d099b678, timeout=<optimized out>) at ../git/spa/plugins/support/loop.c:309
#18 0x00007f53d88a865b in pw_main_loop_run (loop=0x55c2d099b530) at ../git/src/pipewire/main-loop.c:154
#19 0x000055c2d09903bf in main (argc=<optimized out>, argv=<optimized out>) at ../git/src/daemon/pipewire.c:118
```
Tail from strace log:
```
1958 timerfd_settime(55, TFD_TIMER_ABSTIME, {it_interval={tv_sec=0, tv_nsec=0}, it_value={tv_sec=0, tv_nsec=0}}, <unfinished ...>
1961 <... epoll_wait resumed>[{EPOLLIN, {u32=3500287432, u64=94295212303816}}, {EPOLLIN, {u32=3500304056, u64=94295212320440}}, {EPOLLIN, {u32=3500320680, u64=94295212337064}}], 32, -1) = 3
1958 <... timerfd_settime resumed>NULL) = 0
1958 write(61, "\1\0\0\0\0\0\0\0", 8 <unfinished ...>
1961 read(55, <unfinished ...>
1958 <... write resumed>) = 8
1958 write(11, "\1\0\0\0\0\0\0\0", 8) = 8
1958 read(12, <detached ...>
```
It looks like thread 1958 cancels the timerfd while it is trying to stop a null sink. At around the same time, thread 1961 calls the `on_timeout` callback and tries to read the timerfd. Because the timerfd has been cancelled, read() blocks forever and the data thread stalls.George KiagiadakisGeorge Kiagiadakishttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1378Error compiling pipewire2022-04-12T18:08:30ZJamesError compiling pipewireI get the following error while compiling pipewire:
```
[ 85s] + DESTDIR=/home/abuild/rpmbuild/BUILDROOT/pipewire-0.3.6-2.1.x86_64
[ 85s] + /usr/bin/meson install -C x86_64-redhat-linux-gnu --no-rebuild
[ 86s] Traceback (most rece...I get the following error while compiling pipewire:
```
[ 85s] + DESTDIR=/home/abuild/rpmbuild/BUILDROOT/pipewire-0.3.6-2.1.x86_64
[ 85s] + /usr/bin/meson install -C x86_64-redhat-linux-gnu --no-rebuild
[ 86s] Traceback (most recent call last):
[ 86s] File "/usr/lib/python3.6/site-packages/mesonbuild/mesonmain.py", line 140, in run
[ 86s] return options.run_func(options)
[ 86s] File "/usr/lib/python3.6/site-packages/mesonbuild/minstall.py", line 544, in run
[ 86s] installer.do_install(datafilename)
[ 86s] File "/usr/lib/python3.6/site-packages/mesonbuild/minstall.py", line 362, in do_install
[ 86s] self.install_targets(d)
[ 86s] File "/usr/lib/python3.6/site-packages/mesonbuild/minstall.py", line 458, in install_targets
[ 86s] raise RuntimeError('File {!r} could not be found'.format(t.fname))
[ 86s] RuntimeError: File 'spa/plugins/alsa/libspa-alsa.so' could not be found
[ 86s] error: Bad exit status from /var/tmp/rpm-tmp.bM5y7z (%install)
[ 86s]
[ 86s]
[ 86s] RPM build errors:
[ 86s] Macro expanded in comment on line 7: (c=%{gitcommit}; echo ${c:0:5})
[ 86s]
[ 86s] Bad exit status from /var/tmp/rpm-tmp.bM5y7z (%install)
[ 86s] ### VM INTERACTION START ###
[ 87s] Powering off.
[ 87s] [ 76.964950] reboot: Power down
[ 87s] ### VM INTERACTION END ###
[ 87s]
[ 87s] goat07 failed "build _service:download_src_package:pipewire.spec" at Thu Jul 1 08:25:16 UTC 2021.
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1379No PulseAudio sink/sources for "JACK client" device when using api.jack.device2023-05-16T14:35:04ZMichele SorcinelliNo PulseAudio sink/sources for "JACK client" device when using api.jack.deviceVersion, Distribution, Desktop Environment: master, Arch Linux, Sway (reproduced running the latest master with the `pw-uninstalled.sh` script and `make run` from the build directory, but can also be reproduced on the stable version inst...Version, Distribution, Desktop Environment: master, Arch Linux, Sway (reproduced running the latest master with the `pw-uninstalled.sh` script and `make run` from the build directory, but can also be reproduced on the stable version installed in the system).
Description of Problem: When running PipeWire as JACK client, pulse clients reach the JACK system playback ports correctly, but there's no sink and source in the PulseAudio `JACK client` device.
Steps to Reproduce:
1. run a JACK daemon, I've started it using `jack_control` CLI tool from the DBus integration
2. configure `media-session.d/alsa-monitor.conf` (in the buildddir daemon config) to have `alsa.jack_device = true` in the `properties` section, as documented [here](https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Config-JACK#jack-bridge)
3. run PipeWire with the `pw-uninstalled.sh` script and `make run` from the build directory
4. play a stream from a pulse client, e.g. `mpv --ao=pulse <file_or_url>`
Actual Results:
The stream is reaching the physical device through the JACK playback ports, as expected. However the PulseAudio profile doesn't have sink or sources, so it's not possible for example to use the capture port as a capture input port in a Pulse client (e.g. to use the microphone in the browser).
```
$ jack_lsp
system:capture_1
system:capture_2
system:playback_1
system:playback_2
PipeWire:capture_1
PipeWire:capture_2
PipeWire:playback_1
PipeWire:playback_2
$ pactl list cards
Card #40
Name: JACK Client
Driver: jack
Owner Module: n/a
Properties:
factory.name = "api.jack.device"
node.name = "JACK-Device"
factory.id = "8"
client.id = "32"
device.api = "jack"
device.nick = "jack"
device.name = "JACK Client"
device.description = "JACK Client"
api.jack.server = "default"
media.class = "Audio/Device"
object.id = "40"
Profiles:
off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
on: On (sinks: 0, sources: 0, priority: 0, available: yes)
Active Profile: off
$ pactl list sources
$ pactl list sinks
```
Also the JACK client device has `on` and `off` profile, but `on` can't be activated.
Expected Results:
The JACK client device should show a sink and a source, which are related to the JACK ports (`PipeWire:{playback,capture}_{1,2}`)
Additional Info Eg. `pw-dump -N > file`: [dump.json](/uploads/cf6cd0eff39c3df7a76656327554fc30/dump.json)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1380Surge (VST3 plugins?) crashes on startup2022-01-21T03:22:22ZKhairil YusofSurge (VST3 plugins?) crashes on startupVersion, Distribution, Desktop Environment:
pipewire 0.3.31-3~ubuntu21.04, Ubuntu 21.04, Gnome/Wayland
Description of Problem:
When trying to load Surge Synth an open source VST3 plugin (https://surge-synthesizer.github.io/) , via Car...Version, Distribution, Desktop Environment:
pipewire 0.3.31-3~ubuntu21.04, Ubuntu 21.04, Gnome/Wayland
Description of Problem:
When trying to load Surge Synth an open source VST3 plugin (https://surge-synthesizer.github.io/) , via Carla or Bitwig, it crashes on startup.
How Reproducible:
Every time when trying to load Surge VST3 plugin, via Carla or Bitwig.
Steps to Reproduce:
1. Open Carla
2. Carla Configure Plugin Path, so that vst3 library where Surge is installed is added (with Debian package it will be at /usr/lib/vst3)
3. Add Plugin, Surge (Scan on first go to detect Synth VST after adding path)
Actual Results:
"Killed" in terminal and Carla crashes, after Add Plugin and selecting Surge.
Expected Results:
Surge synth, VST3 will load, and user will be able to open the interface and connect it to MIDI Input to generate sounds.
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):
All VST2 plugins don't seem to have this problem.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1381Default analog-output.conf paths file does not work well for Audigy 5/Rx2023-05-27T23:19:13ZKyleDefault analog-output.conf paths file does not work well for Audigy 5/RxVersion, Distribution, Desktop Environment: 0.3.31, Arch, KDE
Description of Problem: With default audigy.conf alsa profile and stereo speakers, adjusting the volume up or down sets the Front channel to 100% and causes distortion.
How ...Version, Distribution, Desktop Environment: 0.3.31, Arch, KDE
Description of Problem: With default audigy.conf alsa profile and stereo speakers, adjusting the volume up or down sets the Front channel to 100% and causes distortion.
How to Reproduce: With Audigy 5/Rx set to Analog Stereo Duplex, open alsamixer and adjust the volume up or down using KDE volume widget.
Actual Results: Front channel in alsamixer gets set to 100% which causes distortion on this particular card. I had the same problem on an older Audigy 2 card (also emu10k1) with Pulseaudio but was able to fix it using the flat-volumes option. Pipewire doesn't seem to have a flat-volumes option.
Expected Results: I don't want Pipewire to set my Front and other channels to 100% when I adjust the volume because anything over 70% or so on the Front channel causes distortion. I only want it to adjust the Master channel. There doesn't seem to be an option in pipewire to override this behavior, so I had to create a custom udev rule which loads a custom alsa profile/path file. In the custom path file, I changed all the channels to "volume = ignore" except Master, and now my volume control works as expected with no distortion.
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):[pw.txt](/uploads/efc4e5bfa3a49ba8940da810859f0c6e/pw.txt)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1382Quod Libet wrongly stays in "paused" state if stopped on song boundary2021-11-02T02:27:36ZKalvinQuod Libet wrongly stays in "paused" state if stopped on song boundary## Note
I'm not sure this is the right place to file the issue — apologies if it could be better routed.
* Fedora 34
* `pipewire-0.3.31-2`
* Default configuration (all config migrated recently to `/usr/share` and no user-generated over...## Note
I'm not sure this is the right place to file the issue — apologies if it could be better routed.
* Fedora 34
* `pipewire-0.3.31-2`
* Default configuration (all config migrated recently to `/usr/share` and no user-generated overrides in `${HOME}/.config/pipewire`).
* This means `session.suspend-timeout-seconds` is commented out in `media-session.d/alsa-monitor.conf` (and defaulted to 5?)
## Reproduction Steps
1. Set Quod Libet to "stop after current song."
1. Allow playback to run out and stop by itself.
1. Wait a few seconds. (I previously said "wait a few minutes," but it looks like this can happen almost immediately after the pause event.)
1. Attempt to resume playback.
At this point, Quod Libet thinks that it should be playing (and the seek bar reflects this), but no sound is audible.
A workaround that always unsticks me is to pause and play again; the sound will then be audible.
The following graphs were dumped during reproduction.
While playing with a "stop-after" pending:
![00-playing](/uploads/82776851c8443ddc1d85608f1c55e39c/00-playing.png)
While paused, having finished the "current" song:
![01-paused](/uploads/ec66cfb9b4cfac3f3c787895846226f6/01-paused.png)
After several minutes have elapsed and I'm about to hit "play:"
![02-still-paused](/uploads/e75c3e9c2f4e018e421e460ec2c98010/02-still-paused.png)
After I've hit "play," expecting to hear audio output:
![03-now-playing-but-muted](/uploads/8e27df25a36367fb1cbe66a424e39134/03-now-playing-but-muted.png)
After I've paused again, realizing that audio output was lost:
![04-now-paused-to-remedy](/uploads/7d264e8c4dab23c60c73cbe5603b48ad/04-now-paused-to-remedy.png)
After I've hit "play" once more, and output is now audible once more:
![05-now-playing-and-audible](/uploads/0d52ae1189f56471d552ae991d50c6f3/05-now-playing-and-audible.png)
I note that setting `session.suspend-timeout-seconds = 0` in `media-session.d/alsa-monitor.conf` (and restarting `pipewire`) prevents this issue from happening altogether.
I'd appreciate feedback as to whether I might take this up with the Fedora Pipewire maintainers, the Quod Libet maintainers, or somebody else.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1383A2DP sink couldn't be detected2021-07-02T12:43:17ZJeff SheeA2DP sink couldn't be detectedIf you are filing this issue with a regular release please try master as it might already be fixed. Also test with PulseAudio because if it doesn't work there it's not going to here either.
Bluetooth Radio, Bluetooth Headset, Desktop En...If you are filing this issue with a regular release please try master as it might already be fixed. Also test with PulseAudio because if it doesn't work there it's not going to here either.
Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
OS: Fedora 34
Kernel version: 5.12.13
```
❯ rpm -qa | egrep "pulseaudio|pipewire|gstream|bluez"
pulseaudio-libs-14.2-3.fc34.x86_64
pulseaudio-libs-glib2-14.2-3.fc34.x86_64
gstreamer-plugin-viperfx-f6b4d8b-1.fc34.x86_64
gstreamer1-plugin-openh264-1.18.2-1.fc34.x86_64
pulseaudio-libs-devel-14.2-3.fc34.x86_64
pulseaudio-libs-14.2-3.fc34.i686
PackageKit-gstreamer-plugin-1.2.3-1.fc34.x86_64
pipewire0.2-libs-0.2.7-5.fc34.x86_64
wine-pulseaudio-6.11-1.fc34.x86_64
wine-pulseaudio-6.11-1.fc34.i686
gstreamer1-1.19.1-2.1.18.4.fc34.x86_64
gstreamer1-plugins-base-1.19.1-2.1.18.4.fc34.x86_64
gstreamer1-plugins-bad-free-1.19.1-2.1.18.4.fc34.x86_64
gstreamer1-plugins-good-1.19.1-2.1.18.4.fc34.x86_64
gstreamer1-plugins-good-qt-1.19.1-2.1.18.4.fc34.x86_64
gstreamer1-plugins-ugly-free-1.19.1-2.1.18.4.fc34.x86_64
gstreamer1-devel-1.19.1-2.1.18.4.fc34.x86_64
gstreamer1-plugins-base-devel-1.19.1-2.1.18.4.fc34.x86_64
gstreamer1-plugins-bad-free-devel-1.19.1-2.1.18.4.fc34.x86_64
gstreamer1-plugins-ugly-1.18.4-2.fc34.x86_64
gstreamer1-plugins-good-gtk-1.19.1-2.1.18.4.fc34.x86_64
gstreamer1-plugins-bad-free-extras-1.19.1-2.1.18.4.fc34.x86_64
gstreamer1-plugins-bad-freeworld-1.18.4-4.fc34.x86_64
gstreamer1-libav-1.18.4-3.fc34.x86_64
python3-gstreamer1-1.19.1-2.1.18.4.fc34.x86_64
gstreamer1-1.19.1-2.1.18.4.fc34.i686
gstreamer1-plugins-base-1.19.1-2.1.18.4.fc34.i686
gstreamer1-plugins-good-1.19.1-2.1.18.4.fc34.i686
pipewire-jack-audio-connection-kit-0.3.31-2.fc34.x86_64
pulseaudio-utils-14.2-3.fc34.x86_64
bluez-libs-5.59-1.fc34.x86_64
bluez-5.59-1.fc34.x86_64
bluez-libs-5.59-1.fc34.i686
bluez-cups-5.59-1.fc34.x86_64
bluez-obexd-5.59-1.fc34.x86_64
pipewire-libs-0.3.31-2.fc34.i686
pipewire-alsa-0.3.31-2.fc34.i686
pipewire-libs-0.3.31-2.fc34.x86_64
pipewire-alsa-0.3.31-2.fc34.x86_64
pipewire-gstreamer-0.3.31-2.fc34.x86_64
pipewire-utils-0.3.31-2.fc34.x86_64
pipewire-0.3.31-2.fc34.x86_64
pipewire-0.3.31-2.fc34.i686
alsa-plugins-pulseaudio-1.2.5-1.fc34.x86_64
alsa-plugins-pulseaudio-1.2.5-1.fc34.i686
pipewire-pulseaudio-0.3.31-2.fc34.x86_64
```
Description of Problem:
I own a Sennheiser cx400bt earbuds. It's working fine on other devices. It was working fine on this PC as well, but now it seems that A2DP sink couldn't be detected.
![Screenshot_from_2021-07-02_17-38-38](/uploads/52e6cc291d404f88474e98e39f6dc86f/Screenshot_from_2021-07-02_17-38-38.png)
I believe the issue started occurring after a recent system update. I tried downgrading the `pipewire` and `bluez`, but it doesn't work. Reinstalling the `pipewire` and `bluez` also didn't solve the issue.
To investigate the issue, I also tried with another PC with the same OS and same version of the kernel, pipewire, bluez, etc. It works.
![Screenshot_from_2021-07-02_17-48-56](/uploads/44390c69aa0f115eab8373e68d5003d5/Screenshot_from_2021-07-02_17-48-56.png)
Did I misconfigure something that leads to this issue? Please advise.
Additional informations:
```
❯ systemctl --user status pipewire.service
● pipewire.service - Multimedia Service
Loaded: loaded (/usr/lib/systemd/user/pipewire.service; disabled; vendor p>
Drop-In: /usr/lib/systemd/user/pipewire.service.d
└─00-uresourced.conf
Active: active (running) since Fri 2021-07-02 17:34:17 JST; 59min ago
TriggeredBy: ● pipewire.socket
Main PID: 2256 (pipewire)
Tasks: 4 (limit: 38386)
Memory: 13.5M
CPU: 13.980s
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewi>
├─2256 /usr/bin/pipewire
└─2269 /usr/bin/pipewire-media-session
Jul 02 18:05:59 ikaros pipewire-media-session[2269]: sbc_decode failed: -3
Jul 02 18:05:59 ikaros pipewire-media-session[2269]: sbc_decode failed: -3
Jul 02 18:06:00 ikaros pipewire-media-session[2269]: sbc_decode failed: -3
Jul 02 18:06:02 ikaros pipewire-media-session[2269]: sbc_decode failed: -3
Jul 02 18:06:05 ikaros pipewire-media-session[2269]: sbc_decode failed: -3
Jul 02 18:06:14 ikaros pipewire-media-session[2269]: sbc_decode failed: -3
Jul 02 18:06:14 ikaros pipewire-media-session[2269]: sbc_decode failed: -3
Jul 02 18:06:15 ikaros pipewire-media-session[2269]: sbc_decode failed: -3
Jul 02 18:06:28 ikaros pipewire-media-session[2269]: sbc_decode failed: -3
❯ systemctl --user status pipewire-pulse.service
● pipewire-pulse.service - PipeWire PulseAudio
Loaded: loaded (/usr/lib/systemd/user/pipewire-pulse.service; disabled; vendor preset: disabled)
Active: active (running) since Fri 2021-07-02 17:34:17 JST; 1h 1min ago
TriggeredBy: ● pipewire-pulse.socket
Main PID: 2257 (pipewire-pulse)
Tasks: 2 (limit: 38386)
Memory: 43.4M
CPU: 9.756s
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire-pulse.service
└─2257 /usr/bin/pipewire-pulse
Jul 02 18:06:39 ikaros pipewire-pulse[2257]: pulse-server 0x55b3516fc6c0: card 84 port 0 profiles inconsistent (1 < 3)
Jul 02 18:06:39 ikaros pipewire-pulse[2257]: pulse-server 0x55b3516fc6c0: card 84 port 1 profiles inconsistent (1 < 3)
Jul 02 18:06:39 ikaros pipewire-pulse[2257]: pulse-server 0x55b3516fc6c0: card 84 port 0 profiles inconsistent (1 < 3)
Jul 02 18:06:39 ikaros pipewire-pulse[2257]: pulse-server 0x55b3516fc6c0: card 84 port 1 profiles inconsistent (1 < 3)
Jul 02 18:06:39 ikaros pipewire-pulse[2257]: pulse-server 0x55b3516fc6c0: card 84 port 0 profiles inconsistent (1 < 3)
Jul 02 18:06:39 ikaros pipewire-pulse[2257]: pulse-server 0x55b3516fc6c0: card 84 port 1 profiles inconsistent (1 < 3)
Jul 02 18:06:39 ikaros pipewire-pulse[2257]: pulse-server 0x55b3516fc6c0: card 84 port 0 profiles inconsistent (1 < 3)
Jul 02 18:06:39 ikaros pipewire-pulse[2257]: pulse-server 0x55b3516fc6c0: card 84 port 1 profiles inconsistent (1 < 3)
Jul 02 18:06:39 ikaros pipewire-pulse[2257]: pulse-server 0x55b3516fc6c0: card 84 port 0 profiles inconsistent (1 < 3)
Jul 02 18:06:39 ikaros pipewire-pulse[2257]: pulse-server 0x55b3516fc6c0: card 84 port 1 profiles inconsistent (1 < 3)
```
How Reproducible:
Always. I had tried pairing the earbuds and reboot the PC many times.
Steps to Reproduce:
Since this issue only occurs on one of my devices so far, it might not be reproducible. I don't know what is the cause.
1. Connect to the earbuds via Bluetooth.
2. Check the sound setting, the A2DP sink isn't available.
Actual Results:
Refer to the first picture.
Expected Results:
Refer to the second picture.
Additional Info Eg. Additional Kernel Patches, `pw-dump -N > file` (As Attachment Please):
```
❯ pw-dump -N > file
[W][04168.708048][ context.c: 177 try_load_conf()] context 0x5560b5172670: can't load config client.conf: No such file or directory
[E][04168.708469][ context.c: 269 pw_context_new()] context 0x5560b5172670: can't load config client.conf: No such file or directory
can't create context: No such file or directory
```
Seems doesn't work. I can provide logs if you tell me how to get it. Thanks!https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1384Can't set or get default sound card volume with amixer2021-09-14T19:11:57ZSourav Dassouravdas142@gmail.comCan't set or get default sound card volume with amixerIf you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
0.3.31, Arch-Linux, i3-wm
Description of Problem:
Can't get or set sound information of d...If you are filing this issue with a regular release please try master as it might already be fixed.
Version, Distribution, Desktop Environment:
0.3.31, Arch-Linux, i3-wm
Description of Problem:
Can't get or set sound information of default sound card with `amixer -D default get Master`, The output of the command - `amixer: Unable to find simple control 'Master',0` Below is the screenshot of `alsamixer` -
![image](/uploads/f6698db17f83cd8c2f959ca357d8e2c4/image.png)
How Reproducible:
Always
Steps to Reproduce:
1. compile >= commit e301048abb7d861b81a31da47dd2f394d8953354 (found from `git bisect`) from [`PKGBUILD`](https://github.com/archlinux/svntogit-packages/blob/packages/pipewire/trunk/PKGBUILD)
2. Install generated pkgs with `pacman -U` reload and restart PW user system services
3. Open `alsamixer` you can find the bug, Or, give `amixer -D default get Master` you can find No sound Information
Actual Results:
Can't set or get default sound from `amixer` or `alsamixer`
Expected Results:
We should change default sound from the `alsamixer` also.
<img src="https://gitlab.freedesktop.org/pipewire/pipewire/uploads/aee8f54014ebf2d20b4c81d0d1bc0ded/image.png" height=350 width=480>
Or, we should get the output from `amixer -D default get Master`, like below
```bash
┌─[✗]─[sourav@Arch-Linux]─[pipewire-bin]
└──╼ $ amixer -D default get Master
Simple mixer control 'Master',0
Capabilities: pvolume pswitch pswitch-joined
Playback channels: Front Left - Front Right
Limits: Playback 0 - 65536
Mono:
Front Left: Playback 57853 [88%] [on]
Front Right: Playback 57853 [88%] [on]
```
Additional Info Eg. `pw-dump -N > file` (As Attachment Please):
[pw-dump.log](/uploads/0cbbc510ce78a10e260e8a1ffebd1d59/pw-dump.log)
On addition, If I downgrade `pipewire-media-session` package only (from `0.3.31-1` to `0.3.30-2`), The problem seems to be fixed.
**The `pipewire-media-session` package (0.3.31-1) contents -**
```bash
usr/
usr/bin/
usr/bin/pipewire-media-session
usr/lib/
usr/lib/systemd/
usr/lib/systemd/user/
usr/lib/systemd/user/pipewire-media-session.service
usr/share/
usr/share/licenses/
usr/share/licenses/pipewire-media-session/
usr/share/licenses/pipewire-media-session/COPYING
usr/share/pipewire/
usr/share/pipewire/media-session.d/
usr/share/pipewire/media-session.d/alsa-monitor.conf
usr/share/pipewire/media-session.d/bluez-hardware.conf
usr/share/pipewire/media-session.d/bluez-monitor.conf
usr/share/pipewire/media-session.d/media-session.conf
usr/share/pipewire/media-session.d/v4l2-monitor.conf
```
**package Links to so-names -**
```bash
libasound.so.2
libc.so.6
libdbus-1.so.3
libpipewire-0.3.so.0
libpthread.so.0
libsystemd.so.0
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1385Too much underflow, stuttering sound2022-04-12T18:06:57ZCsaba R.Too much underflow, stuttering soundIs this a regression?
pipewire-0.3.31-2.fc34.x86_64
[log1.txt](/uploads/9f0c21ff321b517bbf18e268345f74e1/log1.txt)Is this a regression?
pipewire-0.3.31-2.fc34.x86_64
[log1.txt](/uploads/9f0c21ff321b517bbf18e268345f74e1/log1.txt)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1386pw-jack: spurious 0-frame cycles2021-07-03T18:38:06ZHector Martinpw-jack: spurious 0-frame cyclesVersion: 0.3.31
Description of Problem:
pw-jack sometimes returns spurious 0-size cycles to the application, which confuses and crashes Ardour (and presumably others; this isn't legal AIUI)
As far as I can tell, the code path that cau...Version: 0.3.31
Description of Problem:
pw-jack sometimes returns spurious 0-size cycles to the application, which confuses and crashes Ardour (and presumably others; this isn't legal AIUI)
As far as I can tell, the code path that causes this is [here](https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/df8bd852775343524879ba9d4ac91b884ca72157/pipewire-jack/src/pipewire-jack.c#L1190). The comment above claims that the read() is blocking, but that does not seem to be the case (socket is probably actually in nonblocking mode?). Instead, when this works properly, it's the `pw_data_loop_wait` [here](https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/df8bd852775343524879ba9d4ac91b884ca72157/pipewire-jack/src/pipewire-jack.c#L1241) that ends up using epoll to wait for data, so the read() always returns data. The problem case seems to happen when `pw_data_loop_wait` gets a different event on another fd (different epoll data), but `cycle_wait` still goes ahead and calls `cycle_run` and the `read()` returns EAGAIN and that ends up trickling up as `jack_cycle_wait` returning 0, which means a 0-sample process cycle to the calling application.
I'm guessing `cycle_wait` should actually loop, calling `pw_data_loop_wait` again until `cycle_run` returns nonzero.
I can easily repro this on a debug Ardour build with assertions, by opening a new Ardour project, going to the mixer, and disconnecting one of the master outputs, though this may or may not have to do with other peculiarities of my setup.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1387[BT] PW doesn't seem to use LDAC, even though BT endpoint supports it2021-07-09T21:55:26Zpossessedbysatan[BT] PW doesn't seem to use LDAC, even though BT endpoint supports itBluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
Radio: Intel Wireless 8265 / 8275
BT Headset: SMSL SU-9 DAC (BT Mode). [Amazon product page](https://www.amazon.com/S-M-S-L-E...Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
Radio: Intel Wireless 8265 / 8275
BT Headset: SMSL SU-9 DAC (BT Mode). [Amazon product page](https://www.amazon.com/S-M-S-L-ES9038PRO-PCM768kHz-Bluetooth-Balanced/dp/B08K7HL8SG). **TL;DR: DAC with support of a myriad BT codecs, including aptX+HD, LDAC, AAC, SBC, etc.**
DE: KDE 5.22
Distro: Arch Linux
Bluez: 5.59-2
Kernel: 5.12.14
Pipewire:
```
pipewire 1:0.3.31-1
pipewire-media-session 1:0.3.31-1
pipewire-pulse 1:0.3.31-1
```
--------------
Description of Problem:
This very specific BT DAC recently had a firmware update, and now it doesn't seem to play along with Pipewire.
Pairing will succeed, but there seems to be something wrong when PW sends a BT command (namely _SetConfiguration_). This seems to prevent Pipewire from successfully creating a playback sink.
BT behavior somehow changed between firmware revisions:
Old firmware:
After pairing, PW sends BT command SetConfiguration such that both parties agree upon a BT codec (LDAC). Codec discovery is previously done using the _Discover_ command, which, to my best understanding, advertises supported codecs/roles. Since this DAC supports LDAC, it'll be used as first choice. Everything literally "just works".
New Firmware:
BT Packet exchange between my PC and DAC **seems** to be pretty much identical with both (DAC) firmware revisions, until PW sends SetConfiguration command: this time it'll default to SBC, even though LDAC seems to be "advertised" in the Discover response issued by the BT endpoint. The response to this command fails miserably, which has 2 possible causes:
- This DAC was poorly designed. However, Android's bluetooth stack seems to handle this properly (it can even cycle through all the supported codecs just fine).
Since SBC supports two sampling rates (48/44.1), I changed bluez5.default.rate accordingly - it didn't make any difference.
- There's something wrong in PW.
PW doesn't seem to retry to negotiate another supported BT codec such as LDAC/aptX/AAC after failure - it just seems to yeet itself for no apparent reason and thus will be unable to establish a BT sink to play audio. Probably PW doesn't have a robust BT fallback mechanism for BT codecs? It seems strange to me that it actually tried SBC instead of LDAC in the first place, as it did with the old firmware.
--------------
Final notes:
I am by no means a bluez expert/dev, and the packet captures for sure need a more thorough inspection.
How Reproducible:
100% given you have this DAC with the latest firmware revision.
Steps to Reproduce:
1. Pair to BT endpoint using any BT frontend. KDE's bt manager, bluetoothctl or blueman.
2. Connect to BT endpoint: it will fail.
Actual Results:
Failure when connecting to endpoint because of _SET_CONFIGURATION request rejected: Configuration not supported (41)_.
Expected Results:
Pipewire should use LDAC to connect to the BT endpoint. It should "just work" as it did with the old firmware revision.
I'll try to reproduce this issue on a live Fedora ISO. I am attaching BT packet captures, pw-media-session output as well as bluetoothd journal output.
--------------
Additional notes:
**bad-48**: New firmware, packet capture with bluez5.default.rate set to 48000 KHz.
**bad-441**: New firmware, packet capture with bluez5.default.rate set to 44100 KHz.
**good**: Old firmware.
[pwmediasession-good.log](/uploads/ff5c1861433c2ecd25707f7cea616235/pwmediasession-good.log)
[bad-48.pcapng](/uploads/a560f54218366072fac5b91323f3e262/bad-48.pcapng)
[bad441.pcapng](/uploads/9e07d26c37d1daa1b94e5fc65b831fc7/bad441.pcapng)
[bluetoothd-journal.log](/uploads/1aff78e27950fc37fa01168c3400502a/bluetoothd-journal.log)
[good.pcapng](/uploads/8a745092d5b142e9fe788c8924d8d0cb/good.pcapng)
[pw-dump.txt](/uploads/252b0f0599c784822d15e27c5a3ef36f/pw-dump.txt)
[pwmediasession-bad.log](/uploads/f324a51d1630f3aa0069ea4afd0ea80f/pwmediasession-bad.log)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1388pw-jack: jack_recompute_total_latencies() not implemented2021-07-08T10:27:39ZHector Martinpw-jack: jack_recompute_total_latencies() not implementedVersion: master (df8bd8527)
Description of Problem:
Missing latency computation support breaks Ardour's latency compensation whenever anything changes. Running a debug Ardour build with -DLatencyCompensation:
```
DEBUG::LatencyCompens...Version: master (df8bd8527)
Description of Problem:
Missing latency computation support breaks Ardour's latency compensation whenever anything changes. Running a debug Ardour build with -DLatencyCompensation:
```
DEBUG::LatencyCompensation: update_latency_compensation.
DEBUG::LatencyCompensation: update_route_latency: CAPTURE apply_to_delayline? no)
DEBUG::LatencyCompensation: update_route_latency: worst proc latency: 0 (changed? yes) recursions: 0
DEBUG::LatencyCompensation: update_latency_compensation: delegate to engine
[W][01334.551957][ pipewire-jack.c: 4725 jack_recompute_total_latencies()] jack-client 0x564f74c4e940: not implemented
DEBUG::LatencyCompensation: update_latency_compensation: complete
```
It should look more like this (note the engine latency callbacks):
```
DEBUG::LatencyCompensation: update_latency_compensation of whole graph.
DEBUG::LatencyCompensation: update_route_latency: CAPTURE apply_to_delayline? no)
DEBUG::LatencyCompensation: update_route_latency: worst proc latency: 0 (changed? no) recursions: 0
DEBUG::LatencyCompensation: update_latency_compensation: delegate to engine
DEBUG::LatencyCompensation: update_latency_compensation: complete
DEBUG::LatencyCompensation: Engine latency callback: CAPTURE (initial/deletion: 0 adding: 0 deletion: 0)
DEBUG::LatencyCompensation: Worst input latency: 768
DEBUG::LatencyCompensation: update_route_latency: CAPTURE apply_to_delayline? no)
DEBUG::LatencyCompensation: update_route_latency: worst proc latency: 0 (changed? no) recursions: 0
DEBUG::LatencyCompensation: Engine latency callback: DONE
DEBUG::LatencyCompensation: Engine latency callback: PLAYBACK (initial/deletion: 0 adding: 0 deletion: 0)
DEBUG::LatencyCompensation: Worst output latency: 256
DEBUG::LatencyCompensation: update_route_latency: PLAYBACK apply_to_delayline? yes)
DEBUG::LatencyCompensation: update_route_latency: worst proc latency: 0 (changed? no) recursions: 0
DEBUG::LatencyCompensation: Engine latency callback: DONE
```
To reproduce, create a new Ardour project, and add a latent plug-in (e.g. a limiter or compressor with lookahead) to the master bus. The latency display at the top does not change. Saving and reloading Ardour updates it, but then you're stuck again. Clicking "Disable PDC" does not toggle the latency.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1389Ardour or PW messes up sampling rate when set via PIPEWIRE_LATENCY2022-04-27T10:12:45ZNils TonnättArdour or PW messes up sampling rate when set via PIPEWIRE_LATENCYWhen I start a 44.1 kHz Session in Ardour with PIPEWIRE_LATENCY=512/44100 Ardour complains that JACK is running with a sampling rate of 48000. When I open the session nonetheless, the playback is too fast/high.
Ardour 6.8
pipewire
Compi...When I start a 44.1 kHz Session in Ardour with PIPEWIRE_LATENCY=512/44100 Ardour complains that JACK is running with a sampling rate of 48000. When I open the session nonetheless, the playback is too fast/high.
Ardour 6.8
pipewire
Compiled with libpipewire 0.3.31
Linked with libpipewire 0.3.31https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1390Sound settings don't show A2DP and the channel is mono only.2021-09-26T14:43:40ZSteve GremorySound settings don't show A2DP and the channel is mono only.Description of Problem:
Whenever i connect my bluetooth headset, it just sounds like it's in call mode and has mono audio only, i don't have options to change the BT Config to A2DP either so that's very weird.
How Reproducible:
Connect ...Description of Problem:
Whenever i connect my bluetooth headset, it just sounds like it's in call mode and has mono audio only, i don't have options to change the BT Config to A2DP either so that's very weird.
How Reproducible:
Connect a WH-CH710N headset via bluetooth to a device running pipewire 0.3.31 on Fedora 34 with kernel version 5.12.13-300.fc34.x86_64
Steps to Reproduce:
1. Connect bluetooth.
2. Listen to audio.
Actual Results:
Horrible sound quality
Expected Results:
amazing sound quality?
Additional Info Eg. Additional Kernel Patches, `pw-dump -N > file` (As Attachment Please):
Please tell me what logs I have to attach for i have no clue. Sorry.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1391Pulseaudio Sink event subscription called when Source state changes2022-05-20T15:52:41ZErik ReiderPulseaudio Sink event subscription called when Source state changes# Version, Distribution, Desktop Environment:
- Manjaro unstable repos
- pipewire-git: 0.3.31.2.g5497d2d90-1
- pipewire-jack: 1:0.3.30-2
- pipewire-media-session-git: 0.3.31.2.g5497d2d90-1
- pipewire-pulse-git: 0.3.31.2.g5497d2d90-1
- sw...# Version, Distribution, Desktop Environment:
- Manjaro unstable repos
- pipewire-git: 0.3.31.2.g5497d2d90-1
- pipewire-jack: 1:0.3.30-2
- pipewire-media-session-git: 0.3.31.2.g5497d2d90-1
- pipewire-pulse-git: 0.3.31.2.g5497d2d90-1
- sway-git: r6718.5cdce42d-1
# Description of Problem:
When monitoring "PA_SUBSCRIPTION_MASK_SINK", the event callback gets fired when playing or resuming audio. The callback should only be called when the Sink state changes if I've understood correctly and not when the Source state changes.
# Steps to Reproduce:
1. Run the simple python script listed below with the pip package [pulsectl](https://pypi.org/project/pulsectl/) installed
``` python
from pulsectl import Pulse
type = "sink"
pulseInfo = Pulse(type)
with Pulse(type) as pulse:
def print_events(ev=None):
print(ev)
pulse.event_mask_set(type)
pulse.event_callback_set(print_events)
pulse.event_listen()
```
# Actual Results:
Callback called when both Sink and Source state changes
# Expected Results:
The callback should only be called when the Sink state changes
# Additional Info:
[file](/uploads/bfe5b209fb32ed0f9372f1cb66ab8c52/file)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1392Idea: virtual devices for "canned" patch settings2022-04-14T14:03:22ZStuart LonglandIdea: virtual devices for "canned" patch settingsHi all,
Firstly, great work on `pipewire`. I've been a user of JACK for its audio graph capability but lamented its disabilities where multiple audio devices were concerned. Today I took the plunge and installed `pipewire-0.3.30` (Gen...Hi all,
Firstly, great work on `pipewire`. I've been a user of JACK for its audio graph capability but lamented its disabilities where multiple audio devices were concerned. Today I took the plunge and installed `pipewire-0.3.30` (Gentoo package), and aside from a few minor hiccups, it's working well. Not sure if there's a mailing list somewhere, I don't do IRC much these days.
One problem I've noticed is that on my system, it gets confused as to what default audio device to use. I have 3 audio devices: the on-board audio device on my laptop, a USB wireless headset, and a USB ADC/DAC.
I primarily use the USB ADC/DAC (Behringer UCA-202) for hi-fi listening, but it also has line-level RCA inputs that I sometimes plug a record player (or specifically, its pre-amp) into for digitisation of records. The on-board sound card of the laptop is mostly unused, but I'd be fine with it being used for things like Slack/Zoom/Twinkle indicating an incoming call. At the moment, it seems to prefer the USB headset, which is fine for VoIP calls, and may be fine for private hi-fi listening, but not ideal for ring-tones.
That is a problem though, how does `pipewire` know the nature of the audio stream being received? At least from the perspective of a generic ALSA-style client, it can't. It just knows there's an audio stream and nothing more, it "guesses" which audio device it should connect it to. For what it's worth, JACK and PulseAudio have the same problem, so it's not unique to `pipewire`, but I suspect `pipewire` is in a better position to solve the issue.
One possible thought was maybe that `pipewire` could expose "virtual" input/output devices that the user could define, that describe a policy for what audio device(s) should be default. So in my situation above, I might define some virtual devices:
* `ring` might use a broadcast-style policy, where it just looks for all audio devices not currently muted and connects to all of them; thus you can hear if someone's calling you even if you've taken your headset off and stepped away from the computer, because the ring tone is playing through the laptop speakers too.
* `hifi` might look for my USB ADC/DAC, then my USB audio headset, finally on-board sound card, in that order.
* `private` might look for the USB audio headset, fall back to the on-board sound card
* `analogue` might look for the USB ADC/DAC for the purpose of providing a stereo audio input channel for things like Audacity.
Thus, there'd be two types of policy that defines the virtual device: "broadcast" policies that might look for audio devices that match given patterns, and "priority" policies that try to choose one device given a preference order. At most, I might have to define a few instances of the `pipewire-alsa` plug-in in my `.asoundrc`, but then at least if an ALSA application connects to one, it'll "default" to a patch set-up that suits the intent for the stream.
I haven't given much thought as to how this might be configured, but just thought I'd at least start the discussion. :-)
Regards,
Stuart Longlandhttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1393Pulseaudio tunneling + zeroconf publishing causing very garbled audio with so...2021-07-07T02:15:12ZAndre TomtPulseaudio tunneling + zeroconf publishing causing very garbled audio with some outputsIf you are filing this issue with a regular release please try master as it might already be fixed.
Well its pretty close ;)
#### Version, Distribution, Desktop Environment:
Version 0.3.31 + the timerfd fixes from master, running on b...If you are filing this issue with a regular release please try master as it might already be fixed.
Well its pretty close ;)
#### Version, Distribution, Desktop Environment:
Version 0.3.31 + the timerfd fixes from master, running on buildroot-git on a Raspberry Pi 4B.
No desktop environment. Used by pulseadio (14.2) clients over the network.
The buildroot is fully systemd, systemd-udev, systemd-logind and dbus enabled.
#### Description of Problem:
When using a HiFiBerry Digi+ SPDIF output hat on the Raspberry Pi and pulseaudio tunneling over the network with zeroconf publishing, audio comes out all garbled like the audio level is set way too high. Other outputs on the same Raspberry Pi works fine (usb-audio outputs).
The output works fine if used locally, say from mpg123 either via pipewire-pulse or directly to the device using direct alsa output. It only goes haywire with tunneling.
Looking at the zeroconf announcements, this output is advertised with a sample format of s24-32le while the working ones use s32le.
Setting up the tunnel manually using pactl on the client setting the format to s32le, instead of using zeroconf fixes the audio garbling.
So this seems to be a sample format mismatch of some kind. Should the sample format of the device be used on pulse tunnels?
This might also be a problem for other S24_LE devices but I have none others to test.
#### How Reproducible:
Always
#### Steps to Reproduce:
1. Server (RPI): Enable network access in pipewire-pulse.conf
2. Server (RPI): pactl load-module module-zeroconf-publish port=4713
3. Client: Enable zeroconf discovery on a pulseaudio client
4. Client: Select RPI digi+ output on client
5. Client: Play some audio
Beware that out of the box pipewire on buildroot is a bit outdated and not really set up for audio or even user sessions. If someone needs to repro its probably easier to just use some other distro.
#### Actual Results:
Even the calmest music sounds like something Aphex Twin could have released.
#### Expected Results:
Good sounding audio.
#### Additional Info Eg. `pw-dump -N > file` (As Attachment Please):
```
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: sndrpihifiberry [snd_rpi_hifiberry_digi], device 0: HifiBerry Digi HiFi wm8804-spdif-0 [HifiBerry Digi HiFi wm8804-spdif-0]
Subdevices: 0/1
Subdevice #0: subdevice #0
```
[pw-dump.txt.gz](/uploads/9d9eb42c395d74c272d403fe9e6ea2c7/pw-dump.txt.gz)![garbled](/uploads/37dbd3ecc9a3ae832018c5bfd054bd0d/garbled.ogg)