X-Git-Url: https://git.sesse.net/?p=cubemap;a=blobdiff_plain;f=config.cpp;h=405033868f65f8c804cff3570e4e384dbf198d94;hp=fad29a5361b7627eb442e0037c2595abcb2a55a7;hb=dc109293b2644d5f1ac85a3f02b3584e82dcf690;hpb=136469d722a9986be6bbad68788619284919d876 diff --git a/config.cpp b/config.cpp index fad29a5..4050338 100644 --- a/config.cpp +++ b/config.cpp @@ -189,12 +189,12 @@ bool parse_stream(const ConfigLine &line, Config *config) } StreamConfig stream; - stream.stream_id = line.arguments[0]; + stream.url = line.arguments[0]; map::const_iterator src_it = line.parameters.find("src"); if (src_it == line.parameters.end()) { log(WARNING, "stream '%s' has no src= attribute, clients will not get any data.", - stream.stream_id.c_str()); + stream.url.c_str()); } else { stream.src = src_it->second; // TODO: Verify that the URL is parseable? @@ -207,6 +207,18 @@ bool parse_stream(const ConfigLine &line, Config *config) stream.backlog_size = atoi(backlog_it->second.c_str()); } + // Parse encoding. + map::const_iterator encoding_parm_it = line.parameters.find("encoding"); + if (encoding_parm_it == line.parameters.end() || + encoding_parm_it->second == "raw") { + stream.encoding = StreamConfig::STREAM_ENCODING_RAW; + } else if (encoding_parm_it->second == "metacube") { + stream.encoding = StreamConfig::STREAM_ENCODING_METACUBE; + } else { + log(ERROR, "Parameter 'encoding' must be either 'raw' (default) or 'metacube'"); + return false; + } + // Parse marks, if so desired. map::const_iterator mark_parm_it = line.parameters.find("mark"); if (mark_parm_it == line.parameters.end()) {