Expand description
Reframe in the grade pass: the per-frame windows become Grade::crops (libplacebo’s own
sub-pixel crop and EWA scaler), or, with a stabilizer warp, one MAIN hook that samples the
source at warp_i * crop_i so warp and crop are a single resample in the same
pl_render_image call.
Constants§
- GEOMETRY_
HOOK - Hook names, so
ffcine-hookscan order them against user shaders. - SAFE_
AREA_ HOOK
Functions§
- apply
- Puts
frames(one per output frame, fromcrate::Reframe::frames) and the stabilizer’swarps(output -> source, before the crop; empty for none) intograde, rendering atout’s size, plus the safe-area overlay ifoutasks for it. - apply_
mapped - Puts frames with an NLE crop / transform (
crate::geo) intograde: oneMAINhook samples the source atwarp_i · mapped_i(Catmull-Rom), black outside the source and the crop mask, into an intermediate at the output’s aspect that the grade’s scaler takes to the output size. The picture fills the frame (a placedcontainpicture is part of the map), so the fill around it is black. - compose
- Per-frame
warp_i * window_i: intermediate pixel -> source pixel. Past the end of either list its last entry holds. - geometry_
hook - The
MAINhook resampling the source at the composed matrices, given per frame as nine dynamic//!PARAMs (m00..m22, row-major). - intermediate_
size - Intermediate size for the warp path: the largest window, in the windows’ aspect, rounded up.
- mapped_
hook - The
MAINhook ofapply_mapped: per frame, the intermediate -> source map (a00..a22), the stabilizer’s warp (m00..m22) and the crop mask, as dynamic//!PARAMs. - mapped_
size - Intermediate size for
apply_mapped: the output size at the largest source scale along each axis (at least the output size, at most 8192 each way). - safe_
area_ hook - Review overlay at
PREOUTPUT(RGB, after scaling, tone mapping and sharpening): dims everything outsideareaand outlines it.