8 #include <bnb/types/base_types.hpp>
9 #include <bnb/spal/camera/base_mocker.hpp>
10 #include <bnb/utils/defs.hpp>
11 #include <bnb/utils/warning_ingore.h>
13 #if !BNB_OS_EMSCRIPTEN
14 BNB_NO_WARN_BEGIN_GCC(
"-Wdeprecated-anon-enum-enum-conversion")
15 #include <opencv2/core/core.hpp>
16 #include <opencv2/videoio.hpp>
25 typedef std::optional<cv::Rect> rect_t;
28 camera_video_mocker(
const camera_base::push_frame_cb_t& cb, uint32_t frame_rate,
const std::string& input_file,
const rect_t& clip_area);
29 camera_video_mocker(
const camera_base::push_frame_cb_t& cb,
const std::string& input_file,
const rect_t& clip_area = std::nullopt);
32 void set_device_by_index(uint32_t device_index)
override;
33 void set_device_by_id(
const std::string& device_id)
override;
36 void update_image_content()
final;
39 uint32_t m_frame_width;
40 uint32_t m_frame_height;
41 uint32_t m_frame_size;
43 cv::VideoCapture m_capture;
44 std::optional<cv::Rect> m_clip_area;