ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Get camera Frame from libmodal pipe client

    Modal Pipe Architecture (MPA)
    2
    5
    587
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Philemon BennerP
      Philemon Benner
      last edited by

      Hey,
      i'm currently working on getting frames from libmodal pipe. I've looked up the examples of modal pipe, also had a look at voxl-streamer but didn't understood too much. Regarding too the struct of the pipe_client_set_camera_helper_cb in modal_pipe_client.h (l.322-355), is there any way to get the actual frame from that? I'm unfortunately not familiar with buffers and how they work. In voxl streamer the context is being used but in the header file only channel, metadata, and the frame beginning pointer? are being mentioned. Is the context the actual frame?

      1 Reply Last reply Reply Quote 0
      • Steve TurnerS
        Steve Turner
        last edited by

        Check out https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-streamer/-/blob/master/src/main.c#L87 for an example of how to handle the callback.

        Philemon BennerP 1 Reply Last reply Reply Quote 0
        • Philemon BennerP
          Philemon Benner @Steve Turner
          last edited by

          @Darkhive that's what i've mentioned above in the post. I don't have a clear understanding of how voxl-streamer camera_cb works and i don't want to use gstreamer to get the actual frame.

          1 Reply Last reply Reply Quote 0
          • Philemon BennerP
            Philemon Benner
            last edited by

            Would something like that work?

            char* buffer[meta.size_bytes];
            memcpy(buffer, frame, meta.size_bytes);
            
            1 Reply Last reply Reply Quote 0
            • Steve TurnerS
              Steve Turner
              last edited by

              https://gitlab.com/voxl-public/voxl-sdk/services/voxl-portal/-/blob/master/src/video_manager.cpp#L77

              Is an example of allocating a buffer and copying the frame into it. There are some other good examples in that file as well for processing frames and converting them to various formats within the callback. Hope that helps!

              1 Reply Last reply Reply Quote 1
              • First post
                Last post
              Powered by NodeBB | Contributors