Hi guys!
I want to display video from a v4l2 device. I could make it work with DMA buffers and SDL with hardware acceleration enabled.
Works fine, fast enough for my use case but I need a GUI with this video display and SDL isn't really good at that.
So I moved to gtk + gstreamer (with appsrc as input for dma buffers) but I'm not sure how to make it zero-copy + use gpu for rendering. If I use glimagesink or gtkglsink, it seems that it's mandatory to use glupload in the pipeline, which looks like an unnecessary copy.
So my question is : is there any zero-copy way of displaying v4l2 buffers in gtk or any GUI suitable lib ? Any ressources to share ?
I want to display video from a v4l2 device. I could make it work with DMA buffers and SDL with hardware acceleration enabled.
Works fine, fast enough for my use case but I need a GUI with this video display and SDL isn't really good at that.
So I moved to gtk + gstreamer (with appsrc as input for dma buffers) but I'm not sure how to make it zero-copy + use gpu for rendering. If I use glimagesink or gtkglsink, it seems that it's mandatory to use glupload in the pipeline, which looks like an unnecessary copy.
So my question is : is there any zero-copy way of displaying v4l2 buffers in gtk or any GUI suitable lib ? Any ressources to share ?
Statistics: Posted by f_cam — Wed Jul 16, 2025 1:10 pm