mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2026-06-13 14:33:03 -04:00
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 |
||
|---|---|---|
| .. | ||
| aec | ||
| alsa | ||
| audioconvert | ||
| audiomixer | ||
| audiotestsrc | ||
| avb | ||
| bluez5 | ||
| control | ||
| ffmpeg | ||
| filter-graph | ||
| jack | ||
| libcamera | ||
| support | ||
| test | ||
| v4l2 | ||
| videoconvert | ||
| videotestsrc | ||
| volume | ||
| vulkan | ||
| meson.build | ||