Historical recipe — not current setup guidance. Measurements and implementation links below belong to their original workload and revision. Deployment labels and defaults may be obsolete. Use the reviewed performance recipes; browse historical evidence.

AVPlumber · Mixer optimization cookbook

PGM delay instead of a longer aux deadline

Implementation links are pinned to develop at c20464a5 (2026-10-09); read against develop at 8fa15c92 on 2026-10-13 and still current. Measurements retain their original workload and scope. Watch the current 192-input L4 demo.

Current scope. The 80 ms diagram is specifically the 25 fps example. Canvas latency defaults depend on frame rate; program-pad delay depends on AUX rate. Source pads do not inherit the program pad offset.

The Program preview aux keeps the normal 80 ms deadline for all its sources and shows only its PGM pad one frame back, because the finished program arrives a frame later than the sources it is made of.

Status: Implemented

The timing

Every compositor draws output time T at T + 80 ms (a 2-frame playout deadline at 25 fps). An input that misses the deadline repeats its last frame; nothing stalls. The Program preview aux (layout pgm_pvw_grid: 100 source pads + 1 PGM pad) also takes the finished program. That leaves the M/E at about T + 2 frames + keyer ≈ T + 96 ms, after the deadline.

Timeline: today the aux draws tick T at T+120 ms; with the PGM delay it draws at T+80 ms and takes the program of tick T−1. T−1 T T+40 T+80 T+120 Today whole aux at 120 ms 100 sources of tick T wait 3 frames M/E + keyer make PGM T ready ~T+96 draw T Every tile 120 ms old New 80 ms, PGM pad matched 1 tick back 100 sources of T wait 2 frames M/E + keyer make PGM T−1 ready ~T+56 PGM T, ready ~T+96: used by the next draw draw T Source tiles 80 ms old · PGM tile 120 ms (T−1 shown at T+80)
Red bars are the M/E making the program; hatching is time an input waits in the aux queue before the amber draw. The ~T+96 ms program arrival is an approximate figure (2 frames + keyer); the ~T+56 ms is the same delay one tick earlier.
The Program preview compositor has 100 source pads and one PGM pad; only the last pad carries the one-tick offset. source 0 source 1 … 97 more source 99 PGM · aux_mv_pgm −1 tick aux_mv_comp mixer_compositor latency 2 frames = 80 ms Program preview aux
Layout pgm_pvw_grid: 100 source pads plus one PGM pad. The PGM pad is the last input, and only it is shifted.

At a glance

Where in the code

Source links identify the reviewed code, independently of deployment state.