38 VoyantPlayback(
double rate = 1.0,
bool loop =
false,
bool filter_points =
false);
Wrapper for VoyantFrame messages.
Definition voyant_frame_wrapper.hpp:19
C++ wrapper for the Voyant playback system with timing capabilities.
Definition voyant_playback.hpp:13
VoyantPlayback(double rate=1.0, bool loop=false, bool filter_points=false)
uint64_t firstFrameTimestamp
Definition voyant_playback.hpp:20
std::string lastErrorMsg
Definition voyant_playback.hpp:24
void * playbackHandle
Definition voyant_playback.hpp:15
std::chrono::steady_clock::time_point startTime
Definition voyant_playback.hpp:19
std::string getLastError() const
VoyantPlayback(const VoyantPlayback &)=delete
Non-copyable.
double playbackRate
Definition voyant_playback.hpp:16
void setError(const std::string &message)
Sets an error message and invalidates the frame.
VoyantFrameWrapper currentFrameData
Definition voyant_playback.hpp:27
const VoyantFrameWrapper & currentFrame() const
size_t framesProcessed
Definition voyant_playback.hpp:22
bool looping
Definition voyant_playback.hpp:17
void applyTiming(uint64_t currentTimestamp)
Applies timing based on the current frame and playback rate.
size_t getLoopsCompleted() const
uint8_t * frameBuffer
Definition voyant_playback.hpp:29
static constexpr size_t BUFFER_SIZE
Definition voyant_playback.hpp:28
VoyantPlayback & operator=(const VoyantPlayback &)=delete
~VoyantPlayback()
Destructor.
VoyantFrameWrapper & currentFrame()
size_t getFramesProcessed() const
size_t currentFrameIndex()
uint64_t prevTimestamp
Definition voyant_playback.hpp:18
void resetTiming()
Resets the timing when starting a new loop.
size_t loopsCompleted
Definition voyant_playback.hpp:23
bool openFile(const std::string &filePath)
bool firstFrame
Definition voyant_playback.hpp:21
uint64_t currentFrameTimestamp()