Added non-chunked options to DASH and HLS outputs
This commit is contained in:
parent
4a22be819d
commit
7f1fca24d7
2 changed files with 12 additions and 2 deletions
|
@ -501,6 +501,11 @@ namespace Mist{
|
|||
capa["methods"][0u]["handler"] = "http";
|
||||
capa["methods"][0u]["type"] = "dash/video/mp4";
|
||||
capa["methods"][0u]["priority"] = 8ll;
|
||||
|
||||
cfg->addOption("nonchunked", JSON::fromString("{\"short\":\"C\",\"long\":\"nonchunked\",\"help\":\"Do not send chunked, but buffer whole segments.\"}"));
|
||||
capa["optional"]["nonchunked"]["name"] = "Send whole segments";
|
||||
capa["optional"]["nonchunked"]["help"] = "Disables chunked transfer encoding, forcing per-segment buffering. Reduces performance significantly, but increases compatibility somewhat.";
|
||||
capa["optional"]["nonchunked"]["option"] = "--nonchunked";
|
||||
}
|
||||
|
||||
void OutDashMP4::onHTTP(){
|
||||
|
@ -548,7 +553,7 @@ namespace Mist{
|
|||
H.Clean();
|
||||
return;
|
||||
}
|
||||
H.StartResponse(H, myConn);
|
||||
H.StartResponse(H, myConn, config->getBool("nonchunked"));
|
||||
|
||||
if (url.find("init.m4s") != std::string::npos){
|
||||
//init segment
|
||||
|
|
|
@ -368,6 +368,11 @@ namespace Mist {
|
|||
capa["optional"]["listlimit"]["default"] = 0ll;
|
||||
capa["optional"]["listlimit"]["type"] = "uint";
|
||||
capa["optional"]["listlimit"]["option"] = "--list-limit";
|
||||
|
||||
cfg->addOption("nonchunked", JSON::fromString("{\"short\":\"C\",\"long\":\"nonchunked\",\"help\":\"Do not send chunked, but buffer whole segments.\"}"));
|
||||
capa["optional"]["nonchunked"]["name"] = "Send whole segments";
|
||||
capa["optional"]["nonchunked"]["help"] = "Disables chunked transfer encoding, forcing per-segment buffering. Reduces performance significantly, but increases compatibility somewhat.";
|
||||
capa["optional"]["nonchunked"]["option"] = "--nonchunked";
|
||||
/*LTS-END*/
|
||||
}
|
||||
|
||||
|
@ -514,7 +519,7 @@ namespace Mist {
|
|||
return;
|
||||
}
|
||||
|
||||
H.StartResponse(H, myConn, VLCworkaround);
|
||||
H.StartResponse(H, myConn, VLCworkaround || config->getBool("nonchunked"));
|
||||
//we assume whole fragments - but timestamps may be altered at will
|
||||
uint32_t fragIndice = Trk.timeToFragnum(from);
|
||||
contPAT = Trk.missedFrags + fragIndice; //PAT continuity counter
|
||||
|
|
Loading…
Add table
Reference in a new issue