10 #ifndef MPD_BASE_MPD_NOTIFIER_H_
11 #define MPD_BASE_MPD_NOTIFIER_H_
17 #include <packager/macros/classes.h>
18 #include <packager/macros/compiler.h>
19 #include <packager/mpd/base/mpd_options.h>
24 struct ContentProtectionElement;
31 : mpd_options_(mpd_options) {}
48 uint32_t* container_id) = 0;
68 int32_t sample_duration) = 0;
96 int64_t segment_number) = 0;
112 UNUSED(container_id);
135 const std::string& drm_uuid,
136 const std::vector<uint8_t>& new_key_id,
137 const std::vector<uint8_t>& new_pssh) = 0;
144 const MediaInfo& media_info) = 0;
158 MpdType
mpd_type()
const {
return mpd_options_.mpd_type; }
162 return mpd_options_.mpd_params.use_segment_list;
bool use_segment_list() const
DashProfile dash_profile() const
virtual bool NotifySampleDuration(uint32_t container_id, int32_t sample_duration)=0
virtual bool NotifyMediaInfoUpdate(uint32_t container_id, const MediaInfo &media_info)=0
virtual bool NotifyNewSegment(uint32_t container_id, int64_t start_time, int64_t duration, uint64_t size, int64_t segment_number)=0
virtual bool NotifyCompletedSegment(uint32_t container_id, int64_t duration, uint64_t size)
virtual bool NotifyAvailabilityTimeOffset(uint32_t container_id)
virtual bool NotifyEncryptionUpdate(uint32_t container_id, const std::string &drm_uuid, const std::vector< uint8_t > &new_key_id, const std::vector< uint8_t > &new_pssh)=0
virtual bool NotifyCueEvent(uint32_t container_id, int64_t timestamp)=0
virtual bool NotifySegmentDuration(uint32_t container_id)
virtual bool NotifyNewContainer(const MediaInfo &media_info, uint32_t *container_id)=0
bool include_mspr_pro() const
All the methods that are virtual are virtual for mocking.