DriveWorks SDK Reference
3.0.4260 Release
For Test and Development only

/dvs/git/dirty/gitlab-master_av/dw/sdk/tools/recorder/apps/recorder-tui/README-recorder-tui.md
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2019-2020, NVIDIA CORPORATION. All rights reserved.
3  *
4  * NVIDIA Corporation and its licensors retain all intellectual property
5  * and proprietary rights in and to this software, related documentation
6  * and any modifications thereto. Any use, reproduction, disclosure or
7  * distribution of this software and related documentation without an express
8  * license agreement from NVIDIA Corporation is strictly prohibited.
9  */
10 
11 @page dwx_recorder_textui_tool TextUI Recording Tool
12 
13 @note This tool is available in both **NVIDIA DriveWorks** and **NVIDIA DRIVE Software** releases.
14 
15 This tool is available on the x86 Host System and NVIDIA DRIVE<sup>&trade;</sup> OS Linux.
16 
17 This is a front-end for the @ref dwx_recorder_tool, and provides the following additional
18 features:
19 
20 1. @ref tui_auto_storage_selection
21 2. @ref tui_manual_storage_selection
22 3. @ref tui_sensor_statistics
23 4. @ref tui_multissd_recording
24 5. @ref tui_distributed_recording
25 6. @ref black_box_recorder
26 
27 @section tui_starting Starting the Recording Application
28 
29 Run this tool by executing:
30 
31  cd /usr/local/driveworks/tools/capture
32  ./recorder-tui <rig file> OR <rig_directory> [--bbr]
33 
34  `bbr` starts the recorder in black box recording (bbr) mode.
35 
36 After initialization, the tool supports the following commands:
37 
38 | Command | Action |
39 | -------------------- | --------------------------|
40 | `s <Enter>` | toggle recording |
41 | `q <Enter>` | quit |
42 | `start <Enter>` | start recording |
43 | `stop <Enter>` | stop recording |
44 | `bbr <Enter>` | bbr recording mode |
45 | `continuous <Enter>` | continuous recording mode |
46 | `h264 <Enter>` | record camera in h264 |
47 | `lraw <Enter>` | record camera in lraw |
48 
49 `bbr`, `continuous`, `h264` and `lraw` switch is supported only when the recorder is in stopped state.
50 
51 @section tui_user_interface User Interface
52 
53 The textual interface of the tool is illustrated in the screenshot below:
54 
55 1. @ref tui_sensor_statistics
56 2. Last error/output message
57 
58 ![Recording Tool - TextUI Interface](tool_tui_recorder.png)
59 
60 @section tui_auto_storage_selection Automatic Storage Selection
61 
62 This tool can discover SSD/eSATA disks that are mounted on the target and
63 meet the following criteria:
64 
65 1. `ext4` filesystem format
66 2. `> 5GB` free space available
67 3. visible in `/proc/mounts`
68 4. Mountpoint does not contain any spaces or non-standard characters
69 
70 This tool automatically selects the first available disk for recording.
71 Once a disk becomes full (free space < 5GB), output files will be put into the
72 next available disk automatically.
73 
74 @section tui_manual_storage_selection Manual Storage Selection
75 
76 If automatic disk selection is not convenient, one can manually specify
77 the recording directory in the rig configuration file using the "recorder_storage_paths":
78 
79  {
80  "rig": {
81  "recorder_storage_map": {
82  "<sensor_name_1>": "1",
83  "<sensor_name_2>": "0",
84  "<sensor_name_3>": "0",
85  <...>
86  },
87 
88  "recorder_storage_paths": [
89  "<your_storage_path_1>",
90  "<your_storage_path_2>",
91  <...>
92  ],
93  <...>
94  },
95  <...>
96  }
97 
98 "recorder_storage_map" is used to map the sensor to the index of "recorder_storage_paths" list. Example: "sensor_name_1"
99 is mapped to index "1" which is "your_storage_path_2". If the sensor map is not provided, then the default value of
100 the storage index "0" will be selected.
101 
102 @note The manually specified mountpoint must still be on an `ext4` filesystem
103 and have `> 5GB` in free space.
104 
105 @section tui_sensor_statistics Sensor Throughput Statistics
106 
107 This tool measures sensor statistics (at disk sink).
108 1. Data throughput per sensor
109 2. Data written per sensor
110 3. Data written for current recording on current sink
111 
112 @section tui_multissd_recording Multi-SSD Recording
113 
114 The @ref tui_manual_storage_selection feature can be used to perform multi-SSD
115 recording on a single Xavier device.
116 
117 To achieve this, a user must create multiple rig files, each with
118 their specified storage path and subset of sensors, and place them
119 inside a `<rig_directory>`.
120 
121 The tool can then be launched as below:
122 
123  ./recorder-tui <rig_directory> --bbr
124 
125 @section black_box_recorder Black Box Recorder (BBR)
126 
127 Black Box Recorder (BBR) records sensor data clips around a vehicle disengagement trigger event.
128 BBR automatically deletes the recording folders of current recording session expect the last three.
129 If a lateral or longitudinal disengagement occurs, BBR preserves the 30 seconds before and after the
130 point of disengagement. The disengagement folder will have two or three recording folders depending
131 on the exact time of the disengagement. BBR internally uses recorder-tui, so the recording data format
132 and directory structure will be identical to the normal recording case.
133 
134 @note BBR relies on Dataspeed CAN messages to find the disengagement triggers.
135 
136 @section tui_distributed_recording Distributed Recording
137 
138 See @ref dwx_devguide_rec_distrec
139 
140 @section tui_configuring Configuring the Recorder
141 
142 See @ref dwx_config_ref
143 
144 @section Session Recording Tags
145 
146 When using recorder-tui to record a session, it can be useful to be able to tag these sessions.
147 With recorder-tui you can pass in `--tag <tag-name>` to set a tag for the recorded session which
148 will appear in the aux_info file. The valid values for this tag will need to be specified under the
149 `tags.txt` file which should appear under your configuration directory that you pass to recorder-tui.