pipewire/spa/plugins
Torkel Niklasson 476d068738 audiomixer: allocate DSP mixer port buffers dynamically
Like the audioconvert node, the DSP mixer embedded a fixed
buffers[MAX_BUFFERS] array (MAX_BUFFERS == 64) in struct port, each
struct buffer holding datas[MAX_DATAS] (MAX_DATAS == 64), reserving
~37 KB per port regardless of the actual buffer/channel count. A DSP
mixer port is created for every link set that mixes into a port, so
this adds up.

Allocate the buffer table and the per-buffer data-pointer pool in a
single calloc in port_use_buffers(), sized to the real number of
buffers and their data blocks, and release it in clear_buffers().
remove_port() now clears the port before zeroing it so a pooled port
does not leak its allocation, and impl_clear() clears the input and
output ports on teardown. Mirrors the audioconvert dynamic-allocation
change.

Co-authored-by: Copilot copilot@github.com
Change-Id: I47286a36ae60cc10d520c0cd500fcd00d6d37657
2026-06-12 18:19:35 +00:00
..
aec spa: aec: Fix a spurious warning while parsing args 2026-06-03 09:39:32 -07:00
alsa alsa: acp: emit route param updates when card properties change 2026-06-11 11:08:44 -04:00
audioconvert audioconvert: allocate port buffers dynamically 2026-06-12 18:19:35 +00:00
audiomixer audiomixer: allocate DSP mixer port buffers dynamically 2026-06-12 18:19:35 +00:00
audiotestsrc plugins: handle some fd allocation errors 2026-05-05 11:36:45 +02:00
avb avb: use safer strbuf to construct strings 2026-05-06 13:09:03 +02:00
bluez5 bluez: introduce media.min-latency-ms for media source 2026-06-11 20:34:22 +02:00
control mixer: handle control.ump property 2026-03-25 11:59:43 +01:00
ffmpeg spa: use log topics everywhere 2024-03-11 18:45:21 +02:00
filter-graph filter-graph: sync_volume initializes the control ports 2026-05-20 11:32:39 +02:00
jack *: don't include standard C headers inside of extern "C" 2025-05-30 09:48:28 +01:00
libcamera spa: libcamera: use std::span 2026-03-27 09:57:56 +01:00
support node-driver: Add sync.force-tracking property 2026-06-11 20:34:22 +02:00
test plugins: handle some fd allocation errors 2026-05-05 11:36:45 +02:00
v4l2 security: add missing O_CLOEXEC flag to V4L2 device open 2026-04-28 12:56:40 +02:00
videoconvert modules: handle allocation errors gracefully 2026-05-05 13:10:21 +02:00
videotestsrc spa: do not use SPA_PROP_live 2026-03-27 18:03:24 +01:00
volume treewide: access the position information using helpers 2025-10-21 13:06:25 +02:00
vulkan vulkan: check for fcntl errors 2026-05-06 12:45:37 +02:00
meson.build spa/plugins: revert "Disable alsa plugin on !Linux platforms." 2026-03-12 09:20:05 +00:00