Repro
- Load the module (They're removed after a restart)
pactl load-module module-null-sink sink_name=audiorelay-virtual-mic-sink sink_properties=device.description=Virtual-Mic-Sink
pactl load-module module-remap-source master=audiorelay-virtual-mic-sink.monitor source_name=audiorelay-virtual-mic-sink source_properties=device.description=Virtual-Mic
- Run a program calling
ma_context_get_device_info
For example, set this in simple_enumeration.c
printf("Capture Devices\n");
for (iDevice = 0; iDevice < captureDeviceCount; ++iDevice)
{
ma_device_info info = pCaptureDeviceInfos[iDevice];
ma_context_get_device_info(&context, ma_device_type_capture, &info.id, &info);
printf(" %u: %s\n", iDevice, info.name);
}
Result
Program received signal SIGSEGV, Segmentation fault.
0x0000555555566d47 in ma_context_get_device_info_source_callback__pulse (pPulseContext=0x555555652ed0, pInfo=0x0, endOfList=-1, pUserData=0x7fffffffd280) at [...]
31598 if (pInfo->name != NULL) {
The target architecture is set to "auto" (currently "i386:x86-64").
ma_context_get_device_info_source_callback__pulse miniaudio.h:31598
ma_wait_for_operation__pulse miniaudio.h:31143
ma_wait_for_operation_and_unref__pulse miniaudio.h:31160
ma_context_get_device_info__pulse miniaudio.h:31651
ma_context_get_device_info miniaudio.h:43578
main simple_enumeration.c:51
If you call run the program again after restarting pulseaudio (via systemctl --user restart pipewire-pulse.service) , it will no longer crash.
Info
Tested with 0.11.25
It doesn't occur with dev-0.12
lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 24.04.4 LTS
Release: 24.04
Codename: noble
pipewire --version
pipewire
Compiled with libpipewire 1.0.5
Linked with libpipewire 1.0.5
pactl --version
pactl 16.1
Compiled with libpulse 16.1.0
Linked with libpulse 16.1.0
By the way, are you interested in bug reports for dev-0.12? The pipewire enumeration crashes on my end and, I think I'm getting late (or missed) capture callbacks on other backends.
Repro
pactl load-module module-null-sink sink_name=audiorelay-virtual-mic-sink sink_properties=device.description=Virtual-Mic-Sinkpactl load-module module-remap-source master=audiorelay-virtual-mic-sink.monitor source_name=audiorelay-virtual-mic-sink source_properties=device.description=Virtual-Micma_context_get_device_infoFor example, set this in
simple_enumeration.cResult
If you call run the program again after restarting pulseaudio (via
systemctl --user restart pipewire-pulse.service) , it will no longer crash.Info
Tested with 0.11.25
It doesn't occur with dev-0.12
By the way, are you interested in bug reports for dev-0.12? The pipewire enumeration crashes on my end and,
I think I'm getting late (or missed) capture callbacks on other backends.