pipeline: raspberrypi: Return all ISP resolutions from generateConfiguration()
The libcamerasrc gstreamer component does seem to not allow stream resolutions
that are not advertised by PipelineHandler::generateConfiguration(). This has
been raised in a bug report [1].
Fix this behavior by advertising a SizeRange from the minimum ISP resolution, up
to the sensor resolution from PipelineHandlerRPi::generateConfiguration().
[1] https://bugs.libcamera.org/show_bug.cgi?id=105
Fixes: f16acb275c
("pipeline: raspberrypi: Restrict the advertised maximum ISP output resolution")
Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
Reviewed-by: David Plowman <david.plowman@raspberrypi.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
parent
b2290573c0
commit
7b84a17e21
1 changed files with 5 additions and 2 deletions
|
@ -653,8 +653,11 @@ CameraConfiguration *PipelineHandlerRPi::generateConfiguration(Camera *camera,
|
||||||
*/
|
*/
|
||||||
for (const auto &format : fmts) {
|
for (const auto &format : fmts) {
|
||||||
PixelFormat pf = format.first.toPixelFormat();
|
PixelFormat pf = format.first.toPixelFormat();
|
||||||
if (pf.isValid())
|
if (pf.isValid()) {
|
||||||
deviceFormats[pf].emplace_back(sensorSize);
|
const SizeRange &ispSizes = format.second[0];
|
||||||
|
deviceFormats[pf].emplace_back(ispSizes.min, sensorSize,
|
||||||
|
ispSizes.hStep, ispSizes.vStep);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue