52 const std::string& playlist_name,
53 const std::string& stream_name,
54 const std::string& group_id,
55 uint32_t* stream_id)
override;
57 int32_t sample_duration)
override;
59 const std::string& segment_name,
62 uint64_t start_byte_offset,
63 uint64_t size)
override;
66 uint64_t start_byte_offset,
67 uint64_t size)
override;
68 bool NotifyCueEvent(uint32_t container_id, int64_t timestamp)
override;
71 const std::vector<uint8_t>& key_id,
72 const std::vector<uint8_t>& system_id,
73 const std::vector<uint8_t>& iv,
74 const std::vector<uint8_t>& protection_system_specific_data)
override;
76 bool NotifyEndOfStream()
override;
78 bool Flush()
override;
85 friend class SimpleHlsNotifierTest;
88 std::unique_ptr<MediaPlaylist> media_playlist;
89 MediaPlaylist::EncryptionMethod encryption_method;
92 std::string master_playlist_dir_;
93 int32_t target_duration_ = 0;
94 bool end_stream =
false;
96 std::unique_ptr<MediaPlaylistFactory> media_playlist_factory_;
97 std::unique_ptr<MasterPlaylist> master_playlist_;
100 std::map<uint32_t, std::unique_ptr<StreamEntry>> stream_map_;
101 std::list<MediaPlaylist*> media_playlists_;
103 uint32_t sequence_number_ = 0;
106 absl::Time reference_time_ = absl::InfinitePast();
108 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