diff options
author | Nicolas Dufresne <nicolas.dufresne@collabora.com> | 2020-01-24 13:27:04 -0500 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2020-03-07 01:57:45 +0200 |
commit | 2575b4916031d83bd777001c4b160e3a5c9008f9 (patch) | |
tree | 26757d782f1bc6c30dea74d716a7ea57a8cffb23 /src/gstreamer/gstlibcamera-utils.cpp | |
parent | bd0c2df110f502afe3c868309a1ca81ad6dc3196 (diff) |
gst: libcamerasrc: Implement minimal caps negotiation
This is not expected to work in every possible cases, but should be sufficient as
an initial implementation. What it does is that it turns the StreamFormats into
caps and queries downstream caps with that as a filter.
The result is the subset of caps that can be used. We then keep the first
structure in that result and fixate using the default values found in
StreamConfiguration as a default in case a range is available.
We then validate this configuration and turn the potentially modified
configuration into caps that we push downstream. Note that we trust the order
in StreamFormats as being sorted best first, but this is not currently in
libcamera. A todo has been added in the head of this file as a reminder to fix
that in the core.
Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'src/gstreamer/gstlibcamera-utils.cpp')
0 files changed, 0 insertions, 0 deletions