From 1110f79548ed4273b88742ec4354210fde9e7181 Mon Sep 17 00:00:00 2001 From: Thulinma Date: Fri, 25 Sep 2015 20:53:51 +0200 Subject: [PATCH 1/2] Fixed completeKeyReady flag to only wait for selected tracks, not all tracks. --- src/output/output.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/output/output.cpp b/src/output/output.cpp index 9537b7b3..c262a612 100644 --- a/src/output/output.cpp +++ b/src/output/output.cpp @@ -598,11 +598,11 @@ namespace Mist { } while(!completeKeyReady && timeoutTries>0){ completeKeyReady = true; - for (std::map::iterator it = myMeta.tracks.begin(); it != myMeta.tracks.end(); it++){ - if (!it->second.keys.size() || it->second.keys.rbegin()->getTime() + it->second.keys.rbegin()->getLength() <= nxt.time ){ - completeKeyReady = false; - break; - } + for (std::set::iterator it = selectedTracks.begin(); it != selectedTracks.end(); it++){ + if (!myMeta.tracks[*it].keys.size() || myMeta.tracks[*it].keys.rbegin()->getTime() + myMeta.tracks[*it].keys.rbegin()->getLength() <= nxt.time ){ + completeKeyReady = false; + break; + } } if (!completeKeyReady){ if (completeKeyReadyTimeOut){ From 94dafb7888f68ffccd4cf3080b654b41fb1c06fb Mon Sep 17 00:00:00 2001 From: Thulinma Date: Fri, 25 Sep 2015 20:58:42 +0200 Subject: [PATCH 2/2] Made generic output debug message about "actually loaded..." clearer, changed level to warn. --- src/output/output.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/output/output.cpp b/src/output/output.cpp index c262a612..71681325 100644 --- a/src/output/output.cpp +++ b/src/output/output.cpp @@ -569,7 +569,7 @@ namespace Mist { thisPacket.reInit(curPage[nxt.tid].mapped + nxt.offset, 0, true); if (thisPacket){ if (thisPacket.getTime() != nxt.time && nxt.time){ - DEBUG_MSG(DLVL_MEDIUM, "ACTUALLY Loaded track %ld (next=%lu), %llu ms", thisPacket.getTrackId(), nxtKeyNum[nxt.tid], thisPacket.getTime()); + WARN_MSG("Loaded track %ld@%llu instead of %ld@%llu", thisPacket.getTrackId(), thisPacket.getTime(), nxt.tid, nxt.time); } if ((myMeta.tracks[nxt.tid].type == "video" && thisPacket.getFlag("keyframe")) || (++nonVideoCount % 30 == 0)){ if (myMeta.live){