libcamera: pipeline: ipu3: Use new Size grownBy() and shrunkBy() helpers
The Size class has new helpers that can simplify the code in the IPU3 pipeline handler. Use them. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
This commit is contained in:
parent
e229b35edf
commit
ca5fb99409
1 changed files with 11 additions and 14 deletions
|
@ -438,11 +438,10 @@ CameraConfiguration *PipelineHandlerIPU3::generateConfiguration(Camera *camera,
|
|||
* \todo Clarify the alignment constraints as explained
|
||||
* in validate()
|
||||
*/
|
||||
size = sensorResolution.boundedTo(IMGU_OUTPUT_MAX_SIZE);
|
||||
size.width = utils::alignDown(size.width - 1,
|
||||
IMGU_OUTPUT_WIDTH_MARGIN);
|
||||
size.height = utils::alignDown(size.height - 1,
|
||||
IMGU_OUTPUT_HEIGHT_MARGIN);
|
||||
size = sensorResolution.boundedTo(IMGU_OUTPUT_MAX_SIZE)
|
||||
.shrunkBy({ 1, 1 })
|
||||
.alignedDownTo(IMGU_OUTPUT_WIDTH_MARGIN,
|
||||
IMGU_OUTPUT_HEIGHT_MARGIN);
|
||||
pixelFormat = formats::NV12;
|
||||
bufferCount = IPU3_BUFFER_COUNT;
|
||||
streamFormats[pixelFormat] = { { IMGU_OUTPUT_MIN_SIZE, size } };
|
||||
|
@ -996,20 +995,18 @@ int PipelineHandlerIPU3::initControls(IPU3CameraData *data)
|
|||
*/
|
||||
|
||||
/* The strictly smaller size than the sensor resolution, aligned to margins. */
|
||||
Size minSize = Size(sensor->resolution().width - 1,
|
||||
sensor->resolution().height - 1)
|
||||
.alignedDownTo(IMGU_OUTPUT_WIDTH_MARGIN,
|
||||
IMGU_OUTPUT_HEIGHT_MARGIN);
|
||||
Size minSize = sensor->resolution().shrunkBy({ 1, 1 })
|
||||
.alignedDownTo(IMGU_OUTPUT_WIDTH_MARGIN,
|
||||
IMGU_OUTPUT_HEIGHT_MARGIN);
|
||||
|
||||
/*
|
||||
* Either the smallest margin-aligned size larger than the viewfinder
|
||||
* size or the adjusted sensor resolution.
|
||||
*/
|
||||
minSize = Size(IPU3ViewfinderSize.width + 1,
|
||||
IPU3ViewfinderSize.height + 1)
|
||||
.alignedUpTo(IMGU_OUTPUT_WIDTH_MARGIN,
|
||||
IMGU_OUTPUT_HEIGHT_MARGIN)
|
||||
.boundedTo(minSize);
|
||||
minSize = IPU3ViewfinderSize.grownBy({ 1, 1 })
|
||||
.alignedUpTo(IMGU_OUTPUT_WIDTH_MARGIN,
|
||||
IMGU_OUTPUT_HEIGHT_MARGIN)
|
||||
.boundedTo(minSize);
|
||||
|
||||
/*
|
||||
* Re-scale in the sensor's native coordinates. Report (0,0) as
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue