36 int64_t duration_timestamp,
38 int64_t segment_number)
override;
41 std::vector<Range> GetSegmentRanges()
override;
45 MkvWriter* writer() {
return writer_.get(); }
46 uint64_t init_end() {
return init_end_; }
47 void set_init_end(uint64_t end) { init_end_ = end; }
48 void set_index_start(uint64_t start) { index_start_ = start; }
49 void set_index_end(uint64_t end) { index_end_ = end; }
50 void set_writer(std::unique_ptr<MkvWriter> writer) {
51 writer_ = std::move(writer);
55 Status DoInitialize()
override;
56 Status DoFinalize()
override;
60 Status NewSegment(int64_t start_timestamp,
bool is_subsegment)
override;
62 std::unique_ptr<MkvWriter> writer_;
64 uint64_t index_start_;