7 #ifndef MEDIA_FORMATS_MP4_MP4_MUXER_H_
8 #define MEDIA_FORMATS_MP4_MP4_MUXER_H_
12 #include "packager/base/optional.h"
13 #include "packager/media/base/muxer.h"
18 class AudioStreamInfo;
21 class VideoStreamInfo;
27 struct ProtectionSchemeInfo;
40 Status InitializeMuxer()
override;
41 Status Finalize()
override;
43 Status FinalizeSegment(
size_t stream_id,
60 base::Optional<Range> GetInitRangeStartAndEnd();
64 base::Optional<Range> GetIndexRangeStartAndEnd();
67 void FireOnMediaStartEvent();
68 void FireOnMediaEndEvent();
71 uint64_t IsoTimeNow();
73 std::unique_ptr<Segmenter> segmenter_;
82 #endif // MEDIA_FORMATS_MP4_MP4_MUXER_H_