EVT3 RAW File decoder

The sample metavision_evt3_raw_file_decoder.cpp demonstrates how to decode an EVT3 format RAW file and write the decoded events in a CSV file.

Unlike C++ metavision_file_to_csv and Python metavision_file_to_csv samples, this decoder is not leveraging the SDK API (hence “standalone”) so it can be integrated more easily in other projects if needed.

The source code of this sample can be found in <install-prefix>/share/metavision/samples/metavision_evt3_raw_file_decoder when installing Metavision SDK from installer or packages. For other deployment methods, check the page Path of Samples.

Note

This code demonstrates a simple version of the EVT3 decoder. The SDK ships additional versions that are described in EVT3 Decoding Configuration page.

Expected Output

The sample creates two CSV files from the RAW file:

  • The CD Events CSV file with the format x;y;polarity;timestamp

  • The External Trigger Events output CSV file (if any) with the format value;id;timestamp

Note

As this decoder is not using the SDK API, the timestamp shifting feature is not used and raw timestamps are written in the output CSV file. Hence CSV files produced by those samples will not have the same timestamps as the one produced by our CSV converters (C++ CSV Converter and Python CSV converter).

How to start

First, compile the sample as described in this tutorial.

To start the sample, provide the full path to a RAW file (for example, a file from our Sample Recordings) and the path of the output CSV file:

Linux

metavision_evt3_raw_file_decoder /path/to/input.raw /path/to/output.csv

Windows

metavision_evt3_raw_file_decoder.exe \path\to\input.raw \path\to\output.csv

Optionally, you can also generate the CSV file containing the External Trigger Events:

Linux

metavision_evt3_raw_file_decoder /path/to/input.raw /path/to/output_cd.csv /path/to/output_external_triggers.csv

Windows

metavision_evt3_raw_file_decoder.exe \path\to\input.raw \path\to\output_cd.csv \path\to\output_external_triggers.csv