1.20.2. Record Server¶
The rsb recordserver consists of an rsbag record
process that stores component
communication data from all scopes in the apartment (with some Exceptions).
As a base component, the server is running 24/7 and awaits recording commands. Its main purpose is to start recording whenever it is needed. Currently, the recording is triggered only by the Automatic Recording component but in principle it can also be used to record study data for example.
Warning
Currently (with rsb <0.13), the record server crashes after a certain amount of events. Make sure to restart it from time to time.
1.20.2.2. Interfaces¶
The component can be controlled via method invokation only. Recording can be started (and stopped/resumed multiple times) after a file has been successfully opened. If the recording has been stopped, the file should be closed again.
Scope (Local Server) + Method | Argument Type | Return Type |
---|---|---|
/logger/rsbag/all/open() |
String: filename | void |
/logger/rsbag/all/start() |
void | void |
/logger/rsbag/all/isstarted() |
void | bool: recording? |
/logger/rsbag/all/stop() |
void | void |
/logger/rsbag/all/close() |
void | void |
1.20.2.3. Exceptions¶
Not recorded are raw audio and video packets. Apart from most raw video data being excluded from the main spread ring (see e.g. Hookah, RGBD Grabber) and therefore not reorded, a filter is applied additionally. In particular, it consists of the following scopes:
'and :children #.(list (rsb.filter:filter (quote (:and
((:not (:scope :scope "/citec/csra/home/kitchen/video")))
((:not (:scope :scope "/citec/csra/home/hallway/entrance/video")))
((:not (:scope :scope "/citec/csra/home/kitchen/assistance/asc7/audio/in")))
((:not (:scope :scope "/citec/csra/home/living/lounge/asc9/audio/in/default")))
((:not (:scope :scope "/citec/csra/home/hallway/entrance/asc10/audio/in/default")))
))))'
1.20.2.4. Examples¶
Record a temporary file:
tools0.12 call '/logger/rsbag/all/open("/tmp/tmprecord.tide")'
tools0.12 call '/logger/rsbag/all/start()'
# actions that you want to record
tools0.12 call '/logger/rsbag/all/stop()'
tools0.12 call '/logger/rsbag/all/close()'