}
StreamConfig stream;
- stream.stream_id = line.arguments[0];
+ stream.url = line.arguments[0];
map<string, string>::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?
stream.backlog_size = atoi(backlog_it->second.c_str());
}
+ // Parse encoding.
+ map<string, string>::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<string, string>::const_iterator mark_parm_it = line.parameters.find("mark");
if (mark_parm_it == line.parameters.end()) {