Various fixes, among which:
- Fixed segfault when attempting to initialseek on disconnected streams - Fix 100% CPU bug in controller's stats code - WebRTC UDP bind socket improvements - Several segfault fixes - Increased packet reordering buffer size from 30 to 150 packets - Tweaks to default output/buffer behaviour for incoming pushes - Added message for load balancer checks - Fixed HLS content type - Stats fixes - Exit reason fixes - Fixed socket IP address detection - Fixed non-string arguments for stream settings - Added caching for getConnectedBinHost() - Added WebRTC playback rate control - Added/completed VP8/VP9 support to WebRTC/RTSP - Added live seek option to WebRTC - Fixed seek to exactly newest timestamp - Fixed HLS input # Conflicts: # lib/defines.h # src/input/input.cpp
This commit is contained in:
parent
2b99f2f5ea
commit
0af992d405
75 changed files with 1512 additions and 790 deletions
|
|
@ -1162,6 +1162,14 @@ namespace TS{
|
|||
return output.str();
|
||||
}
|
||||
|
||||
|
||||
size_t getUniqTrackID(const DTSC::Meta &M, size_t idx){
|
||||
return idx+255;
|
||||
//size_t ret = M.getID(idx);
|
||||
//if (ret < 255){ret += 255;}
|
||||
//return ret;
|
||||
}
|
||||
|
||||
/// Construct a PMT (special 188B ts packet) from a set of selected tracks and metadata.
|
||||
/// This function is not part of the packet class, but it is in the TS namespace.
|
||||
/// It uses an internal static TS packet for PMT storage.
|
||||
|
|
@ -1201,16 +1209,12 @@ namespace TS{
|
|||
}
|
||||
}
|
||||
if (vidTrack == -1){vidTrack = *(selectedTracks.begin());}
|
||||
size_t pcrPid = M.getID(vidTrack);
|
||||
if (pcrPid < 255){pcrPid += 255;}
|
||||
PMT.setPCRPID(pcrPid);
|
||||
PMT.setPCRPID(getUniqTrackID(M, vidTrack));
|
||||
PMT.setProgramInfoLength(0);
|
||||
ProgramMappingEntry entry = PMT.getEntry(0);
|
||||
for (std::set<long unsigned int>::iterator it = selectedTracks.begin(); it != selectedTracks.end(); it++){
|
||||
std::string codec = M.getCodec(*it);
|
||||
size_t pkgId = M.getID(*it);
|
||||
if (pkgId < 255){pkgId += 255;}
|
||||
entry.setElementaryPid(pkgId);
|
||||
entry.setElementaryPid(getUniqTrackID(M, *it));
|
||||
entry.setESInfo("");
|
||||
if (codec == "H264"){
|
||||
entry.setStreamType(0x1B);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue