5 #ifndef PACKAGER_MEDIA_FORMATS_MP4_TRACK_RUN_ITERATOR_H_
6 #define PACKAGER_MEDIA_FORMATS_MP4_TRACK_RUN_ITERATOR_H_
12 #include <packager/macros/classes.h>
13 #include <packager/media/formats/mp4/box_definitions.h>
78 uint32_t track_id()
const;
79 int64_t aux_info_offset()
const;
80 int aux_info_size()
const;
81 bool is_encrypted()
const;
82 bool is_audio()
const;
83 bool is_video()
const;
93 int64_t sample_offset()
const;
94 int sample_size()
const;
97 int64_t duration()
const;
98 bool is_keyframe()
const;
108 int64_t GetTimestampAdjustment(
const Movie& movie,
114 std::vector<TrackRunInfo> runs_;
115 std::vector<TrackRunInfo>::const_iterator run_itr_;
116 std::vector<SampleInfo>::const_iterator sample_itr_;
120 std::vector<int64_t> next_fragment_start_dts_;
123 int64_t sample_offset_;
126 std::map<uint32_t, int64_t> timestamp_adjustment_map_;
All the methods that are virtual are virtual for mocking.