pipewire issueshttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues2024-02-07T18:19:43Zhttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3820RAOP discovery and connection finicky (with IKEA/Sonos Symfonisk)2024-02-07T18:19:43ZGert-devRAOP discovery and connection finicky (with IKEA/Sonos Symfonisk)<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`): 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`)...<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`): 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Arch Linux
- Desktop Environment: GNOME 45
- Kernel version (`uname -r`): 6.7.1
## Description of Problem:
On an enterprise Wi-Fi network with several (10 to 20) AirPlay devices, whenever I load the RAOP module, both discovery and connection to an IKEA/Sonos Symfonisk speaker over AirPlay is rather finicky in that it requires unloading and reloading the RAOP module several times before playback properly starts. Also, several devices sometimes don't end up showing up as sink because their discovery somehow times out one time and doesn't another.
## How Reproducible:
Every time I load the RAOP module.
### Steps to Reproduce:
1. Load the RAOP module in a network with several AirPlay devices and an IKEA/Sonos Symfonisk.
2. Observe some of the devices not showing up as sinks.
3. Select the Symfonisk speaker as output in GNOME.
4. Play some audio. Most of the time, nothing will start playing.
5. Unload and reload the RAOP module a few times and repeat. Eventually playback will work.
### Actual Results:
Some speakers don't end up showing up. If they show up, they often don't play anything.
### Expected Results:
All speakers are always discovered and playback is reliable as in that it works from the first time ('actual' network issues aside).
# Additional Info (as attachments):
The Wi-Fi enterprise network is stable, i.e. there are no intermittent drops or any other problems that should be causing this behaviour. On the same network and with the same hardware, Windows with Spotify Connect can connect and play stably on the same devices.
It's worth noting that these _may_ be two separate problems. When the RAOP module is loaded, you see RAOP devices gradually popping up in the GNOME control center audio sink selection, and the logs start filling with these errors for the ones that don't:
```
Jan 26 09:23:40 Computer pipewire-pulse[1379]: mod.raop-discover: Resolving of 'BCD07442D45B@Some-Guys-Computer' failed: Timeout reached
```
Restarting the RAOP module ends up discovering these devices after all.
Once the devices are discovered, as mentioned selecting them often also requires unloading and reloading the module again (just switching back and forth between sinks doesn't help) to get them to actually play, but these problems don't seem to result in any PipeWire errors showing up in the system journal.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3819RAOP output stream cuts for around a second every so often2024-02-07T18:15:43ZGert-devRAOP output stream cuts for around a second every so often<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`): 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`)...<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`): 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Arch Linux
- Desktop Environment: GNOME 45
- Kernel version (`uname -r`): 6.7.1
## Description of Problem:
Since a few versions RAOP with an IKEA/Sonos Symfonisk speaker has been working reasonably. When I get it to work and play back music for several minutes or hours, after random intervals (usually it's a matter of minutes, not seconds), the audio cuts out for around a second or so, and then continues without issue. Not a big deal, just mildly annoying.
I've tried experimenting with different buffer sizes for RAOP, from 50 to 2000, since it feels like a buffering issue somewhere, but it had no effect on the problem beyond the playback latency noticeably increasing (obviously).
## How Reproducible:
Every time if playback is over a couple of minutes.
### Steps to Reproduce:
1. Load the RAOP module.
2. Select an IKEA/Sonos Symfonisk device for playback.
3. Start playing back audio.
4. Leave the stream running for 10 to 15 minutes and hopefully the issue occurs in that time.
### Actual Results:
The audio cuts out for around a second or so and then resumes.
### Expected Results:
The audio should continue playing without drops.
# Additional Info (as attachments):
Streaming is happening over Wi-Fi both for the host and the Symfonisk speaker, however, I've observed no problems in my system logs with Wi-Fi or observe no other drops in the connection when this happens, and Windows users (using the same hardware) streaming to the same device using e.g. Spotify Connect or similar experience no such drops. I'm not entirely sure PipeWire's at fault, though, so I'm happy to try and sort through other things as well.
I don't have access to the device all the time, but do every so often - i.e. I'm prepared to test on them whenever I can.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3818[QUESTION] Add audio effects (with EasyEffects or JamesDSP) to Virtual Surro...2024-01-30T15:44:09ZDeewens[QUESTION] Add audio effects (with EasyEffects or JamesDSP) to Virtual Surround 7.1 filter-chain outputHello,
I am trying to switch to Linux from Windows, and one of the problem I am facing is to make my current headset (Logitech G PRO X) works like on Windows with the Logitech G Hub software (which means, having the possibility to add a...Hello,
I am trying to switch to Linux from Windows, and one of the problem I am facing is to make my current headset (Logitech G PRO X) works like on Windows with the Logitech G Hub software (which means, having the possibility to add audio processing effects as well as 7.1 virtual surround).
I have successfully been able to use the filter-chain config file described in the wiki: https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/master/src/daemon/filter-chain/sink-virtual-surround-7.1-hesuvi.conf
I added a `node.target` in the `playback.props` parts of the file, to target my headset.
Now, the thing is, I would like to add audio effects on top of the virtual surround, and this is where things get REALLY complicated. Especially because I'm kind of new to Linux, and also audio in general.
EasyEffects creates a virtual sink, and so, every output stream (eg. a video game) is first re-routed to EasyEffects sink, then output back to my headset. Now, EasyEffects ONLY support stereo. So, I must first go through the surround filter chain, which is then being downmixed to a 2 channel output, so that I connect this output to easyeffects, which then output to my headphone. I was able to do that, by doing complicated and annoying configuration with pavucontrol and easyeffects.
It looks like this:
![image](/uploads/7008fa53fad31f9e1a00ce66122197e0/image.png)
For this to work, I need to:
1. Set virtual surround sink in my system audio device
![image](/uploads/99040e03510acb7fd3cf060d55be2ce9/image.png)
2. In EasyEffects, exclude all output stream but the effect_output.virtual-surround-7.1 one
![image](/uploads/e4699c8ed39fb0871123390059365d44/image.png)
3. In EasyEffects, set the default output manually to be my headset (otherwise, output will be the filter-chain)
![image](/uploads/d18b3160f1ac26e345e3d46a2e1789d2/image.png)
4. I also need, in Pavucontrol to set my output stream (Firefox or games) to output in the filter-chain, because sometimes it does not switch because I probably switched it to something other than default
And, if I want to go back to normal stereo output, then I have to reset everything back to default, which means, again, let EasyEffects process all output stream, ... It is just really annoying.
So, I was trying to find a way to do that automatically. And unfortunately, there is no easy answer or magic button with Linux or Pipewire to do that. I tried to understand Wireplumber scripting, but I do not understand what I am supposed to do, and the doc does not help, neither internet, as there is almost nothing. Examples does not help that much either.
I just want to automate the process below:
```
1. When Surround profile filter-chain is selected:
- all apps output to filter-chain by default
a. If EasyEffects is running
- filter-chain output to easyeffects_sink
- easyeffects output to headphone
b. If EasyEffects is not running
- filter-chain output to headphone
2. When Surround profile is not selected:
a. If EasyEffects is running
- all apps outputs to easyeffects_sink by default
- easyeffects output to headphones
b. If EasyEffects is not running
- all apps output to headphones directly
```
Here is the Wireplumber lua script that I started to write. I know there is another repo for Wireplumber, but this is not necessarily only related to Wireplumber so, ...
```lua
#!/usr/bin/wpexec
clients_om = ObjectManager {
Interest {
type = "node",
Constraint { "node.name", "matches", "*.virtual-surround-7.1-hesuvi"},
}
}
clients_om:connect("installed", function(user_data)
print("Event created")
end)
clients_om:connect("object-added", function (_, client)
print("Object Added!")
end)
clients_om:connect("objects-changed", function (client)
print("Objects Changed")
end)
clients_om:activate()
```
What do you think of my pseudocode algorithm? Would it be possible to do that with Pipewire? Is there a simpler solution? Or maybe someone can just help me through this process? It has been a week since I am trying to setup something, so I'm blocked right now. Do not hesitate to ask for more info or details on what I am trying to achieve.
My end goal would be to just have to select what I want (either Stereo and 7.1) in my DE Audio setting. And Easyeffects should be able to just adapt itself to it.
(And btw, sorry if this is not the right place to ask, but I alredy tried Pipewire Reddit, EasyEffects GitHub (the maintainer already helped me a lot), and also Pipewire IRC with no success.
Thanks a lot for reading and any future help :smiley: !https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3817spdif/passthrough stops working after refresh rate change2024-01-27T14:26:05ZAdolfo Rodriguesspdif/passthrough stops working after refresh rate change<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`): 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`)...<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`): 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Manjaro
- Desktop Environment: KDE
- Kernel version (`uname -r`): 6.6.13-1-MANJARO
## Description of Problem:
starting a video file with audio passthrough , mpv shows this error:
[ao] Failed to initialize audio driver 'pulse'
if I then systemctl --user restart pipewire and retry the video audio plays fine. I then change hdmi refresh rate and video fails again having to restart pipewire service.
## How Reproducible:
100%
### Steps to Reproduce:
1. mpv -ao=pulse -audio-spdif=dts-hd,truehd,ac3,dts,eac3 video_test_file_with_Atmos.mkv -> [ao] Failed to initialize audio driver 'pulse'
2. systemctl --user restart pipewire
3. video play fine.
4. change display refresh rate
5. mpv -ao=pulse -audio-spdif=dts-hd,truehd,ac3,dts,eac3 video_test_file_with_Atmos.mkv -> [ao] Failed to initialize audio driver 'pulse'
### Actual Results:
### Expected Results:
# Additional Info (as attachments):
![image](/uploads/dde463a411a802674dbcf6dbe07fb4af/image.png)
NVIDIA Driver 550.40.07, just in case it's needed video test file -> https://www.demolandia.net/downloads.html?id=47981918
- `pw-dump > pw-dump.log`: [pw-dump.log](/uploads/ac3b2321ce6dec2b93593c39582db092/pw-dump.log)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3816LC3: Bluetooth disconnects when trying to play audio, with Mediatek adapter2024-02-04T21:18:33ZSuhridSLC3: Bluetooth disconnects when trying to play audio, with Mediatek adapter<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
<!-- If you can, test also with Pulseaudio and list `pulseaudio --version`. -->
- PipeWire version (1.1.0 [a59a5512027c31442c9...<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
<!-- If you can, test also with Pulseaudio and list `pulseaudio --version`. -->
- PipeWire version (1.1.0 [a59a5512027c31442c9b128e45bfac267258cbd5]):
- Wireplumber version (0.4.81 [95ae88d3e7565fae590fcc9eb2e0878868fb4e86]):
- Distribution and distribution version (Rity Demo Layer 23.1-release (kirkstone)):
- Desktop Environment:
- Kernel version (5.15.42-mtk+modified):
- BlueZ version (bluetoothctl: 5.72):
- `lsusb`:
```
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 13d3:3564 IMC Networks Wireless_Device
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 002: ID 0451:8025 Texas Instruments, Inc.
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 0451:8027 Texas Instruments, Inc.
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
```
- Bluetooth devices:
```
Device DC:69:E2:4C:5D:BC Galaxy Buds2 Pro
```
## Description of Problem:
1) Unable to play audio when le audio is enabled.
2) Unable to modify node settings using wpctl set-volume for example when using le mode.
2) Earbuds disconnect when trying to play audio.
## System Information:
The Bluetooth stack has been backported from kernel 6.1 and commit 2394186a2cefb9a45a029281a55749804dd8c556 has been cherry-picked.
## How Reproducible:
Always
### Steps to Reproduce:
1. Restart wireplumber as root:
```
root@genio-700-evk:~# systemctl stop --user wireplumber
root@genio-700-evk:~# wireplumber&
[1] 1141
root@genio-700-evk:~# E 23:01:51.594738 default ../git/spa/plugins/bluez5/upower.c:54:upower_get_percentage_properties_reply: Failed to get percentage from UPower: org.freedesktop.DBus.Error.NameHasNoOwner
W 23:01:51.617050 spa.bluez5 ../git/spa/plugins/bluez5/bluez5-dbus.c:5135:switch_backend: ofono running, but not configured as HFP/HSP backend: it may interfere with HFP/HSP functionality.
E 23:01:51.617949 spa.bluez5.native ../git/spa/plugins/bluez5/backend-native.c:1907:sco_listen: listen(): Address already in use
W 23:01:51.619578 spa.bluez5 ../git/spa/plugins/bluez5/bluez5-dbus.c:5135:switch_backend: ofono running, but not configured as HFP/HSP backend: it may interfere with HFP/HSP functionality.
E 23:01:51.639101 spa.bluez5.native ../git/spa/plugins/bluez5/backend-native.c:2472:register_profile_reply: RegisterProfile() failed: org.bluez.Error.NotPermitted
E 23:01:51.674179 spa.bluez5 ../git/spa/plugins/bluez5/bluez5-dbus.c:4923:bluez_register_application_a2dp_reply: RegisterApplication() failed: org.bluez.Error.Failed
W 23:01:51.674220 spa.bluez5 ../git/spa/plugins/bluez5/bluez5-dbus.c:4672:adapter_register_endpoints_legacy: Using legacy bluez5 API for A2DP - only SBC will be supported. Please upgrade bluez5.
E 23:01:51.709488 spa.bluez5 ../git/spa/plugins/bluez5/bluez5-dbus.c:4575:bluez_register_endpoint_legacy_reply: RegisterEndpoint() failed: org.bluez.Error.InvalidArguments
E 23:01:51.709816 spa.bluez5 ../git/spa/plugins/bluez5/bluez5-dbus.c:4575:bluez_register_endpoint_legacy_reply: RegisterEndpoint() failed: org.bluez.Error.InvalidArguments
[0:14:02.371862463] [1141] WARN IPAManager ipa_manager.cpp:154 No IPA found in '/usr/lib/libcamera'
[0:14:02.371930770] [1141] INFO Camera camera_manager.cpp:284 libcamera v0.2.0+dirty (2024-01-25T19:23:19+00:00)
```
2. Set up Le audio + LC3 support:
In /etc/bluetooth/main.conf, set `ControllerMode = le`, `Experimental=true`, `KernelExperimental=true`
3. Confirm LE audio is supported:
```
root@genio-700-evk:~# btmgmt info
Index list with 1 item
hci0: Primary controller
addr E8:FB:1C:BD:31:D2 version 11 manufacturer 70 class 0x001f00
supported settings: powered connectable fast-connectable discoverable bondable link-security ssp br/edr le advertising secure-conn debug-keys privacy configuration static-addr phy-configuration wide-band-speech cis-central cis-peripheral
current settings: powered le secure-conn cis-central cis-peripheral
name genio-700-evk
short name
hci0: Configuration options
supported options: public-address
missing options:
```
```
root@genio-700-evk:~# bluetoothctl show
Controller E8:FB:1C:BD:31:D2 (public)
Manufacturer: 0x0046 (70)
Version: 0x0b (11)
Name: genio-700-evk
Alias: genio-700-evk
Class: 0x00001f00 (7936)
Powered: yes
PowerState: on
Discoverable: no
DiscoverableTimeout: 0x000000b4 (180)
Pairable: no
UUID: Published Audio Capabil.. (00001850-0000-1000-8000-00805f9b34fb)
UUID: Audio Stream Control (0000184e-0000-1000-8000-00805f9b34fb)
UUID: Broadcast Audio Scan (0000184f-0000-1000-8000-00805f9b34fb)
UUID: Generic Access Profile (00001800-0000-1000-8000-00805f9b34fb)
UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
UUID: Volume Control (00001844-0000-1000-8000-00805f9b34fb)
UUID: Audio Input Control (00001843-0000-1000-8000-00805f9b34fb)
UUID: Microphone Control (0000184d-0000-1000-8000-00805f9b34fb)
UUID: Volume Offset Control (00001845-0000-1000-8000-00805f9b34fb)
UUID: Device Information (0000180a-0000-1000-8000-00805f9b34fb)
UUID: Vendor specific (03b80e5a-ede8-4b33-a751-6ce34ec4c700)
Modalias: usb:v1D6Bp0246d0548
Discovering: no
Roles: central
Roles: peripheral
Roles: central-peripheral
ExperimentalFeatures: BlueZ Experimental Simu.. (671b10b5-42c0-4696-9227-eb28d1b049d6)
ExperimentalFeatures: BlueZ Experimental LL p.. (15c0a148-c273-11ea-b3de-0242ac130004)
ExperimentalFeatures: BlueZ Experimental ISO... (6fbaf188-05e0-496a-9885-d6ddfdb4e03e)
Advertising Features:
ActiveInstances: 0x00 (0)
SupportedInstances: 0x14 (20)
SupportedIncludes: tx-power
SupportedIncludes: appearance
SupportedIncludes: local-name
SupportedSecondaryChannels: 1M
SupportedSecondaryChannels: 2M
SupportedSecondaryChannels: Coded
SupportedCapabilities.MinTxPower: 0xfffffff2 (-14)
SupportedCapabilities.MaxTxPower: 0x000d (13)
SupportedCapabilities.MaxAdvLen: 0x1f (31)
SupportedCapabilities.MaxScnRspLen: 0x1f (31)
SupportedFeatures: CanSetTxPower
SupportedFeatures: HardwareOffload
Advertisement Monitor Features:
SupportedMonitorTypes: or_patterns
```
4. Connect to earbuds:
```
root@genio-700-evk:~# bluetoothctl
hci0 new_settings: powered bondable le secure-conn cis-central cis-peripheral
Agent registered
[CHG] Controller E8:FB:1C:BD:31:D2 Pairable: yes
AdvertisementMonitor path registered
[bluetooth]# power on
Changing power on succeeded
[bluetooth]# pair DC:69:E2:4C:5D:BC
Attempting to pair with DC:69:E2:4C:5D:BC
hci0 DC:69:E2:4C:5D:BC type LE Public connected eir_len 0
[CHG] Device DC:69:E2:4C:5D:BC Connected: yes
[CHG] Device DC:69:E2:4C:5D:BC Bonded: yes
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 00001800-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 00001801-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 0000180a-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 0000180f-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 00001844-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 00001846-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 0000184d-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 0000184e-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 0000184f-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 00001850-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 00001853-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 00001855-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 00002b51-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: 00008fe1-0000-1000-8000-00805f9b34fb
[CHG] Device DC:69:E2:4C:5D:BC UUIDs: a7a473e9-19c6-491b-aea6-7ea92b8f043a
[CHG] Device DC:69:E2:4C:5D:BC ServicesResolved: yes
[CHG] Device DC:69:E2:4C:5D:BC Paired: yes
[NEW] Primary Service (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service000c
00001801-0000-1000-8000-00805f9b34fb
Generic Attribute Profile
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service000c/char000d
00002a05-0000-1000-8000-00805f9b34fb
Service Changed
[NEW] Descriptor (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service000c/char000d/desc000f
00002902-0000-1000-8000-00805f9b34fb
Client Characteristic Configuration
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service000c/char0010
00002b29-0000-1000-8000-00805f9b34fb
Client Supported Features
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service000c/char0012
00002b2a-0000-1000-8000-00805f9b34fb
Database Hash
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service000c/char0014
00002b3a-0000-1000-8000-00805f9b34fb
Server Supported Features
[NEW] Primary Service (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0016
0000180a-0000-1000-8000-00805f9b34fb
Device Information
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0016/char0017
00002a29-0000-1000-8000-00805f9b34fb
Manufacturer Name String
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0016/char0019
00002a24-0000-1000-8000-00805f9b34fb
Model Number String
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0016/char001b
00002a25-0000-1000-8000-00805f9b34fb
Serial Number String
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0016/char001d
00002a27-0000-1000-8000-00805f9b34fb
Hardware Revision String
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0016/char001f
00002a26-0000-1000-8000-00805f9b34fb
Firmware Revision String
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0016/char0021
00002a28-0000-1000-8000-00805f9b34fb
Software Revision String
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0016/char0023
00002a23-0000-1000-8000-00805f9b34fb
System ID
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0016/char0025
00002a2a-0000-1000-8000-00805f9b34fb
IEEE 11073-20601 Regulatory Cert. Data List
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0016/char0027
00002a50-0000-1000-8000-00805f9b34fb
PnP ID
[NEW] Primary Service (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0029
0000180f-0000-1000-8000-00805f9b34fb
Battery Service
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0029/char002a
00002a19-0000-1000-8000-00805f9b34fb
Battery Level
[NEW] Descriptor (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0029/char002a/desc002c
00002902-0000-1000-8000-00805f9b34fb
Client Characteristic Configuration
[NEW] Descriptor (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0029/char002a/desc002d
00002904-0000-1000-8000-00805f9b34fb
Characteristic Format
[NEW] Primary Service (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service002e
0000180f-0000-1000-8000-00805f9b34fb
Battery Service
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service002e/char002f
00002a19-0000-1000-8000-00805f9b34fb
Battery Level
[NEW] Descriptor (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service002e/char002f/desc0031
00002902-0000-1000-8000-00805f9b34fb
Client Characteristic Configuration
[NEW] Descriptor (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service002e/char002f/desc0032
00002904-0000-1000-8000-00805f9b34fb
Characteristic Format
[NEW] Primary Service (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0033
a7a473e9-19c6-491b-aea6-7ea92b8f043a
Vendor specific
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0033/char0034
a7a48322-19c6-491b-aea6-7ea92b8f043a
Vendor specific
[NEW] Descriptor (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0033/char0034/desc0036
00002902-0000-1000-8000-00805f9b34fb
Client Characteristic Configuration
[NEW] Descriptor (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0033/char0034/desc0037
00002901-0000-1000-8000-00805f9b34fb
Characteristic User Description
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0033/char0038
a7a48311-19c6-491b-aea6-7ea92b8f043a
Vendor specific
[NEW] Descriptor (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0033/char0038/desc003a
00002901-0000-1000-8000-00805f9b34fb
Characteristic User Description
[NEW] Primary Service (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service007a
00001855-0000-1000-8000-00805f9b34fb
Telephony and Media Audio
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service007a/char007b
00002b51-0000-1000-8000-00805f9b34fb
Telephony and Media Audio Profile Role
[NEW] Primary Service (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service007d
00008fe1-0000-1000-8000-00805f9b34fb
Unknown
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service007d/char007e
00008fca-0000-1000-8000-00805f9b34fb
Unknown
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service007d/char0080
00008fcb-0000-1000-8000-00805f9b34fb
Unknown
[NEW] Descriptor (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service007d/char0080/desc0082
00002902-0000-1000-8000-00805f9b34fb
Client Characteristic Configuration
[NEW] Characteristic (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service007d/char0083
00008fcc-0000-1000-8000-00805f9b34fb
Unknown
[NEW] Primary Service (Handle 0x0000)
/org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/service0085
00001853-0000-1000-8000-00805f9b34fb
Common Audio
Pairing successful#
[CHG] Device DC:69:E2:4C:5D:BC Modalias: bluetooth:v0075pA013d0100
[NEW] Endpoint /org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/pac_source0
[NEW] Endpoint /org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/pac_sink0
[NEW] Transport /org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/pac_source0/fd0
[NEW] Transport /org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/pac_sink0/fd1
[CHG] Transport /org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/pac_source0/fd0 Links: /org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/pac_sink0/fd1
[CHG] Transport /org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/pac_sink0/fd1 Links: /org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/pac_source0/fd0
[Galaxy Buds2 Pro]# trust DC:69:E2:4C:5D:BC
[CHG] Device DC:69:E2:4C:5D:BC Trusted: yes
Changing DC:69:E2:4C:5D:BC trust succeeded
[Galaxy Buds2 Pro]# connect DC:69:E2:4C:5D:BC
Attempting to connect to DC:69:E2:4C:5D:BC
Connection successful
```
5. Confirm earbuds is connected and supports LE audio:
```
root@genio-700-evk:~# bluetoothctl info
Device DC:69:E2:4C:5D:BC (public)
Name: Galaxy Buds2 Pro
Alias: Galaxy Buds2 Pro
Appearance: 0x0941 (2369)
Paired: yes
Bonded: yes
Trusted: no
Blocked: no
Connected: yes
LegacyPairing: no
UUID: Generic Access Profile (00001800-0000-1000-8000-00805f9b34fb)
UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
UUID: Device Information (0000180a-0000-1000-8000-00805f9b34fb)
UUID: Battery Service (0000180f-0000-1000-8000-00805f9b34fb)
UUID: Volume Control (00001844-0000-1000-8000-00805f9b34fb)
UUID: Coordinated Set Identif.. (00001846-0000-1000-8000-00805f9b34fb)
UUID: Microphone Control (0000184d-0000-1000-8000-00805f9b34fb)
UUID: Audio Stream Control (0000184e-0000-1000-8000-00805f9b34fb)
UUID: Broadcast Audio Scan (0000184f-0000-1000-8000-00805f9b34fb)
UUID: Published Audio Capabil.. (00001850-0000-1000-8000-00805f9b34fb)
UUID: Common Audio (00001853-0000-1000-8000-00805f9b34fb)
UUID: Telephony and Media Audio (00001855-0000-1000-8000-00805f9b34fb)
UUID: Telephony and Media Aud.. (00002b51-0000-1000-8000-00805f9b34fb)
UUID: Unknown (00008fe1-0000-1000-8000-00805f9b34fb)
UUID: Vendor specific (a7a473e9-19c6-491b-aea6-7ea92b8f043a)
Modalias: bluetooth:v0075pA013d0100
ServiceData.00002b51-0000-1000-8000-00805f9b34fb:
2a 00 *.
ServiceData.00001853-0000-1000-8000-00805f9b34fb:
00 .
ServiceData.0000184e-0000-1000-8000-00805f9b34fb:
00 6f 00 6b 00 00 .o.k..
ServiceData.a7a473e9-19c6-491b-aea6-7ea92b8f043a:
01 48 bc 5d 08 .H.].
AdvertisingFlags:
19 .
AdvertisingData.Key: 0x2e (46)
AdvertisingData.Value:
a5 2f 56 3b 0e 4c ./V;.L
Battery Percentage: 0x64 (100)
```
```
root@genio-700-evk:~# cat /var/log/syslog | grep BAP
Jan 26 23:16:21 genio-700-evk bluetoothd[363]: ../bluez-5.72/profiles/audio/media.c:proxy_added_cb() Proxy added: /MediaEndpointLE/BAPSink/lc3, iface: org.bluez.MediaEndpoint1
Jan 26 23:16:21 genio-700-evk bluetoothd[363]: ../bluez-5.72/profiles/audio/media.c:endpoint_init_pac() PAC :1.27:/MediaEndpointLE/BAPSink/lc3 registered
Jan 26 23:16:21 genio-700-evk bluetoothd[363]: Endpoint registered: sender=:1.27 path=/MediaEndpointLE/BAPSink/lc3
Jan 26 23:16:21 genio-700-evk bluetoothd[363]: ../bluez-5.72/profiles/audio/media.c:proxy_added_cb() Proxy added: /MediaEndpointLE/BAPSource/lc3, iface: org.bluez.MediaEndpoint1
Jan 26 23:16:21 genio-700-evk bluetoothd[363]: ../bluez-5.72/profiles/audio/media.c:endpoint_init_pac() PAC :1.27:/MediaEndpointLE/BAPSource/lc3 registered
Jan 26 23:16:21 genio-700-evk bluetoothd[363]: Endpoint registered: sender=:1.27 path=/MediaEndpointLE/BAPSource/lc3
Jan 26 23:17:09 genio-700-evk bluetoothd[363]: ../bluez-5.72/profiles/audio/media.c:media_endpoint_async_call() Calling SelectProperties: name = :1.27 path = /MediaEndpointLE/BAPSink/lc3
Jan 26 23:17:09 genio-700-evk bluetoothd[363]: ../bluez-5.72/profiles/audio/media.c:media_endpoint_async_call() Calling SelectProperties: name = :1.27 path = /MediaEndpointLE/BAPSource/lc3
Jan 26 23:17:09 genio-700-evk bluetoothd[363]: ../bluez-5.72/profiles/audio/media.c:media_endpoint_async_call() Calling SetConfiguration: name = :1.27 path = /MediaEndpointLE/BAPSink/lc3
Jan 26 23:17:09 genio-700-evk bluetoothd[363]: ../bluez-5.72/profiles/audio/media.c:media_endpoint_async_call() Calling SetConfiguration: name = :1.27 path = /MediaEndpointLE/BAPSource/lc3
```
6. Confirm pipewire supports lc3:
```
root@genio-700-evk:~# find / -name *"lc3.so"
/usr/lib/spa-0.2/bluez5/libspa-codec-bluez5-lc3.so
```
7. Wireplumber status:
```
root@genio-700-evk:~# wpctl status
PipeWire 'pipewire-0' [1.1.0, pipewire@genio-700-evk, cookie:1956338278]
└─ Clients:
30. WirePlumber [1.1.0, root@genio-700-evk, pid:1066]
36. WirePlumber [export] [1.1.0, root@genio-700-evk, pid:1066]
42. wpctl [1.1.0, root@genio-700-evk, pid:1459]
Audio
├─ Devices:
│ 37. Built-in Audio [alsa]
│ 48. Galaxy Buds2 Pro [bluez5]
│
├─ Sinks:
│ * 46. Galaxy Buds2 Pro [vol: 1.00]
│ 53. Built-in Audio Stereo [vol: 0.40]
│
├─ Sources:
│ * 47. Galaxy Buds2 Pro [vol: 1.00]
│
└─ Streams:
Video
├─ Devices:
│ 54. MediaTek MDP3 [v4l2]
│ 55. platform:mt8188 [v4l2]
│ 56. platform:mt8188 [v4l2]
│ 57. mtk-jpeg-enc [v4l2]
│ 58. mtk-jpeg-dec [v4l2]
│
├─ Sinks:
│
├─ Sources:
│
└─ Streams:
Settings
└─ Default Configured Node Names:
```
```
root@genio-700-evk:~# wpctl inspect 46
id 46, type PipeWire:Interface:Node
api.bluez5.address = "DC:69:E2:4C:5D:BC"
api.bluez5.codec = "lc3"
api.bluez5.profile = "bap-sink"
api.bluez5.transport = ""
audio.adapt.follower = ""
bluez5.loopback = "false"
card.profile.device = "1"
* client.id = "36"
clock.quantum-limit = "8192"
device.api = "bluez5"
* device.id = "48"
device.routes = "1"
* factory.id = "11"
factory.mode = "merge"
factory.name = "api.bluez5.media.sink"
library.name = "audioconvert/libspa-audioconvert"
* media.class = "Audio/Sink"
media.name = "Galaxy Buds2 Pro"
node.autoconnect = "true"
* node.description = "Galaxy Buds2 Pro"
node.driver = "true"
node.group = "bluez-iso-E8:FB:1C:BD:31:D2-cig-0"
* node.name = "bluez_output.DC_69_E2_4C_5D_BC.1"
node.pause-on-idle = "false"
* object.serial = "71"
* priority.driver = "1010"
* priority.session = "1010"
```
8. Modify volume:
```
root@genio-700-evk:~# wpctl set-volume 46 0.6
root@genio-700-evk:~# wpctl status
PipeWire 'pipewire-0' [1.1.0, pipewire@genio-700-evk, cookie:1956338278]
└─ Clients:
30. WirePlumber [1.1.0, root@genio-700-evk, pid:1066]
36. WirePlumber [export] [1.1.0, root@genio-700-evk, pid:1066]
42. wpctl [1.1.0, root@genio-700-evk, pid:1475]
Audio
├─ Devices:
│ 37. Built-in Audio [alsa]
│ 48. Galaxy Buds2 Pro [bluez5]
│
├─ Sinks:
│ * 46. Galaxy Buds2 Pro [vol: 1.00]
│ 53. Built-in Audio Stereo [vol: 0.40]
│
├─ Sources:
│ * 47. Galaxy Buds2 Pro [vol: 1.00]
│
└─ Streams:
Video
├─ Devices:
│ 54. MediaTek MDP3 [v4l2]
│ 55. platform:mt8188 [v4l2]
│ 56. platform:mt8188 [v4l2]
│ 57. mtk-jpeg-enc [v4l2]
│ 58. mtk-jpeg-dec [v4l2]
│
├─ Sinks:
│
├─ Sources:
│
└─ Streams:
Settings
└─ Default Configured Node Names:
```
9. Try to play audio:
```
root@genio-700-evk:~# pw-play /usr/share/sounds/alsa/Front_Right.wav
E 23:32:08.501066 spa.bluez5 ../git/spa/plugins/bluez5/bluez5-dbus.c:3557:transport_acquire_reply: Acquire /org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/pac_source0/fd0 returned error: org.freedesktop.DBus.Error.NoReply
E 23:32:08.501580 pw.node ../git/src/pipewire/impl-node.c:409:node_update_state: (bluez_input.DC_69_E2_4C_5D_BC.0-47) suspended -> error (Received error event)
E 23:32:08.501707 spa.bluez5 ../git/spa/plugins/bluez5/bluez5-dbus.c:2826:spa_bt_transport_set_state: Failure in Bluetooth audio transport /org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/pac_source0/fd0
E 23:32:08.502102 pw.node ../git/src/pipewire/impl-node.c:409:node_update_state: (bluez_output.DC_69_E2_4C_5D_BC.1-46) suspended -> error (Received error event)
E 23:32:08.502174 spa.bluez5 ../git/spa/plugins/bluez5/bluez5-dbus.c:2826:spa_bt_transport_set_state: Failure in Bluetooth audio transport /org/bluez/hci0/dev_DC_69_E2_4C_5D_BC/pac_sink0/fd1
```
### Actual Results:
Apart from the above logs, I also see the following logs from kernel dmesg when I try to play audio:
```
[ 161.167394] hci0 chan 00000000fc8bdab0 flags 0x0000
[ 161.168050] hci0 nonfrag skb 00000000dc8b7cf5 len 25
[ 161.168830] hci0 acl 6 sco 8 le 32 iso 24
[ 161.169357] hci0
[ 161.169596] hci0
[ 161.169836] hci0
[ 161.170077] conn 0000000000000000 quote 0
[ 161.170668] hci0
[ 161.170910] hci0
[ 161.171150] hci0
[ 161.171391] chan 00000000fc8bdab0 quote 32
[ 161.171917] chan 00000000fc8bdab0 skb 00000000dc8b7cf5 len 25 priority 0
[ 161.172770] hci0 type 2 len 25
[ 161.173200] hci0
[ 161.173441] hci0
[ 161.173679] hci0
[ 161.173919] hci0
[ 161.201522] hci0
[ 161.201782] hci0 Event packet
[ 161.202193] hci0 acl 6 sco 8 le 32 iso 24
[ 161.202738] hci0
[ 161.202974] hci0
[ 161.203210] hci0
[ 161.203447] conn 0000000000000000 quote 0
[ 161.203955] hci0
[ 161.204190] hci0
[ 161.204426] hci0
[ 161.261187] hci0
[ 161.261503] hci0 ACL data packet
[ 161.261927] hci0 len 15 handle 0x0200 flags 0x0002
[ 161.262729] hci0 ACL data packet
[ 161.263156] hci0 len 16 handle 0x0200 flags 0x0002
[ 161.263816] hci0 ACL data packet
[ 161.264239] hci0 len 16 handle 0x0200 flags 0x0002
[ 161.264882] hci0 opcode 0x2064 plen 5
[ 161.265459] hci0
[ 161.265714] hci0 cmd_cnt 1 cmd queued 1
[ 161.266224] hci0 type 1 len 8
[ 161.267065] hci0
[ 161.267336] hci0 Event packet
[ 161.267747] opcode 0x2064 status 0x00
[ 161.268229] hci0 opcode 0x2064
[ 161.502447] hci0
[ 161.502723] hci0 Event packet
[ 161.503230] hci0 opcode 0x206e plen 13
[ 161.503723] hci0 opcode 0x206e plen 13
[ 161.504205] hci0 cmd_cnt 1 cmd queued 2
[ 161.504694] hci0 type 1 len 16
[ 161.505338] hci0
[ 161.505587] hci0 Event packet
[ 161.505975] hci0 opcode 0x206e
[ 161.506367] opcode 0x206e status 0x00
[ 161.506893] hci0 opcode 0x206e
[ 161.507313] hci0 cmd_cnt 1 cmd queued 1
[ 161.507807] hci0 type 1 len 16
[ 161.509235] hci0
[ 161.509487] hci0 Event packet
[ 161.509875] hci0 opcode 0x206e
[ 161.510301] opcode 0x206e status 0x00
[ 161.510790] hci0 opcode 0x206e
[ 161.521241] hci0 chan 00000000fc8bdab0 flags 0x0000
[ 161.521889] hci0 nonfrag skb 00000000489711c6 len 15
[ 161.522660] hci0 acl 6 sco 8 le 32 iso 24
[ 161.523180] hci0
[ 161.523417] hci0
[ 161.523653] hci0
[ 161.523891] conn 0000000000000000 quote 0
[ 161.524401] hci0
[ 161.524636] hci0
[ 161.524873] hci0
[ 161.525109] chan 00000000fc8bdab0 quote 32
[ 161.525630] chan 00000000fc8bdab0 skb 00000000489711c6 len 15 priority 0
[ 161.526477] hci0 type 2 len 15
[ 161.526911] hci0
[ 161.527149] hci0
[ 161.527385] hci0
[ 161.527622] hci0
[ 161.577701] hci0
[ 161.577983] hci0 ACL data packet
[ 161.578403] hci0 len 129 handle 0x0c6f flags 0x000f
[ 161.579138] Bluetooth: hci0: ACL packet for unknown connection handle 3183
[ 161.636659] hci0
[ 161.636917] hci0 ACL data packet
[ 161.637326] hci0 len 39 handle 0x0c6f flags 0x000f
[ 161.637938] Bluetooth: hci0: ACL packet for unknown connection handle 3183
[ 161.638931] hci0 ACL data packet
```
### Expected Results:
Expect the audio to play correctly.
### Additional logs:
1. [pw-dump.log](/uploads/7b2d0a1160a3dc8b063b6aafe844fd33/pw-dump.log)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3815Pipewire hard crashes when switching to filter-chain source using LV2 plugin2024-01-31T14:01:09ZRobotRossPipewire hard crashes when switching to filter-chain source using LV2 plugin<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`): 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`)...<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`): 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Fedora Workstation 39
- Desktop Environment: GNOME
- Kernel version (`uname -r`): 6.6.13-200.fc39.x86_64
## Description of Problem:
Pipewire crashes when switching to virtual source provided by filter-chain
```
Jan 26 21:45:14 fedora audit[10534]: ANOM_ABEND auid=1000 uid=1000 gid=1000 ses=3 subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 pid=10534 comm="pw-data-loop" exe="/usr/bin/pipewire" sig=11 res=1
Jan 26 21:45:15 fedora systemd-coredump[10773]: Process 10534 (pipewire) of user 1000 dumped core.
Module libspa-audiomixer.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libspa-alsa.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libspa-audioconvert.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-filter-chain-lv2.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-filter-chain.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-session-manager.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-link-factory.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-adapter.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-access.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-portal.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-client-device.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-client-node.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-spa-node-factory.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-spa-device-factory.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-metadata.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-profiler.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-protocol-native.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-module-rt.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libspa-dbus.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libspa-journal.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libspa-support.so from rpm pipewire-1.0.1-1.fc39.x86_64
Module libpipewire-0.3.so.0 from rpm pipewire-1.0.1-1.fc39.x86_64
Module pipewire from rpm pipewire-1.0.1-1.fc39.x86_64
░░ Subject: Process 10534 (pipewire) dumped core
░░ Process 10534 (pipewire) crashed and dumped core.
Jan 26 21:45:15 fedora systemd[2856]: pipewire.service: Main process exited, code=dumped, status=11/SEGV
Jan 26 21:45:15 fedora systemd[2856]: pipewire.service: Failed with result 'core-dump'.
Jan 26 21:45:15 fedora wireplumber[10535]: disconnected from pipewire
Jan 26 21:45:15 fedora systemd[2856]: pipewire.service: Scheduled restart job, restart counter is at 2.
Jan 26 21:45:15 fedora systemd[2856]: Started pipewire.service - PipeWire Multimedia Service.
Jan 26 21:45:15 fedora pipewire[10786]: lilv_world_add_plugin(): warning: Duplicate plugin <https://github.com/werman/noise-suppression-for-voice>
Jan 26 21:45:15 fedora pipewire[10786]: lilv_world_add_plugin(): warning: ... found in file:///home/crystalyne/.lv2/rnnoise_mono.lv2/
Jan 26 21:45:15 fedora pipewire[10786]: lilv_world_add_plugin(): warning: ... and file:///home/crystalyne/.lv2/rnnoise_stereo.lv2/ (ignored)
Jan 26 21:45:15 fedora pipewire[10786]: mod.filter-chain: control 'VAD Threshold (%)' can not be set: No such file or directory
Jan 26 21:45:15 fedora rtkit-daemon[1525]: Successfully made thread 10786 of process 10786 (/usr/bin/pipewire) owned by '1000' high priority at nice level -11.
Jan 26 21:45:15 fedora rtkit-daemon[1525]: Successfully made thread 10792 of process 10786 (/usr/bin/pipewire) owned by '1000' RT at priority 20.
Jan 26 21:45:15 fedora abrt-notification[10863]: Process 11454 (pipewire) crashed in juce::lv2_client::LV2PluginInstance::run(unsigned int)()
░░ Subject: ABRT has detected unexpected termination: pipewire
░░ pipewire killed by SIGSEGV
░░ #2 [libpipewire-module-filter-chain-lv2.so] lv2_run
░░ #3 [libpipewire-module-filter-chain.so] playback_process.lto_priv.0
░░ #4 [libpipewire-0.3.so.0] impl_node_process_output
```
## How Reproducible:
Use attached config with lv2 plugin from https://github.com/werman/noise-suppression-for-voice
### Steps to Reproduce:
1. install lv2 version of https://github.com/werman/noise-suppression-for-voice
2. install attached pipewire config
3. switch to "Noise Cancelling source"
### Actual Results:
Pipewire hard crashes.
### Expected Results:
Pipewire should not crash, and LV2 should work.
# Additional Info (as attachments):
- `pw-dump > pw-dump.log`:[pw-dump.log](/uploads/3cffe39d1d913246e41fd5cd9f9b57f2/pw-dump.log)
- config :[input-denoise.conf](/uploads/74e365aadfddf3c75b42d6190ffe3f75/input-denoise.conf)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3814Pipewire refuses to load any LV2 plugins.2024-01-26T20:09:13ZRobotRossPipewire refuses to load any LV2 plugins.<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version pipewire
Compiled with libpipewire 1.0.1
Linked with libpipewire 1.0.1
- Distribution and distribution versi...<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version pipewire
Compiled with libpipewire 1.0.1
Linked with libpipewire 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Fedora Workstation 39
- Desktop Environment: GNOME
- Kernel version (`uname -r`): 6.6.13-200.fc39.x86_64
## Description of Problem:
Trying to get pipewire to load an LV2 for use in filter-chain using the following config:
```
context.modules = [
{ name = libpipewire-module-filter-chain
flags = [ nofail ]
args = {
"node.description" : "Noise Cancelling source",
"media.name" : "Noise Cancelling source",
"filter.graph" : {
"nodes" : [
{
"type" : "lv2",
"name" : "rnnoise",
"plugin" : "https://github.com/werman/noise-suppression-for-voice",
"label" : "noise_suppressor",
"control" : {
"VAD Threshold (%)": 50.0,
}
}
],
},
audio.position = [ FL FR ],
capture.props = {
node.name = "effect_input.rnnoise"
node.passive = true
},
playback.props = {
node.name = "effect_output.rnnoise"
media.class = Audio/Source
},
}
}
]
# config for package "ladspa-noise-suppression-for-voice"
# https://github.com/werman/noise-suppression-for-voice
# file:///home/crystalyne/Downloads/linux-rnnoise/rnnoise_stereo.lv2/librnnoise_stereo.so
# file:///home/crystalyne/Downloads/linux-rnnoise/rnnoise_stereo.lv2/
# file:///home/crystalyne/Downloads/linux-rnnoise/
```
The URIs at the bottom are all the ones I have tried, all fail with the same error.
However, nothing works, the following error is always spat out:
```
Jan 26 19:03:13 fedora pipewire[10817]: default: can't load plugin https://github.com/werman/noise-suppression-for-voice
Jan 26 19:03:13 fedora pipewire[10817]: mod.filter-chain: can't load graph: Invalid argument'
```
## How Reproducible:
100%.
### Steps to Reproduce:
1. Use the above config in pipewire config directory.
2. Look in journalctl log
### Actual Results:
Plugin is not loaded.
### Expected Results:
Plugin should load and create a source called "Noise Cancelling source".
# Additional Info (as attachments):
- `pw-dump > pw-dump.log[pw-dump.log](/uploads/a71700b26e79de90d5949d5eafec9436/pw-dump.log)`
- [input-denoise.conf](/uploads/b97425edb8c7a0f4936d47934c7ac61f/input-denoise.conf)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3813no more sound after upgrading pipewire to 1.0.12024-01-29T08:37:03ZIhar Hancharenkano more sound after upgrading pipewire to 1.0.1<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`):
1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`...<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`):
1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`):
PRETTY_NAME="Rhino Linux 2023.4 (mainline)"
- Desktop Environment:
xmonad
- Kernel version (`uname -r`):
6.5.5-060505-generic
## Description of Problem:
After upgrading pipewire from 0.3 to 1.0.1, there is no more sound while playing youtube (or other streaming service) at web browsers (firefox, chrome).
Is it possible to fix this in some way or further diagnose ???
Is it possible to roll back pipewire back to 0.3 in the meantime??? Could you provide roll-back instructions ???
### Actual Results:
Silence while firefox and chrome play sounds at youtube and other streaming portals
### Expected Results:
firefox and chrome play sounds at youtube and other streaming portalshttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3812Surround configurations not detected on SMSL PO100 PRO2024-01-30T15:47:07ZThomas WeißschuhSurround configurations not detected on SMSL PO100 PRO- PipeWire version (`pipewire --version`): 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Arch Linux
- Desktop Environment: sway
- Kernel version (`uname -r`): 6.7.1-arch1-1
## Description of Probl...- PipeWire version (`pipewire --version`): 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Arch Linux
- Desktop Environment: sway
- Kernel version (`uname -r`): 6.7.1-arch1-1
## Description of Problem:
I have a [SMSL PO100 PRO](https://www.smsl-audio.com/portal/product/detail/id/808.html) digital-to-digital converter to convert from USB to SPDIF.
In pavucontrol only the configurations "Analog Stereo Output", "Digital Stereo (IEC958) Output" and "Pro Audio" are usable.
All of these configurations only provide two output channels, which do work.
However I would like to use this device for 5.1 sound.
In `aplay -L` more configurations are listed:
```
usbstream:CARD=Generic_1
HD-Audio Generic
USB Stream Output
sysdefault:CARD=AUDIO
SMSL USB AUDIO, USB Audio
Default Audio Device
front:CARD=AUDIO,DEV=0
SMSL USB AUDIO, USB Audio
Front output / input
surround21:CARD=AUDIO,DEV=0
SMSL USB AUDIO, USB Audio
2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=AUDIO,DEV=0
SMSL USB AUDIO, USB Audio
4.0 Surround output to Front and Rear speakers
surround41:CARD=AUDIO,DEV=0
SMSL USB AUDIO, USB Audio
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=AUDIO,DEV=0
SMSL USB AUDIO, USB Audio
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=AUDIO,DEV=0
SMSL USB AUDIO, USB Audio
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=AUDIO,DEV=0
SMSL USB AUDIO, USB Audio
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=AUDIO,DEV=0
SMSL USB AUDIO, USB Audio
IEC958 (S/PDIF) Digital Audio Output
usbstream:CARD=AUDIO
SMSL USB AUDIO
USB Stream Output
```
Note: The device can do UAC1 and UAC2, I am using UAC2 mode here, but for UAC1 the effects are the same.
The device uses a "XMOS 3rd generation USB solution XU316"
## How Reproducible:
Always
# Additional Info (as attachments):
- `pw-dump > pw-dump.log`: [pw-dump.log](/uploads/a097951bf0c6a2bd3c53b773331ee93c/pw-dump.log)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3811pipewire doesn't build without udev and needs patching to do so2024-02-06T10:51:23Zstefan11111pipewire doesn't build without udev and needs patching to do soI wrote a few patches to get it to build, but there may be a better way to fix this issue.
```
--- a/src/modules/meson.build 2024-01-19 15:15:37.891619318 +0200
+++ b/src/modules/meson.build 2024-01-19 15:16:09.954484423 +0200
@@ -122,7...I wrote a few patches to get it to build, but there may be a better way to fix this issue.
```
--- a/src/modules/meson.build 2024-01-19 15:15:37.891619318 +0200
+++ b/src/modules/meson.build 2024-01-19 15:16:09.954484423 +0200
@@ -122,7 +122,7 @@
'module-filter-chain/convolver.c'
]
filter_chain_dependencies = [
- mathlib, dl_lib, pipewire_dep, sndfile_dep, audioconvert_dep
+ mathlib, dl_lib, pipewire_dep, sndfile_dep
]
pipewire_module_filter_chain = shared_library('pipewire-module-filter-chain',
@@ -175,7 +175,7 @@
install : true,
install_dir : modules_install_dir,
install_rpath: modules_install_dir,
- dependencies : [mathlib, dl_lib, pipewire_dep, audioconvert_dep],
+ dependencies : [mathlib, dl_lib, pipewire_dep],
)
build_module_jack_tunnel = jack_dep.found()
--- a/src/modules/meson.build 2024-01-19 15:17:44.459770986 +0200
+++ b/src/modules/meson.build 2024-01-19 15:18:22.565881171 +0200
@@ -178,7 +178,7 @@
dependencies : [mathlib, dl_lib, pipewire_dep],
)
-build_module_jack_tunnel = jack_dep.found()
+build_module_jack_tunnel = false
if build_module_jack_tunnel
pipewire_module_jack_tunnel = shared_library('pipewire-module-jack-tunnel',
[ 'module-jack-tunnel.c' ],
--- a/spa/examples/meson.build 2024-01-19 15:22:19.342423412 +0200
+++ b/spa/examples/meson.build 2024-01-19 15:22:27.952297679 +0200
@@ -12,7 +12,7 @@
spa_examples_extra_deps = {
'local-v4l2': [sdl_dep],
- 'local-libcamera': [sdl_dep, libcamera_dep],
+ 'local-libcamera': [sdl_dep],
}
foreach c : spa_examples
--- a/src/modules/module-echo-cancel.c 2024-01-19 17:41:01.734220997 +0200
+++ b/src/modules/module-echo-cancel.c 2024-01-19 17:41:40.756984463 +0200
@@ -261,8 +261,7 @@
info.info.info.raw.channels = impl->play_info.channels +
impl->rec_info.channels + impl->out_info.channels;
- impl->wav_file = wav_file_open(impl->wav_path,
- "w", &info);
+ impl->wav_file = NULL;
if (impl->wav_file == NULL)
pw_log_warn("can't open wav path '%s': %m",
impl->wav_path);
@@ -279,7 +278,6 @@
for (i = 0; i < impl->out_info.channels; i++)
data[n++] = out[i];
- wav_file_write(impl->wav_file, (void*)data, n_samples);
} else {
spa_zero(impl->wav_path);
}
--- a/src/modules/module-echo-cancel.c 2024-01-19 17:43:39.391918649 +0200
+++ b/src/modules/module-echo-cancel.c 2024-01-19 17:43:51.055081660 +0200
@@ -282,7 +282,6 @@
spa_zero(impl->wav_path);
}
} else if (impl->wav_file != NULL) {
- wav_file_close(impl->wav_file);
impl->wav_file = NULL;
}
}
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3810Pipewire window capture freezes after switching to tablet mode.2024-01-26T08:44:20ZMarcin MielniczukPipewire window capture freezes after switching to tablet mode.I have issues with window capture when switching to the tablet mode of my 2-in-1 laptop.
To reproduce:
1. Open Google Meet
2. Share my window through the browser. The share works as expected.
3. Switch to tablet mode (i.e. use the 360 ...I have issues with window capture when switching to the tablet mode of my 2-in-1 laptop.
To reproduce:
1. Open Google Meet
2. Share my window through the browser. The share works as expected.
3. Switch to tablet mode (i.e. use the 360 hinge to convert the 2-in-1 laptop into tablet)
Then the shared window freezes and doesn't update. If I share the window after I've switched into the tablet mode or share the whole screen, not just a single window, then everything works correctly.
The same issue happens with any other browser or if I try to use the PipeWire Window Capture through OBS Studio. This suggests that this issue is related to pipewire and not webrtc/browser.
Journal says nothing, the only thing that happens when switching to tablet mode and back is:
```
Jan 24 17:43:28 cassandra kcminit[10683]: Initializing "/usr/lib/qt/plugins/plasma/kcms/systemsettings/kcm_fonts.so"
Jan 24 17:43:28 cassandra kcminit[10699]: Initializing "/usr/lib/qt/plugins/plasma/kcms/systemsettings/kcm_fonts.so"
Jan 24 17:43:28 cassandra kcminit[10684]: Initializing "/usr/lib/qt/plugins/plasma/kcms/systemsettings/kcm_fonts.so"
```
My setup:
- KDE Plasma + Wayland + wireplumber.
- Dell Latitude 7440 2-in-1https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3809Lua setting 'session.suspend-timeout-seconds' stopped working since 1.0.12024-01-24T14:10:40ZfulalasLua setting 'session.suspend-timeout-seconds' stopped working since 1.0.1Until 1.0.0 if I had `/etc/wireplumber/main.lua.d/50-alsa-config.lua` with the following my USB DAC wouldn't turn off when idle, but in 1.0.1 this doesn't seem to work anymore:
```
alsa_monitor.enabled = true
alsa_monitor.properties = ...Until 1.0.0 if I had `/etc/wireplumber/main.lua.d/50-alsa-config.lua` with the following my USB DAC wouldn't turn off when idle, but in 1.0.1 this doesn't seem to work anymore:
```
alsa_monitor.enabled = true
alsa_monitor.properties = {
-- Create a JACK device. This is not enabled by default because
-- it requires that the PipeWire JACK replacement libraries are
-- not used by the session manager, in order to be able to
-- connect to the real JACK server.
--["alsa.jack-device"] = false,
-- Reserve devices via org.freedesktop.ReserveDevice1 on D-Bus
-- Disable if you are running a system-wide instance, which
-- doesn't have access to the D-Bus user session
["alsa.reserve"] = true,
--["alsa.reserve.priority"] = -20,
--["alsa.reserve.application-name"] = "WirePlumber",
-- Enables MIDI functionality
["alsa.midi"] = false,
-- Enables monitoring of alsa MIDI devices
["alsa.midi.monitoring"] = false,
-- MIDI bridge node properties
["alsa.midi.node-properties"] = {
-- Name set for the node with ALSA MIDI ports
["node.name"] = "Midi-Bridge",
-- Removes longname/number from MIDI port names
--["api.alsa.disable-longname"] = true,
["priority.session"] = 100,
["priority.driver"] = 1,
},
-- These properties override node defaults when running in a virtual machine.
-- The rules below still override those.
["vm.node.defaults"] = {
["api.alsa.period-size"] = 1024,
["api.alsa.headroom"] = 8192,
},
}
alsa_monitor.rules = {
-- An array of matches/actions to evaluate.
--
-- If you want to disable some devices or nodes, you can apply properties per device as the following example.
-- The name can be found by running pw-cli ls Device, or pw-cli dump Device
--{
-- matches = {
-- {
-- { "device.name", "matches", "name_of_some_disabled_card" },
-- },
-- },
-- apply_properties = {
-- ["device.disabled"] = true,
-- },
--}
{
-- Rules for matching a device or node. It is an array of
-- properties that all need to match the regexp. If any of the
-- matches work, the actions are executed for the object.
matches = {
{
-- This matches all cards.
{ "device.name", "matches", "alsa_card.*" },
},
},
-- Apply properties on the matched object.
apply_properties = {
-- Use ALSA-Card-Profile devices. They use UCM or the profile
-- configuration to configure the device and mixer settings.
["api.alsa.use-acp"] = true,
-- Use UCM instead of profile when available. Can be
-- disabled to skip trying to use the UCM profile.
--["api.alsa.use-ucm"] = true,
-- Don't use the hardware mixer for volume control. It
-- will only use software volume. The mixer is still used
-- to mute unused paths based on the selected port.
--["api.alsa.soft-mixer"] = false,
-- Ignore decibel settings of the driver. Can be used to
-- work around buggy drivers that report wrong values.
--["api.alsa.ignore-dB"] = false,
-- The profile set to use for the device. Usually this is
-- "default.conf" but can be changed with a udev rule or here.
--["device.profile-set"] = "profileset-name",
-- The default active profile. Is by default set to "Off".
--["device.profile"] = "default profile name",
-- Automatically select the best profile. This is the
-- highest priority available profile. This is disabled
-- here and instead implemented in the session manager
-- where it can save and load previous preferences.
["api.acp.auto-profile"] = false,
-- Automatically switch to the highest priority available port.
-- This is disabled here and implemented in the session manager instead.
["api.acp.auto-port"] = false,
-- Other properties can be set here.
--["device.nick"] = "My Device",
},
},
{
matches = {
{
-- Matches all sources.
{ "node.name", "matches", "alsa_input.*" },
},
{
-- Matches all sinks.
{ "node.name", "matches", "alsa_output.*" },
},
},
apply_properties = {
["session.suspend-timeout-seconds"] = 0, -- 0 disables suspend
},
},
}
```
Slackware current x64https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3808on bluetooth, when chatting on discord, all audio output seems to sound like ...2024-01-23T22:49:19ZJayon bluetooth, when chatting on discord, all audio output seems to sound like it's coming through discord<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
<!-- If you can, test also with Pulseaudio and list `pulseaudio --version`. -->
- PipeWire version (`pipewire --version`):
pi...<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
<!-- If you can, test also with Pulseaudio and list `pulseaudio --version`. -->
- PipeWire version (`pipewire --version`):
pipewire
Compiled with libpipewire 1.0.0
Linked with libpipewire 1.0.0
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`):
NixOS 24.05
- Desktop Environment:
Hyprland
- Kernel version (`uname -r`):
6.7.0-zen3
- BlueZ version (`bluetoothctl --version`):
Version 5.70
- `lsusb`:
```
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 5986:9102 Bison Electronics Inc. BisonCam,NB Pro
Bus 001 Device 003: ID 8087:0033 Intel Corp. AX211 Bluetooth
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
```
- Bluetooth devices:
```
Device E8:EE:CC:2E:42:A9 Soundcore Space Q45
Device D3:4A:63:07:96:4D MX Master 3S
```
## Description of Problem:
When on a voice call, audio on my computer seems to merge outputs. It sounds like all of the audio on my computer, from firefox, steam, discord, it all sounds like it's being played through a zoom call. This is normal coming from discord, but not coming from anywhere else.
## How Reproducible:
I tried this back when I was still using Arch last month and using multiple headsets, and had the same problem.
### Steps to Reproduce:
1. Connect a bluetooth
2. Connect to a discord call on desktop
3. Play a youtube video
### Actual Results:
All audio sounds low bitrate and fuzzy
### Expected Results:
Only discord sounds low bitrate and fuzzy
# Additional Info (as attachments):
- `pw-dump > pw-dump.log`[pw-dump.log](/uploads/ecbebcdc4e4ad7f48371db93b8075153/pw-dump.log)
- Bluetooth debug log, see [here](https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Troubleshooting#bluetooth):
- Helvum when I'm not on a discord call vs when I am. The input seems to change from having a left and right to just being mono:![2024-01-23-153127_hyprshot](/uploads/d18cda2ae90a0709c53c97fceed2827c/2024-01-23-153127_hyprshot.png)![2024-01-23-153227_hyprshot](/uploads/3ae8a220a34bd69504c40a4ef3439f43/2024-01-23-153227_hyprshot.png)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3807Autogain artifacts2024-01-24T13:49:50ZJohl BrownAutogain artifactsThank you very much for this incredible tool! I can't believe how easy it is compared to Equalizer APO on Windows. If I may suggest a feature (that I may eventually be able to contribute to if nobody else does, but I'm not in a great spo...Thank you very much for this incredible tool! I can't believe how easy it is compared to Equalizer APO on Windows. If I may suggest a feature (that I may eventually be able to contribute to if nobody else does, but I'm not in a great spot at the moment). That would be that some smoothing be applied to the final output gain from the AutoGain plugin. I have noticed at times, some artefacts that seem to be caused by the gain being adjusted at effectively a frequency that ends up coming through in the audio. I love the graphs that show what it's thinking about but I would love some sort of damping knob. If this makes any sense... at the moment the gain graph moves like insects, when I would assume it would be best as lapping waves on a beach.
Thanks again for this amazing tool!https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3806Setting icon of Jabra Headset only works for mic2024-01-23T06:32:06ZThorsten HirschSetting icon of Jabra Headset only works for mic![image](/uploads/b29b854f6ac813db9ceb4d41dc8e8470/image.png)
Here's my lua script to change the icon:
```
local rule = {
matches = {
{
{ "device.nick", "equals", "Jabra Engage 75" },
},
},
apply_properties = {
["device.icon...![image](/uploads/b29b854f6ac813db9ceb4d41dc8e8470/image.png)
Here's my lua script to change the icon:
```
local rule = {
matches = {
{
{ "device.nick", "equals", "Jabra Engage 75" },
},
},
apply_properties = {
["device.icon-name"] = "audio-headset",
},
}
table.insert(alsa_monitor.rules, rule)
```
Unfortunately it works for the input/microphone only, but not for the output/speakers of the headset.
I've attached the output of pwdump. Anything else you need?
[pw-dump.txt](/uploads/1ea63c3426c63a44e4d7a0e01a7dfa1a/pw-dump.txt)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3805pulse-server: stream-restore subscribe not yet supported2024-01-29T17:31:24ZYifan Zhupulse-server: stream-restore subscribe not yet supported<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`): 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`)...<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`): 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Arch Linux
- Desktop Environment: KDE Plasma 6
- Kernel version (`uname -r`): 6.7.0-arch3-1
## Description of Problem:
In pipewire-pulse, stream-restore subscribe is not yet supported (see https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/master/src/modules/module-protocol-pulse/extensions/ext-stream-restore.c#L277)
## How Reproducible:
Always
### Steps to Reproduce:
1. Register a callback using `pa_ext_stream_restore_set_subscribe_cb` and `pa_ext_stream_restore_subscribe`
2. Make changes to the underlying stream restore
### Actual Results:
The registered callback is not called
### Expected Results:
The registered callback is called
# Additional Info (as attachments):
Downstream KDE MR that mentions this issue: https://invent.kde.org/plasma/plasma-pa/-/merge_requests/231https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3804no sound when using airplay 2 via raop-discover with KEF LS60 wireless speakers2024-02-15T23:39:44ZNick Blackdank@qemfd.netno sound when using airplay 2 via raop-discover with KEF LS60 wireless speakersI'll go ahead and try using master as recommended, but want to get this down for others seeing the same issue.
## Description of Problem:
I have KEF LS60 wireless speakers. I can use pipewire together with bluetooth streaming to them ju...I'll go ahead and try using master as recommended, but want to get this down for others seeing the same issue.
## Description of Problem:
I have KEF LS60 wireless speakers. I can use pipewire together with bluetooth streaming to them just fine. I can use pulseaudio and pulseaudio-dlna to play via DLNA, though with terrific latency. I'd like to use Airplay 2 and pipewire. The raop-discover module appears to find the speakers, and a sink is created, but I get no sound when I play to it. pavucontrol shows expected volumes generated for the device.
This is Debian Unstable's pipewire 1.0.1. I can see the device in `avahi-browse -a -t` as expected.
## How Reproducible:
Completely.
### Steps to Reproduce:
1. Verify the speakers are visible in avahi-browse.
2. Load raop-discover and verify that a device is created.
3. Play through the device.
### Actual Results:
All is silence.
### Expected Results:
mad phat beatshttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3803Device specific equalizer configs2024-01-23T16:02:54ZAlexander KoskovichDevice specific equalizer configsIs there a way we can have device specific equalizer configs in the Pipewire repo like https://gist.github.com/DanShaders/c1e5c8d046fd9f8c193b6687a13ae7a3 ?
This tremendously improves sound quality on the XPS 15 9530 (2023), and preferab...Is there a way we can have device specific equalizer configs in the Pipewire repo like https://gist.github.com/DanShaders/c1e5c8d046fd9f8c193b6687a13ae7a3 ?
This tremendously improves sound quality on the XPS 15 9530 (2023), and preferably everything just works without the user needing to touch the terminal, so it would need to be upstream.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3802Crackling sound when using A2DP with aptX-LL2024-02-05T18:10:05ZZsolt DoncaCrackling sound when using A2DP with aptX-LL<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
<!-- If you can, test also with Pulseaudio and list `pulseaudio --version`. -->
- PipeWire version (`pipewire --version`): Com...<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
<!-- If you can, test also with Pulseaudio and list `pulseaudio --version`. -->
- PipeWire version (`pipewire --version`): Compiled with libpipewire 1.0.1, Linked with libpipewire 1.0.1
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Arch Linux
- Desktop Environment: KDE Plasma 5.27
- Kernel version (`uname -r`): 6.6.13-1-lts
- BlueZ version (`bluetoothctl --version`): bluetoothctl: 5.72
- `lsusb`:
```
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 0c45:6a15 Microdia Integrated_Webcam_HD
Bus 003 Device 003: ID 27c6:63ac Shenzhen Goodix Technology Co.,Ltd. Goodix USB2.0 MISC
Bus 003 Device 004: ID 8087:0033 Intel Corp. AX211 Bluetooth
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 002: ID 3297:1969 ZSA Technology Labs Moonlander Mark I
Bus 005 Device 003: ID 0bda:5487 Realtek Semiconductor Corp. Dell dock
Bus 005 Device 004: ID 0bda:5413 Realtek Semiconductor Corp. Dell dock
Bus 005 Device 005: ID 413c:b06e Dell Computer Corp. Dell dock
Bus 005 Device 006: ID 413c:b06f Dell Computer Corp. Dell dock
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 006 Device 002: ID 0bda:0487 Realtek Semiconductor Corp. Dell dock
Bus 006 Device 003: ID 0bda:0413 Realtek Semiconductor Corp. Dell dock
Bus 006 Device 004: ID 0bda:8153 Realtek Semiconductor Corp. RTL8153 Gigabit Ethernet Adapter
```
- Bluetooth devices:
```
# paste the output of "bluetoothctl devices" here
Device F4:B6:88:5B:61:B3 PLT Focus
Device F8:5C:7E:29:51:CD Zsolt's JBL Flip 6
Device E4:B1:5C:FA:3C:68 MX Vertical
Device C3:12:31:3D:65:0F MX Master
Device 28:11:A5:79:0F:CA Bose QC35 II
```
## Description of Problem:
Whenever I connect my PLT Focus headsets using the aptX-LL codec, the sound is full of "crackling", and literally unusable. Other codecs such as aptX, SBC, or SBC-XQ are fine. I would like to be able to use aptX-LL to benefit from the low latency in games.
## How Reproducible:
Just choose the aptX-LL codec, and play some music or play some games.
### Steps to Reproduce:
1. Connect the PLT Focus headset
2. Choose aptX-LL as the codec
3. Play music
### Actual Results:
Most of the time, the sound is almost completely crackling, the music is barely there. Sometimes there may be a second or two of (almost perfect) clarity, but it quickly fades away.
### Expected Results:
The sound should sound the same as with other codecs.
# Additional Info (as attachments):
Can provide additional info as requested.
EDIT: see my comments below.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3801ASUS RoG Strix Z790-F use-chmap not enabled by default2024-01-21T21:59:14ZBrettRylandASUS RoG Strix Z790-F use-chmap not enabled by default- PipeWire version (`pipewire --version`):
```
$ pipewire --version
pipewire
Compiled with libpipewire 0.3.79
Linked with libpipewire 0.3.79
```
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): PRETTY_NAME=...- PipeWire version (`pipewire --version`):
```
$ pipewire --version
pipewire
Compiled with libpipewire 0.3.79
Linked with libpipewire 0.3.79
```
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): PRETTY_NAME="Ubuntu 23.10"
- Desktop Environment: KDE (plasma-desktop: 4:5.27.8-0ubuntu1)
- Kernel version (`uname -r`): 6.5.5-060505-generic
## Description of Problem:
As a follow-on from this issue reported here (https://github.com/alsa-project/alsa-ucm-conf/issues/350#issuecomment-1900005481), I was asked to report this here as "UCM devices should have `use-chmap` flag enabled by default".
This is essentially the same issue as https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/2648 where the channel ordering is incorrect due to not using the channel mapping from ALSA UCM.
# Additional Info (as attachments):
- `pw-dump > pw-dump.log`: [pw-dump.log](/uploads/6a8ab9d66a804112eae847319d68613d/pw-dump.log)