如何在gstreamer中从源头请求更多缓冲区?

时间:2017-04-24 06:44:47

标签: gstreamer

我正在编写基于gstbasesink的gstreamer接收器,它将通过NTSC视频编码器包装fpga播放视频。我有自己的驱动程序,通过irq发送帧数据请求(基本上是vsync信号)。使用gstreamer插件接收器作为用户应用程序,它通过ioctl轮询帧数据请求。

vsync固定为30fps,所需数据是480x720大小的隔行扫描数据YUY2。

我使用的源是以60fps渐进式运行的videotestsrc。

我是gstreamer的初学者,我想做的是在vsync之间获得2个缓冲区,并在render()方法中交织它。并向设备发送一个完整的帧。

我对如何"问"一个vsync中2个缓冲区的源。

1 个答案:

答案 0 :(得分:0)

我觉得你做的工作超出了你的需要,但可能会创建一个自定义appsink并使用gst_app_sink_pull_sample

https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-appsink.html