From 10b134d062cb350392b663ac2e0868182135e57a Mon Sep 17 00:00:00 2001 From: Thulinma Date: Wed, 27 Jan 2021 17:23:55 +0100 Subject: [PATCH] Allow waiting for specific track counts with specific timeouts --- src/output/output.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/output/output.cpp b/src/output/output.cpp index 0a8588a1..0fec2db2 100644 --- a/src/output/output.cpp +++ b/src/output/output.cpp @@ -318,11 +318,20 @@ namespace Mist{ if (!isInitialized){initialize();} meta.reloadReplacedPagesIfNeeded(); if (getSupportedTracks().size()){ + size_t minTracks = 2; + size_t minMs = 5000; + if (targetParams.count("waittrackcount")){ + minTracks = JSON::Value(targetParams["waittrackcount"]).asInt(); + minMs = 120000; + } + if (targetParams.count("maxwaittrackms")){ + minMs = JSON::Value(targetParams["maxwaittrackms"]).asInt(); + } if (!userSelect.size()){selectDefaultTracks();} size_t mainTrack = getMainSelectedTrack(); if (mainTrack != INVALID_TRACK_ID){ DTSC::Keys keys(M.keys(mainTrack)); - if (keys.getValidCount() >= 2 || M.getLastms(mainTrack) - M.getFirstms(mainTrack) > 5000){ + if (keys.getValidCount() >= minTracks || M.getLastms(mainTrack) - M.getFirstms(mainTrack) > minMs){ return true; } HIGH_MSG("NOT READY YET (%zu tracks, main track: %zu, with %zu keys)",