Record: voyant_logger_binary
Record sensor data to a .vynt file.
Records the live sensor stream to a .vynt file in Voyant’s native format, preserving all data for later analysis and playback.
The visualizer can also record a live session interactively. Use
voyant_logger_binaryfor headless or scripted recording.
Use voyant_logger_binary --help to see all available options.
Usage
Basic Recording
voyant_logger_binary --output my_recording.vynt --bind-addr 0.0.0.0:5678 --group-addr 239.255.48.84 --interface-addr 192.168.1.100
By default a timestamp is added to the file name (my_recording_20260824_143012.vynt), and recording runs until you press Ctrl+C. Pass --disable-timestamp-naming to keep the name exactly as given. An existing file is never overwritten unless you pass --force.
Time-Limited Recording
voyant_logger_binary --output session.vynt --max-total-duration 60 --bind-addr 0.0.0.0:5678 --group-addr 239.255.48.84 --interface-addr 192.168.1.100
Frame-Limited Recording
voyant_logger_binary --output test.vynt --max-total-frames 1000 --bind-addr 0.0.0.0:5678 --group-addr 239.255.48.84 --interface-addr 192.168.1.100
Splitting into Multiple Files
The per-file limits split a long recording into numbered files (my_recording_<timestamp>.000.vynt, .001.vynt, …) while the total limits above cap the whole session:
voyant_logger_binary --output my_recording.vynt --frames-per-file 1000 --max-total-frames 10000 ...
Expected Output
When recording starts:
[INFO voyant_logger_binary] Initializing Carbon client with provided configuration...
[INFO voyant_logger_binary] Starting recording with configuration: ...
[INFO voyant_recorder::voyant_recorder] Starting new file: "my_recording_20260824_143012.vynt"
[INFO voyant_logger_binary] Recorded 50 total frames across 1 file(s)
[INFO voyant_logger_binary] Recorded 100 total frames across 1 file(s)
When stopped:
[INFO voyant_recorder::voyant_recorder] Final file: "my_recording_20260824_143012.vynt" (243 frames, 62 MB)
[INFO voyant_recorder::voyant_recorder] Recording complete: 243 total frames in 1 file
[INFO voyant_logger_binary] All log files have been closed and are ready for playback.
Options
Recording:
--output <FILE>— path for the output file; must end in.vynt(required).--frames-per-file <N>/--duration-per-file <SECONDS>/--size-per-file-mb <MB>— split into a new numbered file when the current one reaches the limit.--max-total-frames <N>/--max-total-duration <SECONDS>/--max-total-size-mb <MB>— stop recording when the whole session reaches the limit.--disable-timestamp-naming— keep the output name exactly as given instead of appending a timestamp.--force— overwrite existing output files instead of failing. Applies to every file this run writes.--diagnostic-mode— record a support bundle for Voyant (see below).
Connection (same meaning as for voyant_client_check):
--bind-addr <ADDR>— local address to bind to (default:0.0.0.0:5678).--group-addr <ADDR>— multicast group address to join (default:239.255.48.84).--interface-addr <ADDR>— local interface IP for the multicast group (default:192.168.1.100; use127.0.0.1for the simulator).--observer-only— passively receive the stream without sending anything to the sensor. Use when another client owns it.--stream-transport <unicast|multicast>— how the sensor delivers its stream (default:unicast).
Diagnostic Mode (Support Bundle)
When Voyant support asks for a diagnostic recording, add --diagnostic-mode:
voyant_logger_binary --diagnostic-mode --output support_capture.vynt ...
In diagnostic mode:
- Recorded frames keep invalid points (with their drop reasons) instead of filtering them out.
- A raw-peaks sidecar file is written next to the recording, named after it (
support_capture_<timestamp>_peaks.vynt). Recording and sidecar start together or not at all, and--forcecovers both files. - Per-file splitting (
--frames-per-file/--duration-per-file/--size-per-file-mb) is rejected, so a capture is always one recording plus one sidecar. Total limits stay allowed.
Send both files to support. The sidecar holds the raw sensor peak stream — it is for Voyant’s internal analysis and cannot be opened with the playback tools.
File Format
.vynt files use Voyant’s native format and can be:
- Played back with
voyant_playback_checkor opened directly in the visualizer - Converted to ROS2 bag format via the voyant-ros repository
- Shared between systems without data loss
Recordings from releases before v1.0.0 use an older format — convert them with voyant_recording_migrate.
Troubleshooting
If recording fails:
- Verify network connectivity to the sensor
- Check that the output path ends in
.vyntand the file doesn’t already exist (or pass--force) - Ensure sufficient disk space for the recording
- Monitor frame rate — if 0 frames recorded, check network configuration