50 Status
Process(std::unique_ptr<StreamData> stream_data)
override;
55 friend class ChunkingHandlerTest;
60 Status OnStreamInfo(std::shared_ptr<const StreamInfo> info);
61 Status OnCueEvent(std::shared_ptr<const CueEvent> event);
62 Status OnMediaSample(std::shared_ptr<const MediaSample> sample);
64 Status EndSegmentIfStarted();
65 Status EndSubsegmentIfStarted()
const;
67 bool IsSubsegmentEnabled() {
68 return subsegment_duration_ > 0 &&
69 subsegment_duration_ != segment_duration_;
72 const ChunkingParams chunking_params_;
75 int64_t segment_duration_ = 0;
76 int64_t subsegment_duration_ = 0;
80 int64_t segment_number_ = 1;
83 int64_t current_segment_index_ = -1;
86 int64_t current_subsegment_index_ = -1;
88 std::optional<int64_t> segment_start_time_;
89 std::optional<int64_t> subsegment_start_time_;
90 int64_t max_segment_time_ = 0;
91 int32_t time_scale_ = 0;
95 int64_t cue_offset_ = 0;