Stepdance Software Library
Loading...
Searching...
No Matches
FourTrackRecorder Class Reference

FourTrackRecorder records four motion streams to an SD card file. More...

#include <recording.hpp>

Inheritance diagram for FourTrackRecorder:

Public Member Functions

void begin ()
 Initializes the FourTrackRecorder. Must be called before using the recorder.
void start (const char *recording_name, uint8_t recording_length_min=30)
 Starts a new recording with the specified name and optional length.
void pause ()
 Pauses the current recording.
void resume ()
 Resumes a paused recording.
void stop ()
 Stops the current recording.
void set_resolution (float input_units, float per_steps=1.0)
 Sets the resolution for recording in world units per step.

Public Attributes

BlockPortinput_1 = recorder_tracks[0].input_target_position
 Input BlockPort for the first recording channel. Map upstream components to this port.
BlockPortinput_2 = recorder_tracks[1].input_target_position
 Input BlockPort for the second recording channel. Map upstream components to this port.
BlockPortinput_3 = recorder_tracks[2].input_target_position
 Input BlockPort for the third recording channel. Map upstream components to this port.
BlockPortinput_4 = recorder_tracks[3].input_target_position
 Input BlockPort for the fourth recording channel. Map upstream components to this port.
volatile long current_sample_index = 0
 Current sample index in the recording.
long max_num_samples = 0
 Maximum number of samples in the recording.
volatile bool recorder_active = false
 Indicates whether the recorder is currently active.

Protected Member Functions

void run ()

Detailed Description

FourTrackRecorder records four motion streams to an SD card file.

The FourTrackRecorder class allows simultaneous recording of four motion streams to an SD card file. Each track can be mapped to a BlockPort for input. The recorder supports starting, pausing, resuming, and stopping recordings, as well as setting the resolution for recording. Recorded data is stored in a binary format on the SD card for efficient storage and retrieval. It is typically used in conjunction with the FourTrackPlayer class for playback of recorded motion streams. Here's an example of how to instantiate and configure a FourTrackRecorder: AxiDraw Recorder Example.

Member Function Documentation

◆ set_resolution()

void FourTrackRecorder::set_resolution ( float input_units,
float per_steps = 1.0 )

Sets the resolution for recording in world units per step.

Parameters
input_unitsWorld units corresponding to one step.
per_stepsNumber of steps. Default is 1.0.

◆ start()

void FourTrackRecorder::start ( const char * recording_name,
uint8_t recording_length_min = 30 )

Starts a new recording with the specified name and optional length.

Parameters
recording_nameName of the recording file. This should be the same name you provide to the FourTrackPlayer for playback.
recording_length_minOptional length of the recording in minutes. Default is 30 minutes.

The documentation for this class was generated from the following file: