diff --git a/internal/rpicamera/exe/camera.cpp b/internal/rpicamera/exe/camera.cpp index 2aa22e7c..d022f9bf 100644 --- a/internal/rpicamera/exe/camera.cpp +++ b/internal/rpicamera/exe/camera.cpp @@ -85,6 +85,9 @@ static int get_v4l2_colorspace(std::optional const &cs) { } bool camera_create(parameters_t *params, camera_frame_cb frame_cb, camera_t **cam) { + // We make sure to set the environment variable before libcamera init + setenv("LIBCAMERA_RPI_TUNING_FILE", params->tuning_file, 1); + std::unique_ptr camp = std::make_unique(); camp->camera_manager = std::make_unique(); @@ -109,8 +112,6 @@ bool camera_create(parameters_t *params, camera_frame_cb frame_cb, camera_t **ca return false; } - setenv("LIBCAMERA_RPI_TUNING_FILE", params->tuning_file, 1); - ret = camp->camera->acquire(); if (ret != 0) { set_error("Camera.acquire() failed");