[ros-users] rosbag playback speed

Blaise Gassend blaise at willowgarage.com
Fri Jul 30 16:15:49 UTC 2010


As far as I know, rosbag can only rely on message arrival times when it
records a data stream. At 500 Hz, your messages are being sent at a rate
that is fast compared with Linux's scheduling granularity, so on a
loaded system, I would not expect rosbag to necessarily be scheduled
each time it receives a message. Hence it will receive the messages in
clumps, and during replay, messages will be played back in clumps. You
can verify whether this is the case by looking at the timestamps in the
bag. I think rxbag should allow you to view the timestamps graphically.
The python bag API should allow you to view the timestamps directly.

You might be able to improve things by puting rosbag on one of the
"realtime" queues using schedtool.

You can also see the scheduling happening using the kernel ftrace
mechanism.

On Fri, 2010-07-30 at 14:02 +0200, Daniel Grollman wrote:
> Hello,
> 
> 	I've noticed some odd behavior with rosbag.  I'm generating data at
> 500hz, and recording a bag.  However, when playing back the bag, only a
> fraction of the messages reach my callback.  I believe that rosbag is
> 'bursting' the messages, i.e., sporadically sending them at much faster
> than 500 Hz, so they are then getting lost as my queue size is only 1
> (which is what I want).
> 
> I'm running ros 1.0.4, and ubuntu 9.10.  I've put together a little demo
> of this issue, code is here:
> 
> http://lasa.epfl.ch/~dang/rosbag_test.tar.gz
> 
> Thank you,
> 
> Dan Grollman
> EPFL
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users





More information about the ros-users mailing list