7 #ifndef MEDIA_FORMATS_MP4_MP4_MUXER_H_
8 #define MEDIA_FORMATS_MP4_MP4_MUXER_H_
12 #include "packager/media/base/muxer.h"
13 #include "packager/media/formats/mp4/fourccs.h"
15 namespace edash_packager {
18 class AudioStreamInfo;
20 class VideoStreamInfo;
26 struct ProtectionSchemeInfo;
27 struct ProtectionSystemSpecificHeader;
40 Status Initialize()
override;
41 Status Finalize()
override;
43 scoped_refptr<MediaSample> sample)
override;
56 bool GetInitRangeStartAndEnd(uint32_t* start, uint32_t* end);
60 bool GetIndexRangeStartAndEnd(uint32_t* start, uint32_t* end);
63 void FireOnMediaStartEvent();
64 void FireOnMediaEndEvent();
67 uint64_t IsoTimeNow();
69 scoped_ptr<Segmenter> segmenter_;
78 #endif // MEDIA_FORMATS_MP4_MP4_MUXER_H_