4 #include <bnb/types/base_types.hpp>
5 #include <bnb/spal/camera/base.hpp>
6 #include <bnb/utils/warning_ingore.h>
8 #if !BNB_OS_MACOS && !BNB_OS_WINDOWS && !BNB_OS_EMSCRIPTEN
9 BNB_NO_WARN_BEGIN_GCC(
"-Wdeprecated-anon-enum-enum-conversion")
10 #include <opencv2/videoio.hpp>
11 #include <opencv2/videoio/videoio_c.h>
22 explicit camera_ocv(
const camera_base::push_frame_cb_t& cb,
size_t index);
25 void set_device_by_index(uint32_t device_index)
override;
26 void set_device_by_id(
const std::string& device_id)
override;
27 void start()
override;
32 void update_image_content();
34 cv::VideoCapture m_capture;
38 uint32_t m_frame_width{0};
39 uint32_t m_frame_height{0};
40 uint32_t m_frame_size = m_frame_width * m_frame_height;
41 uint32_t m_device_count{0};