diff --git a/src/output/output_httpts.cpp b/src/output/output_httpts.cpp index 41a5dc37..7d710db4 100644 --- a/src/output/output_httpts.cpp +++ b/src/output/output_httpts.cpp @@ -15,11 +15,11 @@ namespace Mist{ sendRepeatingHeaders = 500; // PAT/PMT every 500ms (DVB spec) HTTP::URL target(config->getString("target")); if (target.protocol == "srt"){ - std::string tgt = config->getString("target"); - HTTP::URL srtUrl(tgt); - config->getOption("target", true).append("ts-exec:srt-live-transmit file://con " + srtUrl.getUrl()); - INFO_MSG("Rewriting SRT target '%s' to '%s'", tgt.c_str(), config->getString("target").c_str()); - } else if (config->getString("target").substr(0, 8) == "ts-exec:"){ + std::string newTarget = "ts-exec:srt-live-transmit file://con " + target.getUrl(); + INFO_MSG("Rewriting SRT target '%s' to '%s'", config->getString("target").c_str(), newTarget.c_str()); + config->getOption("target", true).append(newTarget); + } + if (config->getString("target").substr(0, 8) == "ts-exec:"){ std::string input = config->getString("target").substr(8); char *args[128]; uint8_t argCnt = 0; @@ -131,10 +131,6 @@ namespace Mist{ wantRequest = false; } - void OutHTTPTS::sendHeader(){ - TSOutput::sendHeader(); - } - void OutHTTPTS::sendTS(const char *tsData, size_t len){ if (isRecording()){ myConn.SendNow(tsData, len); diff --git a/src/output/output_httpts.h b/src/output/output_httpts.h index e13ae488..1c888d15 100644 --- a/src/output/output_httpts.h +++ b/src/output/output_httpts.h @@ -15,11 +15,10 @@ namespace Mist{ bool isRecording(); bool isFileTarget(){ HTTP::URL target(config->getString("target")); - if (isRecording() && (config->getString("target").substr(0, 8) != "ts-exec:")){return true;} + if (isRecording() && target.protocol != "srt" && (config->getString("target").substr(0, 8) != "ts-exec:")){return true;} return false; } virtual bool inlineRestartCapable() const{return true;} - void sendHeader(); }; }// namespace Mist