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

    Build voxl-uvc-server with voxl-cross

    Modal Pipe Architecture (MPA)
    2
    26
    1853
    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 @Eric Katzfey
      last edited by

      @Eric-Katzfey Ok so i got working now but i am having issues with the Format. So when using UVC Server i got the response that frame format succeed on index 2. In your voxl-uvc-server code at the Top Frame Format 2 should be:

      static enum uvc_frame_format supported_frame_format[NUM_SUPPORTED_FRAME_FORMATS] =
           {UVC_FRAME_FORMAT_YUYV, UVC_FRAME_FORMAT_UYVY, UVC_FRAME_FORMAT_NV12};
      static int supported_mpa_frame_format[NUM_SUPPORTED_FRAME_FORMATS] =
           {IMAGE_FORMAT_YUV422, IMAGE_FORMAT_YUV422_UYVY, IMAGE_FORMAT_NV12};
      

      supported mpa_frame_format = IMAGE_FORMAT_NV12 = 1 // regarding to https://gitlab.com/voxl-public/modal-pipe-architecture/libmodal_pipe/-/blob/master/library/include/modal_pipe_interfaces.h
      frame_format supported_frame_format = FRAME_FORMAT_NV12 = 17

      But still i am getting a real weird looking image(wrong colors) voxl-portal. Are the Configurations right that i use, or is it something else? Can't upload any pictures rn becuase of some server error.

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

        Ok so apparrently the Frame format stuff is alright when directly writing the frame from the callback to the pipe server. I think it's some fault in the code. One Question why are you using c instead of c++? I'm not an expert at c/c++ stuff but i was told that c++ is generally faster than c.

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

          Ok i got it working now.
          @Eric-Katzfey i don't know anything of the qrb thing but in the dev libuvc branch, if you build it in 64-Bit version, why is it then copied in the 32-Bit dir in your make_package.sh L:87-89:

          sudo mkdir -p $DATA_DIR/usr/lib
          sudo cp build/libuvc.so.0.0.6 $DATA_DIR/usr/lib
          sudo cp build/libuvc.a $DATA_DIR/usr/lib
          

          an if else would be nice.

          sudo mkdir -p $DATA_DIR/usr/lib64
          sudo cp build/libuvc.so.0.0.6 $DATA_DIR/usr/lib64
          sudo cp build/libuvc.a $DATA_DIR/usr/lib64
          

          also had to add:

          sudo cp /usr/lib/aarch64-linux-gnu/libjpeg.so.8 $DATA_DIR/usr/lib64
          sudo cp /usr/lib/aarch64-linux-gnu/libjpeg.so.8.1.2 $DATA_DIR/usr/lib64
          

          to make it work on voxl because voxl doesn't have it installed by default.

          Eric KatzfeyE 1 Reply Last reply Reply Quote 0
          • Eric KatzfeyE
            Eric Katzfey ModalAI Team @Philemon Benner
            last edited by

            @Philemon-Benner I'm not sure where those lines of code came from. The file make_package.sh in the dev branch has this for lines 87-89:

            	sudo mkdir -p $DATA_DIR/usr/lib
            	sudo cp $BUILD_TYPE/libuvc.so.0.0.6 $DATA_DIR/usr/lib
            	sudo cp $BUILD_TYPE/libuvc.a $DATA_DIR/usr/lib
            

            Where BUILD_TYPE will be either build32 or build64. It looks like you are taking from lines 65-66 on the master branch.

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

              @Eric-Katzfey yeah that was mb it's the one from the dev branch, but still even if i'ts 64-Bit, files are copied to 32-Bit lib:

              sudo mkdir -p $DATA_DIR/usr/lib
              

              instead of:

              sudo mkdir -p $DATA_DIR/usr/lib64
              

              for 64-Bit. Correct me if i'm wrong.

              Eric KatzfeyE 1 Reply Last reply Reply Quote 0
              • Eric KatzfeyE
                Eric Katzfey ModalAI Team @Philemon Benner
                last edited by

                @Philemon-Benner Our qrb5165 based platforms put 64 bit libraries into /usr/lib. On Voxl the 64 bit libraries go into /usr/lib64. So the 64 bit support is specifically for our qrb5165 based platforms (e.g. RB5 Flight).

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