main: Remove raw video media types caps
[apps/camera-gstreamer.git] / app / main.cpp
index bc2bb26..95f5ae5 100644 (file)
@@ -16,6 +16,7 @@
 
 #include "utils.h"
 #include "xdg-shell-client-protocol.h"
+#include "AglShellGrpcClient.h"
 
 #include <gst/gst.h>
 
@@ -216,6 +217,7 @@ create_shm_buffer(struct display *display, struct buffer *buffer,
        buffer->height = height;
 
        fprintf(stdout, "Created shm buffer with width %d, height %d\n", width, height);
+
        return 0;
 }
 
@@ -571,6 +573,8 @@ create_window(struct display *display, int width, int height, const char *app_id
        window->display = display;
        window->width = width;
        window->height = height;
+       window->init_width = width;
+       window->init_height = height;
        window->surface = wl_compositor_create_surface(display->wl_compositor);
 
        if (display->wm_base) {
@@ -730,8 +734,7 @@ GstElement* create_pipeline(int* argc, char** argv[])
                fallback_gst_pipeline_tried = TRUE;
        }
        else {
-               snprintf(pipeline_str, sizeof(pipeline_str), "pipewiresrc ! video/x-raw,width=%d,height=%d ! waylandsink", width,
-                       height);
+               snprintf(pipeline_str, sizeof(pipeline_str), "pipewiresrc ! waylandsink");
        }
 
        fprintf(stdout, "Using pipeline: %s\n", pipeline_str);
@@ -756,6 +759,13 @@ int main(int argc, char* argv[])
        struct window* window;
        const char* app_id = "camera-gstreamer";
 
+       // for starting the application from the beginning, with a diffrent
+       // role we need to handle that creating the main window
+       if (argc >= 2 && strcmp(argv[1], "float") == 0) {
+               GrpcClient *client = new GrpcClient();
+               client->SetAppFloat(std::string(app_id), 30, 400);
+       }
+
        sa.sa_sigaction = signal_int;
        sigemptyset(&sa.sa_mask);
        sa.sa_flags = SA_RESETHAND | SA_SIGINFO;