52 Status
Process(std::unique_ptr<StreamData> stream_data)
override;
57 friend class ChunkingHandlerTest;
62 Status OnStreamInfo(std::shared_ptr<const StreamInfo> info);
63 Status OnCueEvent(std::shared_ptr<const CueEvent> event);
64 Status OnMediaSample(std::shared_ptr<const MediaSample> sample);
66 Status EndSegmentIfStarted();
67 Status EndSubsegmentIfStarted()
const;
69 bool IsSubsegmentEnabled() {
70 return subsegment_duration_ > 0 &&
71 subsegment_duration_ != segment_duration_;
74 const ChunkingParams chunking_params_;
77 int64_t segment_duration_ = 0;
78 int64_t subsegment_duration_ = 0;
82 int64_t segment_number_ = 1;
85 int64_t current_segment_index_ = -1;
88 int64_t current_subsegment_index_ = -1;
90 std::optional<int64_t> segment_start_time_;
91 std::optional<int64_t> subsegment_start_time_;
92 int64_t max_segment_time_ = 0;
93 int32_t time_scale_ = 0;
97 int64_t cue_offset_ = 0;