50 const std::string& playlist_name,
51 const std::string& stream_name,
52 const std::string& group_id,
53 uint32_t* stream_id)
override;
55 int32_t sample_duration)
override;
57 const std::string& segment_name,
60 uint64_t start_byte_offset,
61 uint64_t size)
override;
64 uint64_t start_byte_offset,
65 uint64_t size)
override;
66 bool NotifyCueEvent(uint32_t container_id, int64_t timestamp)
override;
69 const std::vector<uint8_t>& key_id,
70 const std::vector<uint8_t>& system_id,
71 const std::vector<uint8_t>& iv,
72 const std::vector<uint8_t>& protection_system_specific_data)
override;
74 bool NotifyEndOfStream()
override;
76 bool Flush()
override;
83 friend class SimpleHlsNotifierTest;
86 std::unique_ptr<MediaPlaylist> media_playlist;
87 MediaPlaylist::EncryptionMethod encryption_method;
90 std::string master_playlist_dir_;
91 int32_t target_duration_ = 0;
92 bool end_stream =
false;
94 std::unique_ptr<MediaPlaylistFactory> media_playlist_factory_;
95 std::unique_ptr<MasterPlaylist> master_playlist_;
98 std::map<uint32_t, std::unique_ptr<StreamEntry>> stream_map_;
99 std::list<MediaPlaylist*> media_playlists_;
101 uint32_t sequence_number_ = 0;
104 absl::Time reference_time_ = absl::InfinitePast();
106 DISALLOW_COPY_AND_ASSIGN(SimpleHlsNotifier);
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) override