diff --git a/src/cam/capture.cpp b/src/cam/capture.cpp
index b62a9b24b2169b05..55fa2dabcee97f21 100644
--- a/src/cam/capture.cpp
+++ b/src/cam/capture.cpp
@@ -30,18 +30,18 @@ int Capture::run(EventLoop *loop, const OptionsParser::Options &options)
 		return -ENODEV;
 	}
 
+	ret = camera_->configure(config_);
+	if (ret < 0) {
+		std::cout << "Failed to configure camera" << std::endl;
+		return ret;
+	}
+
 	streamName_.clear();
 	for (unsigned int index = 0; index < config_->size(); ++index) {
 		StreamConfiguration &cfg = config_->at(index);
 		streamName_[cfg.stream()] = "stream" + std::to_string(index);
 	}
 
-	ret = camera_->configure(config_);
-	if (ret < 0) {
-		std::cout << "Failed to configure camera" << std::endl;
-		return ret;
-	}
-
 	camera_->requestCompleted.connect(this, &Capture::requestComplete);
 
 	if (options.isSet(OptFile)) {
