STRUCT GSC_FRAME(9)
π NAME
struct gsc_frame β bestie, this is literally the source/target frame properties struct β¨
It's a manual page from the Kernel API Manual, and we're gonna get you so comfy with it π«Ά
β¨ SYNOPSIS
struct gsc_frame {
u32 f_width;
u32 f_height;
struct v4l2_rect crop;
unsigned long payload[VIDEO_MAX_PLANES];
struct gsc_addr addr;
const struct gsc_fmt *fmt;
u32 colorspace;
u8 alpha;
};
No cap, that's the whole vibe. Now let's meet the members π
π Members
f_widthβ okay so width has two moods depending on where you are: onSRCit'sSRCIMG_WIDTH, and onDSTit'sOUTPUTDMA_WHOLE_IMG_WIDTH. Same girl, different era πf_heightβ and height is matching energy fr fr:SRC : SRCIMG_HEIGHT,DST : OUTPUTDMA_WHOLE_IMG_HEIGHTπ¦cropβ the cropped size when you're the source, and the scaled size when you're the destination π it's giving glow-up by scalingpayloadβ the image size in bytes (that's w x h x bpp, iykyk) and it's an array ofVIDEO_MAX_PLANESof typeunsigned longπ₯addrβ the image frame buffer physical addresses, aka where the pixels actually live π β¨fmtβ a G-Scaler color format pointer, typedconst struct gsc_fmt *πcolorspaceβ a value indicatingv4l2_colorspaceπalphaβ the frame's alpha value, a littleu8doing big things π
πΈ SEE ALSO
Peep the kernel file ./drivers/media/platform/samsung/exynos-gsc/gsc-core.h for the full lore, plus these iconic friends:
enum gsc_datapath(9)struct gsc_fmt(9)struct gsc_input_buf(9)struct gsc_addr(9)struct gsc_scaler(9)struct gsc_m2m_device(9)struct gsc_pix_max(9)struct gsc_pix_min(9)struct gsc_driverdata(9)struct gsc_dev(9)struct gsc_ctx(9)
And that's the whole page, bestie β you ate π π
Signing off with love from ./drivers/media/platform/samsu..., dated October 2026 β struct gsc_frame(9) out πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms