Mihaita
Mihaita

Reputation: 21

running gstreamer app without v4l2 driver

I would like to implement a gstreamer pipeline for video streaming without using a v4l2 driver in Linux. The thing is that the video frames I have them already in the RAM(the vdma core which is configured by a different OS on a different core takes care of that) . And also I had difficulties debugging some DMA slave errors which appeared always after a dma completion callback.

Therefore I would be happy if I would not have to use v4l2 driver in order to have gstreamer on top.

I have found this plugin from Bosch that fits my case: https://github.com/igel-oss/v4l-gst

My question would be if somebody has experience with this approach and if is a feasible one?

Other question would be how to configure the source in the gstreamer pipeline as it is not a device /dev/videoxxx but rather a memory location or even a bmp file.

Thanks, Mihaita

Upvotes: 1

Views: 397

Answers (1)

micha137
micha137

Reputation: 1305

You could use appsrc and repeatedly call gst_app_src_push_buffer (). Your application will have all freedom to read the video data from anywhere it likes - memory, files etc. See also the relevant section of the GStreamer Application Development Manual.

If you want more flexibility, like using the video source in several applications, you should consider implementing your own custom GStreamer element.

Upvotes: 1

Related Questions