Merge branch 'development' into LTS_development

# Conflicts:
#	lib/h264.cpp
This commit is contained in:
Thulinma 2016-09-02 14:45:25 +02:00
commit 5c8ebdc5ec
11 changed files with 111 additions and 36 deletions

View file

@ -735,7 +735,7 @@ namespace Mist {
break;
}
MEDIUM_MSG("Buffer has indicated that incoming track %lu should start writing on track %lu, page %lu", tid, finalTid, firstPage);
MEDIUM_MSG("Buffer says %s:%lu should start writing on track %lu, page %lu", streamName.c_str(), tid, finalTid, firstPage);
trackMap[tid] = finalTid;
if (myMeta.tracks.count(finalTid) && myMeta.tracks[finalTid].lastms){
myMeta.tracks[finalTid].lastms = 0;

View file

@ -552,14 +552,31 @@ namespace Mist {
return buffer.begin()->time;
}
///Return the end time of the VoD asset, or 0 if unknown.
///Return the start time of the selected tracks.
uint64_t Output::startTime(){
uint64_t start = 0xFFFFFFFFFFFFFFFFull;
if (selectedTracks.size()){
for (std::set<long unsigned int>::iterator it = selectedTracks.begin(); it != selectedTracks.end(); it++){
if (myMeta.tracks.count(*it)){
if (start < myMeta.tracks[*it].firstms){
start = myMeta.tracks[*it].firstms;
}
}
}
}
return start;
}
///Return the end time of the selected tracks, or 0 if unknown or live.
uint64_t Output::endTime(){
if (myMeta.live){return 0;}
uint64_t end = 0;
for (std::set<long unsigned int>::iterator it = selectedTracks.begin(); it != selectedTracks.end(); it++){
if (myMeta.tracks.count(*it)){
if (end < myMeta.tracks[*it].lastms){
end = myMeta.tracks[*it].lastms;
if (selectedTracks.size()){
for (std::set<long unsigned int>::iterator it = selectedTracks.begin(); it != selectedTracks.end(); it++){
if (myMeta.tracks.count(*it)){
if (end < myMeta.tracks[*it].lastms){
end = myMeta.tracks[*it].lastms;
}
}
}
}

View file

@ -59,6 +59,7 @@ namespace Mist {
bool seek(unsigned int tid, unsigned long long pos, bool getNextKey = false);
void stop();
uint64_t currentTime();
uint64_t startTime();
uint64_t endTime();
void setBlocking(bool blocking);
long unsigned int getMainSelectedTrack();