Re: [ros-users] rosbag playback speed

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Blaise Gassend
Date:  
To: ros-users
Subject: Re: [ros-users] rosbag playback speed
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
>
> https://code.ros.org/mailman/listinfo/ros-users