26 [[nodiscard]]
bool SupportsExactFrameTimestamp()
const override;
30 int GetWidth()
override;
31 int GetHeight()
override;
33 void ProducePreTransformFrame(cv::Mat& frame)
override;
35 const int64_t kTimestampNotYetSet = -1;
38 static absl::StatusOr<std::regex> BuildFrameFileNameRegex(
const std::string& wildcard_filename_mask);
40 std::map<int64_t, std::filesystem::path> ScanInputDirectory();
43 std::regex frame_filename_regex;
44 std::filesystem::path directory;
45 std::string end_of_stream_filename;
46 int retry_delay_ms = 10;
47 bool erase_read_files;
52 int64_t current_frame_timestamp = kTimestampNotYetSet;
53 bool end_of_stream_encountered =
false;
55 std::map<int64_t, std::filesystem::path> loop_frame_filenames;
56 std::map<int64_t, std::filesystem::path>::iterator current_frame_data;
57 std::filesystem::path end_of_stream_path;
59 int first_frame_width = -1;
60 int first_frame_height = -1;