7 #ifndef PACKAGER_HLS_BASE_HLS_NOTIFIER_H_
8 #define PACKAGER_HLS_BASE_HLS_NOTIFIER_H_
13 #include <packager/hls_params.h>
14 #include <packager/mpd/base/media_info.pb.h>
39 const std::string& playlist_name,
40 const std::string& stream_name,
41 const std::string& group_id,
42 uint32_t* stream_id) = 0;
51 int32_t sample_duration) = 0;
62 const std::string& segment_name,
65 uint64_t start_byte_offset,
76 uint64_t start_byte_offset,
94 const std::vector<uint8_t>& key_id,
95 const std::vector<uint8_t>& system_id,
96 const std::vector<uint8_t>& iv,
97 const std::vector<uint8_t>& protection_system_specific_data) = 0;
107 const HlsParams hls_params_;
virtual bool NotifyCueEvent(uint32_t stream_id, int64_t timestamp)=0
virtual bool NotifyNewSegment(uint32_t stream_id, const std::string &segment_name, int64_t start_time, int64_t duration, uint64_t start_byte_offset, uint64_t size)=0
virtual bool NotifyNewStream(const MediaInfo &media_info, const std::string &playlist_name, const std::string &stream_name, const std::string &group_id, uint32_t *stream_id)=0
virtual bool NotifyEncryptionUpdate(uint32_t stream_id, const std::vector< uint8_t > &key_id, const std::vector< uint8_t > &system_id, const std::vector< uint8_t > &iv, const std::vector< uint8_t > &protection_system_specific_data)=0
virtual bool NotifySampleDuration(uint32_t stream_id, int32_t sample_duration)=0
virtual bool NotifyKeyFrame(uint32_t stream_id, int64_t timestamp, uint64_t start_byte_offset, uint64_t size)=0
const HlsParams & hls_params() const
All the methods that are virtual are virtual for mocking.