BrettRD / ros-gst-bridge

a bidirectional ros to gstreamer bridge and utilities for dynamic pipelines
Other
129 stars 30 forks source link

allow ros2 timestamps to be overridden #15

Closed BrettRD closed 3 years ago

BrettRD commented 3 years ago

This adds a ros-start-time element property to all elements Following https://github.com/BrettRD/ros-gst-bridge/issues/13, this allows a gstreamer prop to specify the ros2 time a stream's timestamps should start at.

At the moment, it is only writable before stream start, and only via launch description. The ros-start-time element property should be readable at runtime via Simplebin automatic prop-param bindings. This readable value is the start time used to timestamp the running stream, and can be used to re-play a stream with approximately original time stamps.

This does not offer compatibility with the /clock topic, and does not respect use_sim_time When rosbag stabilises, this feature might need to change significantly

Another pull request should offer a ros clock server based on the pipeline time

clydemcqueen commented 3 years ago

LGTM. I look forward to trying this w/ real data early next week.

clydemcqueen commented 3 years ago

I ran a few quick tests, and it works as advertised. Looks good!

FYI there's a warning in unrelated code:

.../ros-gst-bridge/gst_bridge/src/rosimagesink.cpp:299:22: warning: ‘depth’ may be used uninitialized in this function [-Wmaybe-uninitialized]