]> git.sesse.net Git - cubemap/blobdiff - config.h
Support quoted spaces in configuration files.
[cubemap] / config.h
index a230731cee52b3a89566ec3f2df143439f258d97..b5461cceae1f0978cce52d53a82de1b2cca95655 100644 (file)
--- a/config.h
+++ b/config.h
@@ -11,6 +11,7 @@
 
 struct StreamConfig {
        std::string url;  // As seen by the client.
+       std::string hls_url;  // As seen by the client. Can be empty.
        std::string src;  // Can be empty.
        size_t backlog_size;
        size_t prebuffering_bytes;
@@ -18,6 +19,11 @@ struct StreamConfig {
        enum Encoding { STREAM_ENCODING_RAW = 0, STREAM_ENCODING_METACUBE };
        Encoding encoding;
        Encoding src_encoding;
+       std::string allow_origin;
+
+       // These only matter if hls_url is nonempty.
+       int hls_frag_duration = 6;  // Apple recommendation (“HLS Authoring Specification for Apple Devices”, point 7.5).
+       size_t hls_backlog_margin = 0;
 };
 
 struct UDPStreamConfig {
@@ -26,7 +32,6 @@ struct UDPStreamConfig {
        uint32_t pacing_rate;  // In bytes per second. Default is ~0U (no limit).
        int ttl;  // Default is -1 (use operating system default).
        int multicast_iface_index;  // Default is -1 (use operating system default).
-       StreamConfig::Encoding src_encoding;
 };
 
 struct Gen204Config {
@@ -36,6 +41,8 @@ struct Gen204Config {
 
 struct AcceptorConfig {
        sockaddr_in6 addr;
+
+       std::string certificate_chain, private_key;  // In PEM format.
 };
 
 struct LogConfig {