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

Real 1080p inputs, no shortcuts

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. Capacity tests still require independent real-resolution inputs processed at native cadence. The eight small mixed-rate barcoded inputs are a correctness fixture, explicitly not a capacity qualification.

The capacity demo proves what real inputs cost: every scene source is its own input of at least 1080p25, with its own media, processed on every frame. The four downstream keys are separate browser inputs at their graphics dimensions; they are included in the 192-input total.

Status: Implemented

Shared test media vs. real inputs

Left: one cached clip fans out to three sources, so they share one file and one page cache and show the same picture. Right: each source has its own file with its ID burned in, so three sources mean three files and three different pictures. Before · several sources, one clip pattern_1.mp4 one page-cache copy source Asame picture source Bsame picture source Csame picture A frozen source hides; disk and cache cost look smaller than a real show. Now · each source, its own media sdr420_raw_001…nv12ID burned in sdr420_002…mp4ID burned in browser_003 pageID in its header source 001own chain source 002own chain source 003own chain Every picture differs; each ID plate moves.
File names are shortened for the diagram. Real names also hold the colour, chroma, pattern and storage.

One source, one frame: where each rule applies

One source's path per frame: its own 1080p media, decoded or uploaded at full size, paced every tick, composited, then encoded. Under each stage, the shortcut that is not allowed there. own media1920×1080 NVDEC / upload/ browser import pacenew frame each tick compositorprogram + monitors encodersalways running not allowed shared files 720p media not allowed decode-side downscale not allowed looped clips held on the GPU unchanged scales each box to its scene size not allowed pausing outputs nobody watches Each rule keeps a stage paying the full price a real 1080p25 input costs.

At a glance

Where in the code

Source links are pinned to the reviewed revision.

See also Ideas we measured and dropped: shared media, 720p, decode-side resize and GPU-held loops.