1 #include "output-drv.hpp"
8 class output_driver_timecodev2
: public output_driver
11 output_driver_timecodev2(const std::string
& filename
)
14 out
= fopen(filename
.c_str(), "wb");
18 throw std::runtime_error("Unable to open output file");
19 fprintf(out
, "# timecode format v2\n");
20 set_video_callback
<output_driver_timecodev2
>(*this, &output_driver_timecodev2::video_callback
);
23 ~output_driver_timecodev2()
32 void video_callback(uint64_t timestamp
, const uint8_t* raw_rgbx_data
)
34 fprintf(out
, "%llu\n", (unsigned long long)timestamp
/ 1000000);
40 class output_driver_timecodev2_factory
: output_driver_factory
43 output_driver_timecodev2_factory()
44 : output_driver_factory("timecodev2")
48 output_driver
& make(const std::string
& type
, const std::string
& name
, const std::string
& parameters
)
51 throw std::runtime_error("timecodev2 output does not take parameters");
52 return *new output_driver_timecodev2(name
);