#include "stream.h"
#include "udpstream.h"
-class MarkPool;
class Server;
class UDPStream;
struct ClientStats;
void add_client_from_serialized(const ClientProto &client);
// Adds the given stream to all the servers. Returns the stream index.
- int add_stream(const std::string &url, size_t backlog_size, Stream::Encoding encoding);
+ int add_stream(const std::string &url, size_t backlog_size, size_t prebuffering_bytes, Stream::Encoding encoding);
int add_stream_from_serialized(const StreamProto &stream, const std::vector<int> &data_fds);
- int add_udpstream(const sockaddr_in6 &dst, MarkPool *mark_pool);
+ void delete_stream(const std::string &url);
+ int add_udpstream(const sockaddr_in6 &dst, int pacing_rate, int ttl, int multicast_iface_index);
// Returns the stream index for the given URL (e.g. /foo.ts). Returns -1 on failure.
int lookup_stream_by_url(const std::string &url) const;
const std::string &stream_header);
void add_data(int stream_index, const char *data, size_t bytes, StreamStartSuitability suitable_for_stream_start);
- // Connects the given stream to the given mark pool for all the servers.
- void set_mark_pool(int stream_index, MarkPool *mark_pool);
+ // Sets the max pacing rate for all the servers.
+ void set_pacing_rate(int stream_index, uint32_t pacing_rate);
// Changes the given stream's backlog size on all the servers.
void set_backlog_size(int stream_index, size_t new_size);
+ // Changes the given stream's amount of forced prebuffering on all the servers.
+ void set_prebuffering_bytes(int stream_index, size_t new_amount);
+
// Changes the given stream's encoding type on all the servers.
void set_encoding(int stream_index, Stream::Encoding encoding);