I'm trying to make a UI-3370CP-C-HQ R2 Camera work on a Coral DevBoard with gstreamer.
Since the camera is no standard v4l2 camera, I downloaded and compiled the ueyesrc
gst plugin (https://github.com/atdgroup/gst-plugin-ueye) on the devboard.
In my application I need to have the frame as opengl textures and I'm stuck at building a working pipeline.
So far the only way I managed to get something from the camera is to save a frame as jpeg:
gst-launch-1.0 tee ueyesrc num-buffers=10 ! jpegenc ! filesinklocation=ueyesrc-frame.jpg
The pipeline example provided with ueyesrc gst-launch-1.0 ueyesrc ! videoconvert ! xvimagesink
doesn't work in my case because there is no X-Server on the device (but Wayland)
gst-launch-1.0 ueyesrc ! videoconvert ! glimagesink
returns the following error:
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Got context from element 'sink': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayWayland\)\ gldisplaywayland0";
Setting pipeline to PLAYING ...
New clock: GstSystemClock
ERROR: from element /GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLImageSink:sink: Failed to convert multiview video buffer
Additional debug info:
gstglimagesink.c(1741): gst_glimage_sink_prepare (): /GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLImageSink:sink
Execution ended after 0:00:00.486558117
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Freeing pipeline ...
With a standard USB webcam (Logitech HD Pro Webcam C920), gst-launch-1.0 v4l2src ! videoconvert ! glimagesink
works fine.
I don't really understand what is going wrong or how to find more clues about it, I suppose I'm missing a conversion step in the middle but I don't know how to fix it. Does someone have an idea?
edit 1: it is indeed a conversion issue. I got it to work by specifying the format in the videoconvert
caps: gst-launch-1.0 ueyesrc exposure=2 ! videoconvert ! video/x-raw,format=YUY2 ! glimagesink sync=False
Although the CPU usage is super high (>90% on all 4 cores of the iMx8) and the framerate reach a max of 6.5 fps.