void add_client(int sock, Acceptor *acceptor);
void add_client_from_serialized(const ClientProto &client, const std::vector<std::shared_ptr<const std::string>> &short_responses);
+ // Picks a srever (round-robin) and adds the given HLS zombie to it.
+ void add_hls_zombie_from_serialized(const HLSZombieProto &client);
+
// Adds the given stream to all the servers. Returns the stream index.
int add_stream(const std::string &url,
const std::string &hls_url,
const std::string &stream_header);
void add_data(int stream_index, const char *data, size_t bytes, uint16_t metacube_flags, const RationalPTS &pts);
+ // Sets the given stream as unavailable on all the servers.
+ void set_unavailable(int stream_index);
+
// Sets the max pacing rate for all the servers.
void set_pacing_rate(int stream_index, uint32_t pacing_rate);
void stop();
std::vector<ClientStats> get_client_stats() const;
+ std::vector<HLSZombie> get_hls_zombies() const;
private:
std::unique_ptr<Server[]> servers;