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 |
||
|---|---|---|
| .. | ||
| examples | ||
| include | ||
| include-private/spa-private | ||
| lib | ||
| plugins | ||
| tests | ||
| tools | ||
| meson.build | ||