我想在Linux中不使用v4l2驱动程序来实现用于视频流的gstreamer管道。关键是我已经将视频帧保存在RAM中(由不同内核上的不同OS配置的vdma内核负责此工作)。而且,我在调试某些DMA从属错误时遇到了困难,这些错误总是在dma完成回调之后出现。
因此,如果我不必使用v4l2驱动程序以将gstreamer放在顶部,我会很高兴。
我从Bosch找到了适合我情况的插件: https://github.com/igel-oss/v4l-gst
我的问题是,是否有人对此方法有经验,是否可行?
另一个问题是如何在gstreamer管道中配置源,因为它不是设备/ dev / videoxxx,而是内存位置甚至是bmp文件。
谢谢,三好田
答案 0 :(得分:0)
您可以使用appsrc并反复呼叫gst_app_src_push_buffer ()。您的应用程序将可以自由地从喜欢的任何地方读取视频数据-内存,文件等。另请参见relevant section of the GStreamer Application Development Manual。
如果您想要更大的灵活性,例如在多个应用程序中使用视频源,则应考虑使用implementing your own custom GStreamer element。