eCAL Measurement Cutter
eCAL Measurement Cutter#
To learn more about the measurement format used by eCAL please check out the eCAL Measurement Format chapter.
eCAL Measurement Cutter is a Command Line Application used to manipulate eCAL measurements.
The executable is
It can trim measurements by time, exclude / include channels, modify base file names and split the measurement files by size.
eCAL Measurement Cutter is available since eCAL 5.11.
USAGE: ecal_meas_cutter.exe [-s] [-q] -o <string> ... -i <string> ... -c <string> [--] [--version] [-h] Where: --enable-one-file-per-topic Whether to separate each topic in single HDF5 file. -s, --save_log Enables log file creation in a folder called "log" next to the executable. -q, --quiet Disables logging to console output. -o <string>, --output <string> (accepted multiple times) (required) Path of the output measurement (Tip: one input measurement has to have a corresponding output). -i <string>, --input <string> (accepted multiple times) (required) Path of the input measurement (Tip: one input measurement has to have a corresponding output). -c <string>, --config <string> (required) Path to the configuration file that contains operations to be done on the measurements. --, --ignore_rest Ignores the rest of the labeled arguments following this flag. --version Displays version information and exits. -h, --help Displays usage information and exits. eCAL Measurement Cutter
Now let’s take them one by one and explain.
1. Input path (
The path to the measurement that we want to process. It can also be a path pointing to an
Since the application can alter multiple measurements simultaneously, this argument can be given multiple times. But it also needs a matching number of output paths.
-i measurement_1 -o output_measurement_1 -i measurement_2 -o output_measurement_2
2. Output path (
The path where the converted measurement will be saved.
The application will create a folder called
MEASUREMENT_CONVERTER in the output path.
If the folder already exists, it is important for it to be empty, otherwise the application will not continue.
3. Configuration file (
1basename: measurement 2splitsize: 1024 3 4trim: 5 start: 6 time: 10 7 base: start 8 scale: s 9 10 end: 11 time: 20 12 base: start 13 scale: s 14 15exclude: 16 - re : .*Image.* 17 - re : .*V2X.* 18 - TrafficParticipantListPb
What will be the result by using this configuration file?
We will have a measurement with base file name
measurement with a maximum size of 1024 MB per file.
It will have a duration of 10 seconds, from second 10 of the original measurement to second 20, excluding at the same time any channel containg the characters sequence
V2X, and the channel
TrafficParticipantListPb, if they exist in the measurement.
basename : the base name of the
splitsize : maximum size of the
.hdf5files in Megabytes
trim : specifies the fact that we want to trim the measurement, either at the start, the end or both
start / end : specifies how the start/end will be calculated
time : the value that we want to use to trim the start/end
base : the reference point from where the new start/end is calculated
scale : the scale that we want to use
Possible values for base: start, end, absolute. The absolute value means that the timestamp from the measurement will be used.
Possible values for scale: s, second, seconds, us, microsecond, microseconds, ms, millisecond, milliseconds.
include/exclude (mutually exclusive) : a YAML list describing the channel names that we want to include or exclude from a measurement.
When trying to include/ exclude channels using regex, use
Use one list item for one expression.
4. Save log (
When this flag is enabled, the application will also write its output in a log file.
This file can be found in the folder
log, next to the executable.
5. Disable verbose (
When this flag is enabled, console output is disabled except for error messages.
6. Enable one file per topic (
When this flag is enabled, each topic will be written in its own HDF5 file.