pipewire issueshttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues2023-09-29T13:46:21Zhttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3528Regex with Combine Stream module not working in version 0.3.80 (possible regr...2023-09-29T13:46:21ZTarik GrabaRegex with Combine Stream module not working in version 0.3.80 (possible regression)I am using the backport version of pipewire on Debian stable (12/Bookworm) and the regex for combining sources using the Combine Stream Module do not work any more.
This configuration
```
context.modules = [
{ name = libpipewire-modu...I am using the backport version of pipewire on Debian stable (12/Bookworm) and the regex for combining sources using the Combine Stream Module do not work any more.
This configuration
```
context.modules = [
{ name = libpipewire-module-combine-stream
args = {
combine.mode = sink
node.name = "test_combine"
node.description = "Test Combine"
combine.latency-compensate = false
combine.props = {
audio.position = [ FL FR ]
}
stream.props = { }
stream.rules = [
{
matches = [
{
node.name = "~alsa_output.*"
media.class = "Audio/Sink"
}
]
actions = { create-stream = { } }
}
]
}
}
]
```
yields in a `test_combine` sink without any thing connected to it output (maybe I am not having the good vocabulary here).
While specifying the full node name, without using a regex still works.
For example:
```
context.modules = [
{ name = libpipewire-module-combine-stream
args = {
combine.mode = sink
node.name = "test_combine"
node.description = "Test Combine"
combine.latency-compensate = false
combine.props = {
audio.position = [ FL FR ]
}
stream.props = { }
stream.rules = [
{
matches = [
{
node.name = "alsa_output.usb-Microsoft_Microsoft_LifeChat_LX-6000-00.analog-stereo"
media.class = "Audio/Sink"
}
]
actions = { create-stream = { } }
}
]
}
}
]
```
This used to work with version 0.3.77 (I did not tested the versions in between).https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3526audio latency measurement question2023-09-25T17:10:59ZMike Bradyaudio latency measurement questionHow would you go about getting the instantaneous actual audio latency? In other words, how would you find out how long it would take for a new audio sample to arrive at the output DAC?
Apologies if it's an obvious question. If there was...How would you go about getting the instantaneous actual audio latency? In other words, how would you find out how long it would take for a new audio sample to arrive at the output DAC?
Apologies if it's an obvious question. If there was sample code or documentation to point to, that would be a big help, thanks.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3525Can context.exec be used to run a command on audio stream/source condition ch...2023-09-25T07:30:42ZChris BillheimerCan context.exec be used to run a command on audio stream/source condition change?Is there a condition that can be used to detect when an audio playback stream/source changes? My prospective use case involves using `pkill -SIGRTMIN+2 i3status-rs` to send a signal to i3status-rust to immediately update/refresh the samp...Is there a condition that can be used to detect when an audio playback stream/source changes? My prospective use case involves using `pkill -SIGRTMIN+2 i3status-rs` to send a signal to i3status-rust to immediately update/refresh the sample rate and bit depth information displayed in my custom i3status-rust block.
Can PipeWire's context.exec config handle this, or is this use case more suited to a session manager like pipewire-media-session and/or WirePlumber? I have not been able to find much info about context.exec beyond having it start session managers, and even then, systemd services are recommended to manage the session manager instead of using context.exec for that purpose.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3524Segfault in applications using libjack.so in client_node_transport() since 0....2023-09-24T16:46:36ZChristian LSegfault in applications using libjack.so in client_node_transport() since 0.3.77- PipeWire version (`pipewire --version`):
pipewire
Compiled with libpipewire 0.3.80
Linked with libpipewire 0.3.80
(same happens in 0.3.77, 0.3.78, 0.3.79)
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`...- PipeWire version (`pipewire --version`):
pipewire
Compiled with libpipewire 0.3.80
Linked with libpipewire 0.3.80
(same happens in 0.3.77, 0.3.78, 0.3.79)
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`):
Fedora Linux 38 (KDE Plasma)
- Desktop Environment:
KDE Plasma
- Kernel version (`uname -r`):
6.4.15-200.fc38.x86_64
## Description of Problem:
Applications linked with libjack.so segfault in client_node_transport(), reproducible with e.g. Mumble or Minecraft (Java)
Not using Jack, e.g.
.alsoftrc
[general]
drivers = pulse
for java resolves the issue, as does downgrading to pipewire 0.3.76 (even only downgrading the pipewire-jack-audio-connection-kit* packages is sufficient)
## How Reproducible:
100% on this machine, with a fresh config and a fresh user.
Not reproducible on a different machine, the difference is being the soundcards used; this box (where it is reproducible) has multiple, which might be part of the issue.
### Steps to Reproduce:
1. Upgrade to pipewire >= 0.3.77
2. Run either Mumble or Minecraft (Java)
### Actual Results:
Segfault
### Expected Results:
Application runs
# Additional Info (as attachments):
The downstream bug report including the full backtrace and system info can be found at https://bugzilla.redhat.com/show_bug.cgi?id=2239348
I'll attach the full backtrace to this bug report as well, if you need additional info, e.g. the soundcards and their config, do let me know, since the issue seems to not be reproducible on all my machines, but where it happens it is 100% reproducible.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3522Microphone indicator in Xfce4 is no longer visible for telegram-desktop since...2023-09-24T13:49:30ZBłażej SzczygiełMicrophone indicator in Xfce4 is no longer visible for telegram-desktop since 0.3.80Since 13caae49b5067f05d7b5cf8ddeb6d345db8cf557 the microphone indicator is no longer visible in xfce4-pulseaudio-plugin 0.4.7.
It is because of the filter for some other apps https://gitlab.xfce.org/panel-plugins/xfce4-pulseaudio-plugin...Since 13caae49b5067f05d7b5cf8ddeb6d345db8cf557 the microphone indicator is no longer visible in xfce4-pulseaudio-plugin 0.4.7.
It is because of the filter for some other apps https://gitlab.xfce.org/panel-plugins/xfce4-pulseaudio-plugin/-/commit/b42363fb8010a81b31399dbaa4d9d5fc2f14fb8f, but now it affects other apps which should display the microphone indicator.
When I add a `fprintf(stderr, "index: %d, name: %s, source index: %d\n", i->index, i->name, i->source);` into a xfce4-pulseaudio-plugin code, before the 13caae49b5067f05d7b5cf8ddeb6d345db8cf557 I can see for Telegram:
```
index: 87, name: Capture Stream, source index: -1
index: 87, name: Capture Stream, source index: -1
index: 87, name: Capture Stream, source index: -1
index: 87, name: Capture Stream, source index: -1
index: 87, name: Capture Stream, source index: 55
```
but after 13caae49b5067f05d7b5cf8ddeb6d345db8cf557 I can see for Telegram:
```
index: 77, name: Capture Stream, source index: -1
index: 77, name: Capture Stream, source index: -1
index: 77, name: Capture Stream, source index: -1
index: 77, name: Capture Stream, source index: -1
```
I don't get any event after source index appears for Telegram. Adding `SPA_PARAM_Latency` to switch triggers the it.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3521CPU spin in pipewire reading inotify fd -> EAGAIN2023-10-17T16:40:25ZAndrew BartlettCPU spin in pipewire reading inotify fd -> EAGAIN<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`): 0.3.79
- 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`): 0.3.79
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Fedora Linux 37 (Workstation Edition)
- Desktop Environment: Gnome
- Kernel version (`uname -r`): 6.4.15-100.fc37.x86_64
## Description of Problem:
After a system suspend (which may also involve USB device removal if I've switched my KVM, which switches a camera, to the other laptop), pipewire starts to use 100% CPU.
```
strace:
epoll_wait(4, [{events=EPOLLIN, data={u32=3335551552, u64=93964335086144}}, {events=EPOLLIN, data={u32=3335551632, u64=93964335086224}}], 32, 0) = 2
read(33, 0x7fffd0ce0750, 272) = -1 EAGAIN (Resource temporarily unavailable)
read(34, 0x7fffd0ce0750, 272) = -1 EAGAIN (Resource temporarily unavailable)
write(3, "\1\0\0\0\0\0\0\0", 8) = 8
poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=20, events=POLLIN}, {fd=24, events=POLLIN}], 4, 0) = 2 ([{fd=3, revents=POLLIN}, {fd=4, revents=POLLIN}])
read(3, "\2\0\0\0\0\0\0\0", 16) = 8
write(3, "\1\0\0\0\0\0\0\0", 8) = 8
epoll_wait(4, [{events=EPOLLIN, data={u32=3335551552, u64=93964335086144}}, {events=EPOLLIN, data={u32=3335551632, u64=93964335086224}}], 32, 0) = 2
read(33, 0x7fffd0ce0750, 272) = -1 EAGAIN (Resource temporarily unavailable)
read(34, 0x7fffd0ce0750, 272) = -1 EAGAIN (Resource temporarily unavailable)
FD 4 is the epoll FD:
[abartlet@jesse ~]$ cat /proc/139532/fdinfo/4
pos: 0
flags: 02000002
mnt_id: 15
ino: 2074
tfd: 33 events: 19 data: 5575c6d07a40 pos:0 ino:81a sdev:e
tfd: 30 events: 19 data: 5575c6cbbd88 pos:0 ino:25614e sdev:8
tfd: 28 events: 18 data: 5575c6d70790 pos:0 ino:25614b sdev:8
tfd: 29 events: 19 data: 5575c6d70830 pos:0 ino:25614b sdev:8
tfd: 26 events: 19 data: 5575c6d6e3b0 pos:0 ino:81a sdev:e
tfd: 32 events: 19 data: 5575c6cbbdb8 pos:0 ino:81a sdev:e
tfd: 19 events: 19 data: 5575c6bf01c0 pos:0 ino:25613a sdev:8
tfd: 10 events: 19 data: 5575c6b9ae10 pos:0 ino:81a sdev:e
tfd: 35 events: 19 data: 5575c6d07a40 pos:0 ino:81a sdev:e
tfd: 36 events: 19 data: 5575c6d07a90 pos:0 ino:81a sdev:e
tfd: 34 events: 19 data: 5575c6d07a90 pos:0 ino:81a sdev:e
tfd: 37 events: 19 data: 5575c6d08d90 pos:0 ino:255eaa sdev:8
tfd: 5 events: 19 data: 5575c6b87a70 pos:0 ino:81a sdev:e
tfd: 23 events: 19 data: 5575c6bfd2e0 pos:0 ino:25613b sdev:8
tfd: 31 events: 19 data: 5575c6d71df0 pos:0 ino:81a sdev:e
tfd: 40 events: 39 data: 5575c6da4510 pos:0 ino:3dc sdev:5
FD 33 and 34 are Inotify FDs:
[abartlet@jesse ~]$ cat /proc/139532/fdinfo/34
pos: 0
flags: 02004000
mnt_id: 15
ino: 2074
inotify wd:1 ino:b18 sdev:5 mask:c ignored_mask:0 fhandle-bytes:c fhandle-type:1 f_handle:08ed941d180b000000000000
[abartlet@jesse ~]$ cat /proc/139532/fdinfo/33
pos: 0
flags: 02004000
mnt_id: 15
ino: 2074
inotify wd:1 ino:b17 sdev:5 mask:c ignored_mask:0 fhandle-bytes:c fhandle-type:1 f_handle:2dbaf745170b000000000000
Each read call returns -1 and EAGAIN:
Thread 1 "wireplumber" hit Breakpoint 5.1, __GI___libc_read (fd=34, buf=buf@entry=0x7fffd0ce0750, nbytes=nbytes@entry=272) at ../sysdeps/unix/sysv/linux/read.c:25
25 {
(gdb) fin
Run till exit from #0 __GI___libc_read (fd=34, buf=buf@entry=0x7fffd0ce0750, nbytes=nbytes@entry=272) at ../sysdeps/unix/sysv/linux/read.c:25
Thread 1 "wireplumber" hit Breakpoint 5.2, __GI___libc_read (nbytes=272, buf=0x7fffd0ce0750, fd=34) at ../sysdeps/unix/sysv/linux/read.c:26
26 return SYSCALL_CANCEL (read, fd, buf, nbytes);
(gdb) fin
Run till exit from #0 __GI___libc_read (nbytes=272, buf=0x7fffd0ce0750, fd=34) at ../sysdeps/unix/sysv/linux/read.c:26
__GI___libc_read (fd=34, buf=buf@entry=0x7fffd0ce0750, nbytes=nbytes@entry=272) at ../sysdeps/unix/sysv/linux/read.c:24
24 __libc_read (int fd, void *buf, size_t nbytes)
(gdb) fin
Run till exit from #0 __GI___libc_read (fd=34, buf=buf@entry=0x7fffd0ce0750, nbytes=nbytes@entry=272) at ../sysdeps/unix/sysv/linux/read.c:24
impl_on_notify_events (source=0x5575c6d07a90) at ../spa/plugins/v4l2/v4l2-udev.c:429
429 if (len < 0 && errno != EAGAIN)
Value returned is $14 = -1
(gdb) p errno
$15 = 11
```
(11 is EAGAIN on this host)
## How Reproducible:
Happens every now and then, started happening about 3 months ago.
### Steps to Reproduce:
(roughly)
1. suspend laptop
2. switch USB
3. resume laptop
### Actual Results:
pipewire in CPU spin, applications using audio hang
### Expected Results:
Good audio, no hang
# Additional Info (as attachments):
- `pw-dump > pw-dump.log`:https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3520Desktop apps become unresponsive when audio is played2023-09-25T09:25:50ZAllan DayDesktop apps become unresponsive when audio is playedOn my laptop, when desktop apps play audio, they become unresponsive - their UIs freeze and can't be interacted with, and the "unresponsive app" dialog pops up shortly afterwards.
I've been experiencing this issue since I installed Fedo...On my laptop, when desktop apps play audio, they become unresponsive - their UIs freeze and can't be interacted with, and the "unresponsive app" dialog pops up shortly afterwards.
I've been experiencing this issue since I installed Fedora 39. There are periods when the bug doesn't happen (possibly for a time after a reboot), but most of the time it does, and when it is active it affects all apps. Examples of affected apps include:
* Firefox, when Whatsapp plays a notification bell
* Settings, when using the sound test window
* Rhythmbox, when playing music
* Totem, when playing a video
* Spotify doesn't play audio, but it doesn't become unresponsive
Pipewire version: 0.3.79
I captured this backtrace while reproducing the issue with gnome-control-center's sound test feature: [backtrace.log](/uploads/e97ba6f2cc371dead704f99ac6d93d7e/backtrace.log)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3519Question: Simplest way to receive events from pipewire2023-09-20T09:06:34ZAlessandro PeverelliQuestion: Simplest way to receive events from pipewireI'm writing an application in where I would like to know when a input device starts to receive audio. Which could be the better way to reach the goal? And also, are there any examples to take a look?
Thanks for any answer.I'm writing an application in where I would like to know when a input device starts to receive audio. Which could be the better way to reach the goal? And also, are there any examples to take a look?
Thanks for any answer.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3518Skype, voice level of my contact is very low2023-09-21T09:13:28ZpromeneurSkype, voice level of my contact is very low<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`): 0.3.79
- 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`): 0.3.79
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): openSUSE Tumbleweed
- Desktop Environment: KDE 23.08.1
- Kernel version (`uname -r`): 6.5.3
## Description of Problem:
Since about a week,the voice level of my contact is very low.
Other sound level as call sound are good.
I sent a report to Skype team via the app. But I get no hope to get any answer.
## How Reproducible:
Just use Skype to make a video call
skype 8.103.0.208
### Actual Results:
I hardly listen to the voice of my contact.
All the controls are equal to 100 %
Web.skype.com, there is no problem.
### Expected Results:
I can listen to my contact
# Additional Info (as attachments):
- `pw-dump > pw-dump.log`:
[pw-dump.log](/uploads/42367959fc5d41fdea71905f656b9b64/pw-dump.log)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3516No audio upon resuming playback after pause2023-12-30T22:18:40ZOleksandr KnyshukNo audio upon resuming playback after pause- PipeWire version (`pipewire --version`): 1.0.0
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Arch Linux
- Desktop Environment: GNOME 45.2 (Wayland)
- Kernel version (`uname -r`): 6.6.4-1-clear
## Desc...- PipeWire version (`pipewire --version`): 1.0.0
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Arch Linux
- Desktop Environment: GNOME 45.2 (Wayland)
- Kernel version (`uname -r`): 6.6.4-1-clear
## Description of Problem:
When I listen to music on Spotify, then switch to Firefox to watch YouTube, maybe watch a video in Telegram Desktop, and then return - I have no sound in Spotify when unpausing. The solution is to pause, wait 5 seconds, and unpause the music in the app. I can also kill Spotify, wait ~5 seconds and then open it. This fix doesn't work when I wait less than 5 seconds. It has been happening for about three months. It is worth mentioning that I use [JamesDSP](https://github.com/Audio4Linux/JDSP4Linux).
## How Reproducible:
### Steps to Reproduce:
1. Listen to some music on Spotify
2. Pause it and play some audio in Firefox/Telegram Desktop
3. Come back to Spotify, unpause the music
### Actual Results: No sound
### Expected Results: Sound plays instantly
# Additional Info (as attachments):
- `pw-dump > pw-dump.log`: [pw-dump.log](/uploads/e814d7be9c1201349df20b96eede3960/pw-dump.log)
- `systemctl --user status pipewire.service | curl -F'file=@-' https://0x0.st`: https://0x0.st/HOMM.txthttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3515FFADO device name wrong in example config2023-09-24T13:49:30ZNicolas GoyFFADO device name wrong in example configI am not sure if this is a documentation problem, or a pipewire ffado bug, but on this page
https://docs.pipewire.org/page_module_ffado_driver.html
the example says ` #ffado.devices = [ hw:0 ]`
But I had to use `[ "hw:0" ]`...I am not sure if this is a documentation problem, or a pipewire ffado bug, but on this page
https://docs.pipewire.org/page_module_ffado_driver.html
the example says ` #ffado.devices = [ hw:0 ]`
But I had to use `[ "hw:0" ]` for it to actually work (with quotes).https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3514Exported files in Ardour are silent2023-10-24T09:14:59ZBruno UnnaExported files in Ardour are silent- PipeWire version (`pipewire --version`): 0.3.80
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Arch Linux
- Desktop Environment: Cinnamon 5.8.4-1
- Kernel version (`uname -r`): 6.5.3-zen1-1-zen
## Desc...- PipeWire version (`pipewire --version`): 0.3.80
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Arch Linux
- Desktop Environment: Cinnamon 5.8.4-1
- Kernel version (`uname -r`): 6.5.3-zen1-1-zen
## Description of Problem:
Export of audio files from Ardour renders them silent. The process doesn't fail, there are no errors nor warnings in Ardour's message log. Only this informational one:
`2023-09-16T08:27:09 [INFO]: Encode command: { /usr/bin/ffmpeg_harvid -f f32le -acodec pcm_f32le -ac 2 -ar 48000 -i pipe:0 -f mp3 -acodec mp3 -q:a 2 -metadata comment=Created with Ardour -y /home/bruno/Music/ardour/black rose/export/black rose_2023-09-16.mp3 }`
The produced files can be opened in other programs (audio players), but they are completely silent for the length of the song. Tried to produce MP3 and Ogg vorbis formats, with the same result.
This same process works flawlessly with pipewire 0.3.77.
## How Reproducible:
Create a song, add some audio to it, then go to "Session->Export->Export to Audio File(s)".
# Additional Info (as attachments):
- [pw-dump.log](/uploads/38e778c79f3d97eefb62aa5653ae3020/pw-dump.log)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/35111.0 release / pipewire versioning2023-10-14T14:49:46ZArtem S. Tashkinov1.0 release / pipewire versioningPipeWire has been production ready for quite some time already.
Can we change its versioning to something more appropriate, i.e. name the next release 1.0.0 or something?
Actually, I don't like plain digits any longer.
It would be gre...PipeWire has been production ready for quite some time already.
Can we change its versioning to something more appropriate, i.e. name the next release 1.0.0 or something?
Actually, I don't like plain digits any longer.
It would be great if PipeWire adopted the YEAR.RELEASE numbering scheme, i.e. the first release in 2023 would be 2023.1, the second 2023.2, etc. etc. etc. This way it's easy to understand whether your PipeWire release is fresh/up to date or not. Or maybe if 2023 sounds too big, you could use 23.1, 23.2, etc. It's unlikely that we'll be using PipeWire in the 22nd century.
So, I'm looking forward to PipeWire adopting it as well.
Ultimately it's up to you, so you may as well dismiss this proposal altogether :smile:https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3506jack_port_disconnect race condition2023-09-24T13:49:30ZStephen Fairchildjack_port_disconnect race conditionCurrently using Pipewire 0.3.79 (problem is in .77 too) I discovered an issue where it is possible for a calls to jack_port_disconnect to invalidate buffers in the process callback. To trigger it simply call jack_port_disconnect on a con...Currently using Pipewire 0.3.79 (problem is in .77 too) I discovered an issue where it is possible for a calls to jack_port_disconnect to invalidate buffers in the process callback. To trigger it simply call jack_port_disconnect on a connected port while the process callback is running.
Got a test program that reliably demonstrates the problem. [pipewirebug.c](/uploads/8e73ffaece5557c021ec4f5ae7e6247e/pipewirebug.c)
`gcc pipewirebug.c -ljack`
`pw-jack ./a.out`https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3505Multiple instances of module-roc-source2023-09-13T10:40:55ZAlessandro PeverelliMultiple instances of module-roc-source<!-- If you are filing this issue with a regular release please try master as it might already be fixed. -->
- PipeWire version (`pipewire --version`): 0.3.79
- 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`): 0.3.79
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): "Linux Mint 21.2"
- Desktop Environment: Xfce
- Kernel version (`uname -r`): 5.15.0-83-generic
## Description of Problem:
I would like to receive RTP from different remote multicast addresses. If I use the roc-recv command I can, like:
```
$ roc-recv -vv -s rtp+rs8m://239.168.2.182:1078 -r rs8m://239.168.2.182:1079 --miface 192.168.2.182
$ roc-recv -vv -s rtp+rs8m://239.168.2.182:1080 -r rs8m://239.168.2.182:1081 --miface 192.168.2.182
```
But using module-roc-source it seems that I can instantiate no more than one instance.
## How Reproducible:
```
$ pactl load-module module-roc-source source_name=FirstRocSource local.ip=239.168.2.182 local.source.port=1078 local.repair.port=1079 sess.latency.msec=1000 resampler_profile=high fec_code=rs8m
536870913
$ pactl load-module module-roc-source source_name=SecondRocSource local.ip=239.168.2.182 local.source.port=1080 local.repair.port=1081 sess.latency.msec=1000 resampler_profile=high fec_code=rs8m
Failure: Invalid argument
```
### Steps to Reproduce:
as above
### Actual Results:
as above
### Expected Results:
Creation of n instances of module-roc-source allowed. Or, where is the configuration error, or maybe a reason why it is not possible could be enough.
# Additional Info (as attachments):
- `pw-dump > pw-dump.log`:[pw-dump.log](/uploads/6d90799b5c27c9dcc8a785df210b2c65/pw-dump.log)https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3504Pipewire crashes when removing plugin from Carla Rack2023-09-24T13:49:30ZMarcin KoziołPipewire crashes when removing plugin from Carla RackSteps to reproduce:
1. Using pipewire from master
2. Run Carla Rack (I'm using compiled version from the master branch, because the "stable" one from ubuntu studio repo doesn't work at all with pipewire)
3. Set Carla Rack Process Mode t...Steps to reproduce:
1. Using pipewire from master
2. Run Carla Rack (I'm using compiled version from the master branch, because the "stable" one from ubuntu studio repo doesn't work at all with pipewire)
3. Set Carla Rack Process Mode to "Multiple Clients"
4. Add some plugin (SurgeXT in my case, clap version), connect MIDI and audio output
5. remove the plugin
Dmesg:
```
[ 827.865467] pipewire[4205]: segfault at 0 ip 00007fb50c41e930 sp 00007ffc0f8319d0 error 4 in libspa-alsa.so[7fb50c3c6000+b4000] likely on CPU 5 (core 1, socket 0)
```
gdb:
```
Attaching to process 12464
[New LWP 12466]
[New LWP 12468]
[New LWP 12481]
[New LWP 12482]
--Type <RET> for more, q to quit, c to continue without paging--
[New LWP 12483]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00007f643151dff6 in epoll_wait (epfd=4, events=events@entry=0x7ffe3cb49070, maxevents=32, timeout=-1) at ../sysdeps/unix/sysv/linux/epoll_wait.c:30
30 ../sysdeps/unix/sysv/linux/epoll_wait.c: Nie ma takiego pliku ani katalogu.
(gdb) continue
Continuing.
Thread 1 "pipewire" received signal SIGSEGV, Segmentation fault.
impl_node_port_set_param (object=0x7f6421901038, direction=SPA_DIRECTION_OUTPUT, port_id=<optimized out>, id=15, flags=0, param=0x0) at ../spa/plugins/alsa/alsa-seq-bridge.c:694
694 if ((res = spa_latency_parse(param, &info)) < 0)
```
Additional trivia:
seems that this issue occurs only when MIDI is connected AND any audio output is connected to playback device (I tested both sound cards - M-AUDIO M-Track duo and some generic on-board Cannon Lake PCHhttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3502No sound using A2DP codec with AirPods Pro 22024-03-16T16:49:30ZJulian ArkenauNo sound using A2DP codec with AirPods Pro 2- Problem present on `master`
<!-- If you can, test also with Pulseaudio and list `pulseaudio --version`. -->
- PipeWire version (`pipewire --version`): 0.3.79
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-releas...- Problem present on `master`
<!-- If you can, test also with Pulseaudio and list `pulseaudio --version`. -->
- PipeWire version (`pipewire --version`): 0.3.79
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): Ubuntu 20.04.6 LTS
- Desktop Environment: GNOME 3.36.5
- Kernel version (`uname -r`): 5.15.0-83-generic
- BlueZ version (`bluetoothctl --version`): 5.5
- `lsusb`:
```console
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 005: ID 058f:9540 Alcor Micro Corp. AU9540 Smartcard Reader
Bus 003 Device 008: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 003 Device 006: ID 046d:082d Logitech, Inc. HD Pro Webcam C920
Bus 003 Device 004: ID 0bda:5411 Realtek Semiconductor Corp. 4-Port USB 2.0 Hub
Bus 003 Device 003: ID 30c9:0014 8SSC20F27114V1SR1AS12V3 Integrated Camera
Bus 003 Device 002: ID 06cb:00bd Synaptics, Inc.
Bus 003 Device 007: ID 8087:0032 Intel Corp.
Bus 003 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 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
```
- Bluetooth devices:
```console
Device 74:15:F5:17:8E:BA Julian’s AirPods Pro
Device FC:82:BC:82:82:DC MX Master 3
Device 50:C2:ED:E4:12:FB Jabra Elite 85h
```
## Description of Problem:
After connecting the AirPods Pro 2, no sound is played from then when using the following A2DP codecs:
- `A2DP, SBC`
- `A2DP, SBC-XQ`
- `A2DP, ACC`
Using HSP codecs, sound is played, although it sounds bad.
AirPods Firmware Version: 5E135
Issue https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1630 seems related, but in my case the problem still exists on master
## How Reproducible:
100%
### Steps to Reproduce:
1. Connect AirPods Pro 2
2. Select one of the A2DP codecs (e.g with Blueman)
3. Start a sound source
# Additional Info (as attachments):
- `pw-dump > pw-dump.log`: [pw-dump.log](/uploads/966158fda5a591d0ad4546ca09d35974/pw-dump.log)
- Bluetooth debug log, see [here](https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Troubleshooting#bluetooth):
[pipewire-bluez.log](/uploads/b1df46ec1a0a8229e0347c5190ff340a/pipewire-bluez.log)
If I should provide anything else, let me know.https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3501Crash in pipewire-pulse2023-09-22T13:55:52ZsaivertCrash in pipewire-pulseI just experienced a random crash out of the blue today and am posting the crash dump here for analysis.
```plaintext
coredumpctl gdb /usr/bin/pipewire
PID: 6503 (pipewire-pulse)
UID: 1000 (saivert)
GID...I just experienced a random crash out of the blue today and am posting the crash dump here for analysis.
```plaintext
coredumpctl gdb /usr/bin/pipewire
PID: 6503 (pipewire-pulse)
UID: 1000 (saivert)
GID: 1000 (saivert)
Signal: 11 (SEGV)
Timestamp: Sun 2023-09-10 10:45:01 CEST (4min 45s ago)
Command Line: /usr/bin/pipewire-pulse
Executable: /usr/bin/pipewire
Control Group: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire-pulse.service
Unit: user@1000.service
User Unit: pipewire-pulse.service
Slice: user-1000.slice
Owner UID: 1000 (saivert)
Boot ID: 2442c1939a1f4abeb6a6541ffa736aa9
Machine ID: 1cfb1b6d3c3c4479af84316e39bda99a
Hostname: fedora
Storage: /var/lib/systemd/coredump/core.pipewire-pulse.1000.2442c1939a1f4abeb6a6541ffa736aa9.6503.1694335501000000.zst (present)
Size on Disk: 30.7M
Package: pipewire/0.3.78-1.fc38
build-id: 034593ccc5658d964c6c38d09623a0946c4817a7
Message: Process 6503 (pipewire-pulse) of user 1000 dumped core.
Module libspa-audiomixer.so from rpm pipewire-0.3.78-1.fc38.x86_64
Module libspa-audioconvert.so from rpm pipewire-0.3.78-1.fc38.x86_64
Module libpipewire-module-fallback-sink.so from rpm pipewire-0.3.78-1.fc38.x86_64
Module libblkid.so.1 from rpm util-linux-2.38.1-4.fc38.x86_64
Module libpcre2-8.so.0 from rpm pcre2-10.42-1.fc38.1.x86_64
Module libffi.so.8 from rpm libffi-3.4.4-2.fc38.x86_64
Module libselinux.so.1 from rpm libselinux-3.5-1.fc38.x86_64
Module libmount.so.1 from rpm util-linux-2.38.1-4.fc38.x86_64
Module libz.so.1 from rpm zlib-1.2.13-3.fc38.x86_64
Module libgmodule-2.0.so.0 from rpm glib2-2.76.4-3.fc38.x86_64
Module libglib-2.0.so.0 from rpm glib2-2.76.4-3.fc38.x86_64
Module libgobject-2.0.so.0 from rpm glib2-2.76.4-3.fc38.x86_64
Module libgio-2.0.so.0 from rpm glib2-2.76.4-3.fc38.x86_64
Module libavahi-client.so.3 from rpm avahi-0.8-22.fc38.x86_64
Module libavahi-common.so.3 from rpm avahi-0.8-22.fc38.x86_64
Module libpipewire-module-protocol-pulse.so from rpm pipewire-0.3.78-1.fc38.x86_64
Module libpipewire-module-metadata.so from rpm pipewire-0.3.78-1.fc38.x86_64
Module libpipewire-module-adapter.so from rpm pipewire-0.3.78-1.fc38.x86_64
Module libpipewire-module-client-node.so from rpm pipewire-0.3.78-1.fc38.x86_64
Module libpipewire-module-protocol-native.so from rpm pipewire-0.3.78-1.fc38.x86_64
Module libpipewire-module-rt.so from rpm pipewire-0.3.78-1.fc38.x86_64
Module libdbus-1.so.3 from rpm dbus-1.14.8-1.fc38.x86_64
Module libspa-dbus.so from rpm pipewire-0.3.78-1.fc38.x86_64
Module liblz4.so.1 from rpm lz4-1.9.4-2.fc38.x86_64
Module libzstd.so.1 from rpm zstd-1.5.5-1.fc38.x86_64
Module liblzma.so.5 from rpm xz-5.4.1-1.fc38.x86_64
Module libcap.so.2 from rpm libcap-2.48-6.fc38.x86_64
Module libsystemd.so.0 from rpm systemd-253.7-1.fc38.x86_64
Module libspa-journal.so from rpm pipewire-0.3.78-1.fc38.x86_64
Module libspa-support.so from rpm pipewire-0.3.78-1.fc38.x86_64
Module libpipewire-0.3.so.0 from rpm pipewire-0.3.78-1.fc38.x86_64
Module pipewire from rpm pipewire-0.3.78-1.fc38.x86_64
Stack trace of thread 6510:
#0 0x00007fa59c6a3745 impl_node_process.lto_priv.1 (libspa-audiomixer.so + 0xc745)
#1 0x00007fa5ab950a4a node_on_fd_events.lto_priv.0 (libpipewire-0.3.so.0 + 0x65a4a)
#2 0x00007fa5ab6cdce6 loop_iterate (libspa-support.so + 0x8ce6)
#3 0x00007fa5ab932e83 do_loop (libpipewire-0.3.so.0 + 0x47e83)
#4 0x00007fa5ab799907 start_thread (libc.so.6 + 0x8c907)
#5 0x00007fa5ab81f774 __clone (libc.so.6 + 0x112774)
Stack trace of thread 6505:
#0 0x00007fa5ab81fc72 epoll_wait (libc.so.6 + 0x112c72)
#1 0x00007fa5ab6db768 impl_pollfd_wait (libspa-support.so + 0x16768)
#2 0x00007fa5ab6cdc29 loop_iterate (libspa-support.so + 0x8c29)
#3 0x00007fa5ab976007 do_loop (libpipewire-0.3.so.0 + 0x8b007)
#4 0x00007fa5ab799907 start_thread (libc.so.6 + 0x8c907)
#5 0x00007fa5ab81f774 __clone (libc.so.6 + 0x112774)
Stack trace of thread 6503:
#0 0x00007fa5ab80e0fa read (libc.so.6 + 0x1010fa)
#1 0x00007fa5ab6db207 impl_eventfd_read (libspa-support.so + 0x16207)
#2 0x00007fa5ab6ce8fa loop_invoke (libspa-support.so + 0x98fa)
#3 0x00007fa5ab953982 node_deactivate.lto_priv.0 (libpipewire-0.3.so.0 + 0x68982)
#4 0x00007fa5ab9572c0 idle_node.lto_priv.0 (libpipewire-0.3.so.0 + 0x6c2c0)
#5 0x00007fa5ab9621c8 pw_impl_node_set_state (libpipewire-0.3.so.0 + 0x771c8)
#6 0x00007fa59d54b952 client_node_command (libpipewire-module-client-node.so + 0x11952)
#7 0x00007fa59d55af34 client_node_demarshal_command.lto_priv.0 (libpipewire-module-client-node.so + 0x20f34)
#8 0x00007fa597fcaa91 process_remote (libpipewire-module-protocol-native.so + 0x15a91)
#9 0x00007fa597fcb278 on_remote_data (libpipewire-module-protocol-native.so + 0x16278)
#10 0x00007fa5ab6cdce6 loop_iterate (libspa-support.so + 0x8ce6)
#11 0x00007fa5ab95155b pw_main_loop_run (libpipewire-0.3.so.0 + 0x6655b)
#12 0x000055759111a606 main (pipewire + 0x1606)
#13 0x00007fa5ab734b4a __libc_start_call_main (libc.so.6 + 0x27b4a)
#14 0x00007fa5ab734c0b __libc_start_main@@GLIBC_2.34 (libc.so.6 + 0x27c0b)
#15 0x000055759111a7a5 _start (pipewire + 0x17a5)
ELF object binary architecture: AMD x86-64
GNU gdb (GDB) Fedora Linux 13.2-3.fc38
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/pipewire...
This GDB supports auto-downloading debuginfo from the following URLs:
<https://debuginfod.fedoraproject.org/>
Enable debuginfod for this session? (y or [n]) y
Debuginfod has been enabled.
To make this setting permanent, add 'set debuginfod enabled on' to .gdbinit.
Reading symbols from /home/saivert/.cache/debuginfod_client/034593ccc5658d964c6c38d09623a0946c4817a7/debuginfo...
warning: Can't open file /memfd:pipewire-memfd:flags=0x0000000f,type=2,size=65664 (deleted) during file-backed mapping note processing
warning: Can't open file /memfd:pipewire-memfd:flags=0x0000000f,type=2,size=2312 (deleted) during file-backed mapping note processing
warning: Can't open file /memfd:pipewire-memfd:flags=0x0000000f,type=2,size=4096 (deleted) during file-backed mapping note processing
[New LWP 6510]
[New LWP 6505]
[New LWP 6503]
--Type <RET> for more, q to quit, c to continue without paging--c
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/usr/bin/pipewire-pulse'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 impl_node_process (object=0x557596163928) at ../spa/plugins/audiomixer/mixer-dsp.c:721
721 inio->status = SPA_STATUS_NEED_DATA;
[Current thread is 1 (Thread 0x7fa59cf8a6c0 (LWP 6510))]
(gdb) bt
#0 impl_node_process (object=0x557596163928) at ../spa/plugins/audiomixer/mixer-dsp.c:721
#1 0x00007fa5ab950a4a in process_node (data=0x5575960e8470) at ../src/pipewire/impl-node.c:1234
#2 node_on_fd_events (source=<optimized out>) at ../src/pipewire/impl-node.c:1310
#3 0x00007fa5ab6cdce6 in loop_iterate (object=0x5575916b3328, timeout=<optimized out>) at ../spa/plugins/support/loop.c:483
#4 0x00007fa5ab932e83 in do_loop (user_data=0x5575916b31c0) at ../src/pipewire/data-loop.c:65
#5 0x00007fa5ab799907 in start_thread (arg=<optimized out>) at pthread_create.c:444
#6 0x00007fa5ab81f774 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
(gdb) bt full
#0 impl_node_process (object=0x557596163928) at ../spa/plugins/audiomixer/mixer-dsp.c:721
inport = <optimized out>
inb = <optimized out>
bd = 0x557593b59b88
offs = <optimized out>
inio = 0x7fa59d49c000
this = 0x557596163928
outport = 0x557596164b00
outio = 0x557594dbcae0
n_buffers = 1
i = 0
maxsize = <optimized out>
buffers = 0x557596165c80
outb = <optimized out>
datas = 0x557596166c80
__func__ = "impl_node_process"
#1 0x00007fa5ab950a4a in process_node (data=0x5575960e8470) at ../src/pipewire/impl-node.c:1234
_f = <optimized out>
_n = <optimized out>
this = 0x5575960e8470
a = 0x7fa59d49e000
status = <optimized out>
p = 0x557594dbc560
data_system = 0x5575916b3290
nsec = <optimized out>
cmd = 1
this = 0x5575960e8470
__func__ = "node_on_fd_events"
#2 node_on_fd_events (source=<optimized out>) at ../src/pipewire/impl-node.c:1310
cmd = 1
this = 0x5575960e8470
__func__ = "node_on_fd_events"
#3 0x00007fa5ab6cdce6 in loop_iterate (object=0x5575916b3328, timeout=<optimized out>) at ../spa/plugins/support/loop.c:483
--Type <RET> for more, q to quit, c to continue without paging--q
Quit
(gdb) list
716
717 if (!SPA_FLAG_IS_SET(bd->chunk->flags, SPA_CHUNK_FLAG_EMPTY)) {
718 datas[n_buffers] = SPA_PTROFF(bd->data, offs, void);
719 buffers[n_buffers++] = inb;
720 }
721 inio->status = SPA_STATUS_NEED_DATA;
722 }
723
724 outb = dequeue_buffer(this, outport);
725 if (SPA_UNLIKELY(outb == NULL)) {
(gdb)
```https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/3500two bluetooth speakers, bad stereo2024-03-16T16:48:28Zpromeneurtwo bluetooth speakers, bad stereo<!-- 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`): 0.3...<!-- 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`): 0.3.79
- Distribution and distribution version (`PRETTY_NAME` from `/etc/os-release`): openSUSE Tumbleweed
- Desktop Environment: KDE 23.08.0
- Kernel version (`uname -r`): 6.4.12
- BlueZ version (`bluetoothctl --version`): 5.69
- `lsusb`:
```
# paste the output of "lsusb" here
```
Bus 002 Device 002: ID 0bda:0321 Realtek Semiconductor Corp. USB3.0 Card Reader
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 04d9:1702 Holtek Semiconductor, Inc. Keyboard LKS02
Bus 001 Device 004: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 001 Device 003: ID 046d:08e5 Logitech, Inc. C920 PRO HD Webcam
Bus 001 Device 002: ID 046d:0825 Logitech, Inc. Webcam C270
Bus 001 Device 006: ID 8087:0032 Intel Corp. AX210 Bluetooth
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
- Bluetooth devices:
```
# paste the output of "bluetoothctl devices" here
```
Device 7C:ED:C6:B8:7C:78 Droite
Device 7C:ED:C6:AF:FE:1B Gauche
Device 44:3D:54:50:B3:A3 Echo Dot-2K3
Device F0:2F:74:7C:FC:8F La magicienne
Device 40:45:DA:55:D4:FA Le prophète
Device 0C:E0:E4:9E:7C:C7 PLT_BBTSENSE
Device 00:1E:7C:39:7D:25 Philips SHQ7300
Device B4:74:43:FE:CE:78 La légende noire
Device 90:06:28:B6:B1:B6 Le surfeur d'argent
## Description of Problem:
I get two amazon echo pop connected separately to the PC via Bluetooth.
I create a virtual sound output device with these statements:
*************************************************************************************
create a virtual stereo device named "bluetooth_stereo"
pactl load-module module-null-sink media.class=Audio/Sink sink_name=bluetooth_stereo channel_map=stereo
link the left channel of the PC to the left channel of the left Echo Pop (named "Gauche" as a bluetooth device)
pw-link bluetooth_stereo:monitor_FL bluez_output.<mac_address_1>:playback_FL
link the left channel of the PC to the right channel of the left Echo Pop (named "Gauche" as a bluetooth device)
pw-link bluetooth_stereo:monitor_FL bluez_output.<mac_address_1>:playback_FR
link the right channel of the PC to the right channel of the right Echo Pop (named "Droite" as a bluetooth device)
pw-link bluetooth_stereo:monitor_FR bluez_output.<mac_address_2>:playback_FR
link the right channel of the PC to the left channel of the right Echo Pop (named "Droite" as a bluetooth device)
pw-link bluetooth_stereo:monitor_FR bluez_output.<mac_address_2>:playback_FL
*************************************************************************************
see the helvum diagram
![virtual_bluetooth_stereo](/uploads/fd325a05fd11dcabffd113d98f602804/virtual_bluetooth_stereo.png)
## How Reproducible:
### Steps to Reproduce:
1. play a video with VLC or Chrome (YouTube)
2.
3.
### Actual Results:
you get randomly:
- cracks
- only left channel
- only right channel
- a good stereo
### Expected Results:
you get always a good stereo
I will send logshttps://gitlab.freedesktop.org/pipewire/pipewire/-/issues/34952 echo pop, not the same codecs2023-09-10T10:29:11Zpromeneur2 echo pop, not the same codecsMy PC gets an Intel AX210 (Bluetooth 5.3)
openSUSE Tumbleweed, KDE 23.08.0, pipewire 0.3.79
Two same Amazon Echo Pop connected at the same time to the PC via Bluetooth.
Surprisingly, one uses SBC and the other one uses SBC-XQ.
I can't...My PC gets an Intel AX210 (Bluetooth 5.3)
openSUSE Tumbleweed, KDE 23.08.0, pipewire 0.3.79
Two same Amazon Echo Pop connected at the same time to the PC via Bluetooth.
Surprisingly, one uses SBC and the other one uses SBC-XQ.
I can't switch to SBC or SBC-XQ according to get the same codec for the twos.
I don't know if it is a pipewire or a Bluetooth problem. So I also sent a bug report to Bluez.
https://github.com/bluez/bluez/issues/597