v4l2_detect_cvt(9)
β¨ v4l2_detect_cvt(9) β¨
okay so this is a page from the Kernel API Manual, and the star of the show is v4l2_detect_cvt β bestie, its whole job is to detect if the given timings follow the CVT standard π
πΈ NAME πΈ
v4l2_detect_cvt β detect if the given timings follow the CVT standard
no cap, that's literally it. it checks the vibe of your timings against CVT π
β¨ SYNOPSIS β¨
bool v4l2_detect_cvt (unsigned int frame_height , unsigned int hfreq ,
unsigned int vsync , unsigned int active_width , u32 polarities , bool
interlaced , const struct v4l2_dv_timings_cap *cap , struct
v4l2_dv_timings *fmt );
she takes eight arguments, and yes, you have to give her all of them π«Ά
π¦ ARGUMENTS π¦
frame_heightβ the total height of the frame (including blanking) in lines. total. blanking included. don't forget the blanking, bestie πhfreqβ the horizontal frequency in Hz.vsyncβ the height of the vertical sync in lines.active_widthβ active width of image (does not include blanking). heads up: this info is needed only in case of version 2 of reduced blanking. In other cases, this parameter does not have any effect on timings. so like... sometimes she's just standing there, not doing anything π§polaritiesβ the horizontal and vertical polarities (same asstruct v4l2_bt_timingspolarities).interlacedβ if this flag is true, it indicates interlaced format.capβ thev4l2_dv_timings_capcapabilities.fmtβ the resulting timings. this is where the answer lands, so keep it safe π
π DESCRIPTION π
so what she does is: this function will attempt to detect if the given values correspond to a valid CVT format. If so, then it will return true, and fmt will be filled in with the found CVT timings. π
like, she's doing a vibe check on your numbers, and if they pass? true, and fmt gets the whole look. iconic behavior honestly β
the function only attempts the detect β valid CVT format in, true out. anything else and the answer is no. no guessing, no inventing timings, periodt π
π SEE ALSO π
we stay linking, fr fr:
Kernel file ./include/media/v4l2-dv-timings.h, plus these lovely little functions:
v4l2_calc_timeperframe(9)v4l2_check_dv_timings_fnc(9)v4l2_valid_dv_timings(9)v4l2_enum_dv_timings_cap(9)v4l2_find_dv_timings_cap(9)v4l2_find_dv_timings_cea861_vic(9)v4l2_match_dv_timings(9)v4l2_print_dv_timings(9)v4l2_detect_gtf(9)v4l2_calc_aspect_ratio(9)v4l2_dv_timings_aspect_ratio(9)can_reduce_fps(9)struct v4l2_hdmi_colorimetry(9)
okay that's the whole page!! this one came out of ./include/media and it's dated October 2026 β so yeah, mark your calendar and stan the CVT standard ππ¦π
π¦ 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