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 virtual Status Initialize() OVERRIDE;
41 virtual 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_