Class VideoGrabber#

Inheritance Relationships#

Base Type#

  • public QThread

Class Documentation#

class VideoGrabber : public QThread

Public Functions

explicit VideoGrabber(int cameraIndex, const CameraParameters &params, RingBuffer<std::shared_ptr<VideoFrame>> &frameBuffer, QObject *parent = nullptr)
~VideoGrabber() override
bool open()
void close()
void apply_live_params()
void start_grabbing()
void stop_grabbing()
void request_calibration_frame(uint64_t token = 0)
bool is_actually_grabbing() const
bool is_open() const
int64_t frames_grabbed() const
int64_t frames_dropped() const
double current_fps() const
int64_t last_frame_elapsed_ns() const
bool action_command_ready() const
uint32_t action_device_key() const
QString action_broadcast_address() const
double configured_fps() const
double achievable_fps() const

Signals

void opened(int cameraIndex, int width, int height, double fps)
void closed(int cameraIndex)
void frame_dropped(int cameraIndex, int64_t frameId)
void grab_error(int cameraIndex, QString message)
void preview_frame(int cameraIndex, QImage frame)
void calibration_frame_ready(int cameraIndex, QImage frame, uint64_t token)
void action_command_capability(int cameraIndex, bool supported)

Public Static Functions

static QVector<DiscoveredCamera> enumerate_devices()

Protected Functions

void run() override