I'm getting a delay when having several nodes subscribe to the same video topic.
I'm using the approximate time synchronizer, to collect several images from different cameras and then publish at once. While timing between cameras can be an issue, it's not here, there isn't a delay when I only have a single node subscribing.
camtop_sub = message_filters.Subscriber('cam1/usb_cam1/image_raw', Image)
camfront_sub = message_filters.Subscriber('cam2/usb_cam1/image_raw', Image)
ts_log = message_filters.ApproximateTimeSynchronizer([cam1_sub, cam2_sub], 10, 1)
ts_log.registerCallback(self.log_callback)
The way my project is structured, I need to be able to have multiple nodes retrieving the latest image file.
Any suggestions on how to accomplish this without the delay? It's about 500ms right now.
I've noticed others suggest increasing the buffer size of the queue via the buff_size parameter in rospy.Subscriber class, but there isn't this parameter for the ApproximateTimeSynchronizer