Expand description
When a capture is due a frame, shared by the X11 and Wayland backends. The frame pacing every capture backend shares: when a display is due a frame, and how far a change that just happened may bring the next one forward.
A capture renders on its frame timer, and something that actually happened – input the compositor processed, a frame a host delivered, a region the X server reports damaged – may render one ahead of that timer. Input’s pull spends from a budget that refills slowly, so input faster than the cadence raises the output rate by no more than the refill; a change the screen or a host reports spends only what its own late frames paid back, so it moves the cadence onto the frames it reports without raising the rate. Either way a change arriving on its own schedule is published as it lands rather than up to a period later.
Structs§
- Frame
Pace - A capture’s frame pacing: the last frame it rendered, and how far a pull may still bring the next one forward.
Enums§
- Tick
Trigger - What asks a display for a frame: its frame timer, fresh input, a frame the host just delivered under host capture, or a region the X server reports damaged. All but the timer say something has actually changed, and so may pull the cadence’s phase forward.