YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
yarpdataplayer: replay recorded data

A module that reproduces in a synchronized way, previously acquired data (using yarpdatadumper: the YARP data recorder) from a source of input. More...

+ Collaboration diagram for yarpdataplayer: replay recorded data:

Modules

 yarpdataplayer example application
 Re-play a recorded sequence from the robot.
 
 yarpdataplayer recording example
 Record a sequence of data from all sensors of the robot.
 

Detailed Description

A module that reproduces in a synchronized way, previously acquired data (using yarpdatadumper: the YARP data recorder) from a source of input.

Description

This module provides the user a simple but informative user-interface in order to manipulate the previously acquired data. When playing it uses the timestamps provided from the time of acquisition to synchronize the sending of the data as if the robot was present.

Libraries

Running

yarpdataplayer can run with or without the GUI (for server use and commands are sent via the rpc port) For gui run normally yarpdataplayer. Without GUI run with the extra parameter hidden:

  yarpdataplayer --hidden

yarpdatadumper file example

yarpdatadumper data.log file example:

  9566    1324373535.040288   -2.32967 0.043956 1.450549 -0.56044 1.704894 4.136408
  etc...

yarpdatadumper info.log file example:

  Type: Bottle;
  [1324373535.040288] /foo/state:o [connected]
  etc...

Type: is used to identify what kind of data the player is required to send.

The names of the ports open up by the player are initially set up based on the content of info.log file. This can be then changed using the GUI.

Parameters

--hidden
--withExtraTimeCol index
--name modName

Ports Interface

The interface to this module is implemented through dataSetPlayer_IDL.

Input Data Files

The player will look, in a recursive way, into directories in order to create the parts needed and retrieve the data.

The data name is the default yarpdatadumper names: data.log and info.log.

An example directory tree containing data (data.log+info.log) can be:

/experiment1/
/head/data.log;info.log
/torso/data.log;info.log;
/images/leftCamera/data.log;info.log
/images/rightCamera/data.log;info.log
/left_leg/data.log;info.log
/right_leg/data.log;info.log

If the directory indicated is either experiment1 or within experiment, the player will successfully load all required data.

The parts name will be taken from each subdirectory of the /experiment1 forder.

Note
Currently, if the directory selected is (in this example) head, torso etc, the player will not load the files as it will not be able to find subdirs.
Todo:
  • main slider bar selection. This needs an on-click and on-release event in order not to interfere with update and playback
  • when the search for a directory has not provided anything (user selected directory containing only *.log files)
See also
yarpdatadumper: the YARP data recorder
yarpdataplayer example application
yarpdataplayer recording example