Crackling sound and no sound at all in general when launching wine app
Bluetooth Radio, Bluetooth Headset, Desktop Environment, Distribution, Version (Bluez, Kernel, and PipeWire):
Bluetooth Radio: tested with two different radios, same result (main one is CSR 4.0, other is BU-BT40B)
Headset: Doesnt matter, Main is
T Monitor (Bluedio) and second is
Mi True Wireless EBs Basic 2. All tested with a2dp profile and SBC codec.
Kernel: Doesnt matter, tested
0.3.20 has this same issue
Wine: tested with multiple versions -
proton 5.21-GE-1, same issue for all of them
Description of Problem
Opening any wine game causes crackling sound (like, shutters on my
T-Monitors) and no sound at all on Mi True.
Media streams (like youtube) visually working fine (no stops or anything), but sound quality on T Monitor starts to get worse, until it reaches quality at level of HSF profile.
On Mi True it doesn't produce sound at all, and when exiting game it also has lower quality sound, but quickly returns to normal.
In status of pipewire service when this happens i can see multiple
Client is too slow for bluez device.
My thoughts about this is that somehow wine takes all available traffic from everything else and bluez/pipewire starts to lower overall bitrate.
Tried changing sample rate, period/buffer count, frames/periods - nothing helped
How Reproducible: Not sure, all of this started randomly after some time using pipewire, perhaps some cache buildup? maybe? i don't know for sure UPD: See in comments, it's easily reproducible
Steps to Reproduce:
- Launch any sound emitter (youtube, music player, etc)
- Launch any wine game/app with sound
Actual Results: Sound crackling and/or sound quality degradation on wine app start as well as no sound at all with some devices, until wine app is closed
Expected Results: No sound crackling or sound quality degradation on wine app start
Additional Info Eg. Additional Kernel Patches, pw-dump > file (As Attachment Please):
Mi True and launched game + some audio dump: pipewire_dump.log
T-Monitor and launched game + some audio dump: pipewire_dump_tmonitor.log
UPD: Setting quantums to at min 256 resolves issue, which means pipewire does not handle automatic quantum leveling properly.