summaryrefslogtreecommitdiff
path: root/src/cam
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2019-04-28 16:42:12 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2019-05-23 00:27:13 +0300
commita40023e6cc005dfc57cc535167ee44761f3ed9f6 (patch)
tree7b666b223754855a7ea8a4e83e3df0bb9752bdfe /src/cam
parent2ca2d658700c57c3d734d72b2148436907152257 (diff)
libcamera: Use stream roles directly instead of StreamUsage
In order to prepare for an API overhall of the camera configuration generation, remove the StreamUsage class and replace its uses by stream roles. The size hints can't be specified anymore, and will be replaced with an API on the StreamConfiguration to negotiate configuration parameters with cameras. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Diffstat (limited to 'src/cam')
-rw-r--r--src/cam/main.cpp13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/cam/main.cpp b/src/cam/main.cpp
index 6a2508dd..d603228c 100644
--- a/src/cam/main.cpp
+++ b/src/cam/main.cpp
@@ -87,13 +87,13 @@ static int parseOptions(int argc, char *argv[])
static int prepareCameraConfig(CameraConfiguration *config)
{
- std::vector<StreamUsage> roles;
+ StreamRoles roles;
streamInfo.clear();
/* If no configuration is provided assume a single video stream. */
if (!options.isSet(OptStream)) {
- *config = camera->generateConfiguration({ Stream::VideoRecording() });
+ *config = camera->generateConfiguration({ StreamRole::VideoRecording });
streamInfo[config->front()] = "stream0";
return 0;
}
@@ -106,14 +106,13 @@ static int prepareCameraConfig(CameraConfiguration *config)
KeyValueParser::Options conf = value.toKeyValues();
if (!conf.isSet("role")) {
- roles.push_back(Stream::VideoRecording());
+ roles.push_back(StreamRole::VideoRecording);
} else if (conf["role"].toString() == "viewfinder") {
- roles.push_back(Stream::Viewfinder(conf["width"],
- conf["height"]));
+ roles.push_back(StreamRole::Viewfinder);
} else if (conf["role"].toString() == "video") {
- roles.push_back(Stream::VideoRecording());
+ roles.push_back(StreamRole::VideoRecording);
} else if (conf["role"].toString() == "still") {
- roles.push_back(Stream::StillCapture());
+ roles.push_back(StreamRole::StillCapture);
} else {
std::cerr << "Unknown stream role "
<< conf["role"].toString() << std::endl;