GStreamer Buffer Synchronization: Basics and foundation - Applications

From RidgeRun Developer Wiki
Previous: Basics and foundation/Introduction Index Next: Getting Started





GStreamer Buffer Synchronization Applications

The GStreamer Buffer Synchronization consists of a library and a GStreamer plug-in for synchronizing sensors:

Library

The Buffer Synchronization library is a sensor-agnostic framework to synchronize multiple sensor data. Within the sensor data, it is possible to synchronize accelerometer, gyroscope, camera, radar, and lidar data.

The library is written in C++17, allowing easy integration with the most common frameworks, such as GStreamer, NVIDIA Holoscan, and other custom applications compatible and linkable with C++.

Some of the features of the library:

  • Same-rate sensor synchronization
  • C++ integrable
  • Lightweight
  • No additional dependencies needed.
  • Different-rate sensor synchronization (coming soon)
  • Modes:
    • Nearest neighbors (closest to time)
    • Interpolation / data generation (coming soon)

GStreamer Element

The Buffer Synchronization library has been extended to support GStreamer as a plug-in to provide support for isochronous sensor synchronization (same data rate). It has the following features:

  • Queue limit: limit how many buffers to store
  • Modes: same as the library
  • Multi-pad: similar to GStreamer's multiqueue
  • Latency and proper clock handling
  • Compatible with most memory types (NVMM and system memory)

Applications

The Buffer Synchronization Library can be used in the following applications, not limited to:

To know more, start by clicking below:




Previous: Basics and foundation/Introduction Index Next: Getting Started