From d83dc14e157b23bdc47ec8d4db2e531a4fa41b7c Mon Sep 17 00:00:00 2001 From: Jeremy White <jwhite@codeweavers.com> Date: Mon, 19 Dec 2016 15:14:06 -0600 Subject: [PATCH] Detect video underrun and advance the current time. This helps us avoid stalled video streams. --- display.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/display.js b/display.js index d4baef7..c97f237 100644 --- a/display.js +++ b/display.js @@ -1114,6 +1114,14 @@ function handle_append_video_buffer_done(e) return; } + if (stream.video.buffered.length > 0 && + stream.video.currentTime < stream.video.buffered.start(stream.video.buffered.length - 1)) + { + console.log("Video appears to have fallen behind; advancing to " + + stream.video.buffered.start(stream.video.buffered.length - 1)); + stream.video.currentTime = stream.video.buffered.start(stream.video.buffered.length - 1); + } + if (STREAM_DEBUG > 1) console.log(stream.video.currentTime + ":id " + stream.id + " updateend " + dump_media_element(stream.video)); } -- GitLab