dropped buffers after demuxer

Josef Sommerauer | viewpointsystem j.sommerauer at viewpointsystem.com
Tue Feb 26 15:07:52 UTC 2019


Hello Gstreamer community!

We are using gstreamer in our company to acquire 3 video streams from an custom made hardware.
This hardware consists out of 3 image sensors. 2 sensors have a relatively low resolution of 324*324 and one has an resolution of 1920*1080.
All images get via an fpga into a structure. this structure is transmitted via a usb 3.0 chip (fx3) to the pc.

If i read this frames with a small c tool, using libusb, i get exactly the desired frame rate of 25 frames per second. (all cameras a synchronist)

Now i want to feed this imagestream into gstreamer.
Therefor i have 2 gstreamer elements:

  *   source: hardware access with libusb, synchronisation and ensures that the frames are compete and valid.
  *   demuxer: splits the raw frames into 3 different source pads

In my testsetup i use fpsdisplaysink to determine the framerate.

If i start the pipeline i get ~25 fps for the smale cameras and 3-10 fps on the big camera, and a lot of drooped buffers :-)

If i operate the big camera with a resolution of 960*540 i don't have this problem.

In the source element i use "gst_base_src_set_format(GST_BASE_SRC(src), GST_FORMAT_TIME)" and in the demuxer i use
```
guint64 vid_duration = gst_util_uint64_scale_int (1, GST_SECOND, 25);
GST_BUFFER_PTS(xxx) = filter->vid_timestamp;
GST_BUFFER_DURATION (xxx) = vid_duration;
filter->vid_timestamp += vid_duration;
```

Anyone a idea why this happens?

Cheers,
Josef
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20190226/ecfe379b/attachment.html>


More information about the gstreamer-devel mailing list