Dash.js: v2.5.0: VOD does not play through until end

Created on 28 Apr 2017  路  23Comments  路  Source: Dash-Industry-Forum/dash.js

Environment

Steps to reproduce

Go to http://dashif.org/reference/players/javascript/v2.5.0/samples/dash-if-reference-player/ and play http://edge.flowplayer.org/night4.mpd
May sometimes not happen if stream is cached, so cache-refresh before testing.

Observed behaviour

Stops before end instead of looping.
Does not happen e.g. at http://dashif.org/reference/players/javascript/v2.4.1/samples/dash-if-reference-player/ or below.

Console output
[17] No supported version of EME detected on this user agent! - Attempts to play encrypted content will fail! 
Debug.js:108 [22] [dash.js 2.5.0] MediaPlayer has been initialized 
jquery-3.1.1.min.js:2 [Violation] 'setTimeout' handler took 236ms
angular.min.js:102 [Violation] 'load' handler took 177ms
Debug.js:108 [6069] Playback Initialized 
Debug.js:108 [6123] Parsing complete: ( xml2json: 6.76ms, objectiron: 1.61ms, total: 0.00836s) 
Debug.js:108 [6135] MediaSource attached to element.  Waiting on open... 
Debug.js:108 [6135] Manifest has been refreshed at Sun Jun 04 2017 17:23:05 GMT+0100 (BST)[1496593385.902]  
Debug.js:108 [6137] MediaSource is open! 
Debug.js:108 [6137] Duration successfully set to: 10 
Debug.js:108 [6138] Added 0 inline events 
Debug.js:108 [6139] video codec: video/mp4;codecs="avc1.64000D" 
Debug.js:108 [6151] Last saved bitrate for video was 649 
Debug.js:108 [6154] Perform SIDX load: http://edge.flowplayer.org/night4/9/dash/night4-216p-lo_track1_dashinit.mp4 
Debug.js:108 [6155] Perform SIDX load: http://edge.flowplayer.org/night4/9/dash/night4-216p_track1_dashinit.mp4 
Debug.js:108 [6156] Perform SIDX load: http://edge.flowplayer.org/night4/9/dash/night4-270p_track1_dashinit.mp4 
Debug.js:108 [6158] Perform SIDX load: http://edge.flowplayer.org/night4/9/dash/night4-360p_track1_dashinit.mp4 
Debug.js:108 [6159] Perform SIDX load: http://edge.flowplayer.org/night4/9/dash/night4-540p_track1_dashinit.mp4 
Debug.js:108 [6160] Perform SIDX load: http://edge.flowplayer.org/night4/9/dash/night4-576p_track1_dashinit.mp4 
Debug.js:108 [6161] Perform SIDX load: http://edge.flowplayer.org/night4/9/dash/night4-720p_track1_dashinit.mp4 
Debug.js:108 [6162] Perform SIDX load: http://edge.flowplayer.org/night4/9/dash/night4-1080p_track1_dashinit.mp4 
Debug.js:108 [6163] audio codec: audio/mp4;codecs="mp4a.40.2" 
Debug.js:108 [6164] Perform SIDX load: http://edge.flowplayer.org/night4/9/dash/night4-216p-lo_track2_dashinit.mp4 
Debug.js:108 [6165] No text data. 
Debug.js:108 [6165] No fragmentedText data. 
Debug.js:108 [6165] No embeddedText data. 
Debug.js:108 [6166] No muxed data. 
Debug.js:108 [6168] Start Event Controller 
Debug.js:108 [6168] Native video element event: play 
Debug.js:108 [6416] Parsing segments from SIDX. 
Debug.js:108 [6426] Parsing segments from SIDX. 
Debug.js:108 [6472] Parsing segments from SIDX. 
Debug.js:108 [6481] Parsing segments from SIDX. 
Debug.js:108 [6484] Parsing segments from SIDX. 
Debug.js:108 [6486] Parsing segments from SIDX. 
Debug.js:108 [6513] Parsing segments from SIDX. 
Debug.js:108 [6565] Parsing segments from SIDX. 
Debug.js:108 [6566] AbrController (video) switch from 0 to 5/7 (buffer: 0)
undefined 
Debug.js:108 [6587] Parsing segments from SIDX. 
Debug.js:108 [6591] Schedule controller starting for video 
Debug.js:108 [6592] Schedule controller starting for audio 
Debug.js:108 [6594] Top qualityvideo index has changed from undefined to 7 
Debug.js:108 [6596] AbrController (video) stay on 5/7 (buffer: 0) 
Debug.js:108 [6599] Top qualityaudio index has changed from undefined to 0 
Debug.js:108 [6599] AbrController (audio) stay on 0/0 (buffer: 0) 
Debug.js:108 [6783] Init fragment finished loading saving to audio's init cache 
Debug.js:108 [6785] Init fragment finished loading saving to video's init cache 
Debug.js:108 [6791] Native video element event: loadedmetadata 
Debug.js:108 [6804] AbrController (video) stay on 5/7 (buffer: 0) 
Debug.js:108 [6805] Getting the request for video time : 0 
Debug.js:108 [6806] SegmentBase: 0 / 10 
Debug.js:108 [7045] Buffered Range for type: video : 0  -  1 
Debug.js:108 [7046] Got enough buffer to start. 
Debug.js:108 [7049] ThroughputRule requesting switch to index:  7 type:  video Average throughput 19352 kbps 
Debug.js:108 [7049] AbrController (video) switch from 5 to 7/7 (buffer: 1)
{"throughput":19351.714,"latency":209} 
Debug.js:108 [7240] Init fragment finished loading saving to video's init cache 
Debug.js:108 [7241] Buffered Range for type: video : 0  -  1 
Debug.js:108 [7243] AbrController (video) stay on 7/7 (buffer: 1) 
Debug.js:108 [7243] Getting the request for video time : 1 
Debug.js:108 [7244] SegmentBase: 0 / 10 
Debug.js:108 [7244] Getting the next request at index: 1 
Debug.js:108 [7244] SegmentBase: 1 / 10 
Debug.js:108 [7304] AbrController (audio) stay on 0/0 (buffer: 0) 
Debug.js:108 [7305] Getting the request for audio time : 0 
Debug.js:108 [7305] SegmentBase: 0 / 10 
Debug.js:108 [7487] Buffered Range for type: video : 0  -  2 
Debug.js:108 [7487] Buffered Range for type: audio : 0.046439  -  0.998457 
Debug.js:108 [7488] Got enough buffer to start. 
Debug.js:108 [7488] Requesting seek to time: 0.046439 
Debug.js:108 [7495] Seeking to: 0.046439 
Debug.js:108 [7499] ThroughputRule requesting switch to index:  7 type:  video Average throughput 15475 kbps 
Debug.js:108 [7499] AbrController (video) stay on 7/7 (buffer: 1.954) 
Debug.js:108 [7499] Prior to making a request for time, NextFragmentRequestRule is aligning index handler's currentTime with bufferedRange.end. 0.046439  was changed to  2 
Debug.js:108 [7500] Getting the request for video time : 2 
Debug.js:108 [7500] Index for video time 2 is 1 
Debug.js:108 [7500] SegmentBase: 1 / 10 
Debug.js:108 [7501] Getting the next request at index: 2 
Debug.js:108 [7501] SegmentBase: 2 / 10 
Debug.js:108 [7513] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 101512 kbps 
Debug.js:108 [7513] AbrController (audio) stay on 0/0 (buffer: 0.952) 
Debug.js:108 [7514] Prior to making a request for time, NextFragmentRequestRule is aligning index handler's currentTime with bufferedRange.end. 0.046439  was changed to  0.998457 
Debug.js:108 [7514] Getting the request for audio time : 0.998457 
Debug.js:108 [7514] SegmentBase: 0 / 10 
Debug.js:108 [7515] Getting the next request at index: 1 
Debug.js:108 [7515] SegmentBase: 0.9520181405895691 / 10 
Debug.js:108 [7530] Native video element event: seeked 
Debug.js:108 [7530] Native video element event: playing 
Debug.js:108 [7704] Buffered Range for type: audio : 0.046439  -  1.996915 
Debug.js:108 [7721] Buffered Range for type: video : 0  -  3 
Debug.js:108 [7724] ThroughputRule requesting switch to index:  7 type:  video Average throughput 15475 kbps 
Debug.js:108 [7725] AbrController (video) stay on 7/7 (buffer: 2.818) 
Debug.js:108 [7725] Getting the request for video time : 3 
Debug.js:108 [7725] Index for video time 3 is 2 
Debug.js:108 [7726] SegmentBase: 2 / 10 
Debug.js:108 [7726] Getting the next request at index: 3 
Debug.js:108 [7726] SegmentBase: 3 / 10 
Debug.js:108 [7928] Buffered Range for type: video : 0  -  4 
Debug.js:108 [7931] ThroughputRule requesting switch to index:  7 type:  video Average throughput 15475 kbps 
Debug.js:108 [7931] Switch history rule index: 6 samples: 6 drops: 3 
Debug.js:108 [7932] AbrController (video) switch from 7 to 6/7 (buffer: 3.612)
{"index":6,"drops":3,"noDrops":3,"dropSize":20} 
Debug.js:108 [8107] Init fragment finished loading saving to video's init cache 
Debug.js:108 [8108] Buffered Range for type: video : 0  -  4 
Debug.js:108 [8109] Switch history rule index: 6 samples: 7 drops: 4 
Debug.js:108 [8110] AbrController (video) stay on 6/7 (buffer: 3.432) 
Debug.js:108 [8110] Getting the request for video time : 4.001241 
Debug.js:108 [8110] Index for video time 4.001241 is 3 
Debug.js:108 [8111] SegmentBase: 3 / 10 
Debug.js:108 [8111] Getting the next request at index: 4 
Debug.js:108 [8111] SegmentBase: 4 / 10 
Debug.js:108 [8210] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 48696 kbps 
Debug.js:108 [8211] AbrController (audio) stay on 0/0 (buffer: 1.649) 
Debug.js:108 [8211] Prior to making a request for time, NextFragmentRequestRule is aligning index handler's currentTime with bufferedRange.end. 1.9504761904761905  was changed to  1.996915 
Debug.js:108 [8212] Getting the request for audio time : 1.996915 
Debug.js:108 [8212] Index for audio time 1.996915 is 1 
Debug.js:108 [8212] SegmentBase: 0.9520181405895691 / 10 
Debug.js:108 [8213] Getting the next request at index: 2 
Debug.js:108 [8213] SegmentBase: 1.9504761904761905 / 10 
Debug.js:108 [8394] Buffered Range for type: audio : 0.046439  -  2.995373 
Debug.js:108 [8399] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 32907 kbps 
Debug.js:108 [8399] AbrController (audio) stay on 0/0 (buffer: 2.141) 
Debug.js:108 [8400] Prior to making a request for time, NextFragmentRequestRule is aligning index handler's currentTime with bufferedRange.end. 2.948934240362812  was changed to  2.995373 
Debug.js:108 [8400] Getting the request for audio time : 2.995373 
Debug.js:108 [8400] Index for audio time 2.995373 is 2 
Debug.js:108 [8400] SegmentBase: 1.9504761904761905 / 10 
Debug.js:108 [8401] Getting the next request at index: 3 
Debug.js:108 [8401] SegmentBase: 2.948934240362812 / 10 
Debug.js:108 [8461] Buffered Range for type: video : 0  -  5 
Debug.js:108 [8464] ThroughputRule requesting switch to index:  7 type:  video Average throughput 15475 kbps 
Debug.js:108 [8464] Switch history rule index: 6 samples: 8 drops: 4 
Debug.js:108 [8465] AbrController (video) stay on 6/7 (buffer: 4.079) 
Debug.js:108 [8465] Getting the request for video time : 5.0014259999999995 
Debug.js:108 [8466] Index for video time 5.0014259999999995 is 4 
Debug.js:108 [8466] SegmentBase: 4 / 10 
Debug.js:108 [8467] Getting the next request at index: 5 
Debug.js:108 [8467] SegmentBase: 5 / 10 
Debug.js:108 [8580] Buffered Range for type: audio : 0.046439  -  3.993831 
Debug.js:108 [8582] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 49496 kbps 
Debug.js:108 [8582] AbrController (audio) stay on 0/0 (buffer: 2.954) 
Debug.js:108 [8583] Prior to making a request for time, NextFragmentRequestRule is aligning index handler's currentTime with bufferedRange.end. 3.947392290249433  was changed to  3.993831 
Debug.js:108 [8583] Getting the request for audio time : 3.993831 
Debug.js:108 [8583] Index for audio time 3.993831 is 3 
Debug.js:108 [8583] SegmentBase: 2.948934240362812 / 10 
Debug.js:108 [8584] Getting the next request at index: 4 
Debug.js:108 [8584] SegmentBase: 3.947392290249433 / 10 
Debug.js:108 [8660] Buffered Range for type: video : 0  -  6 
Debug.js:108 [8663] ThroughputRule requesting switch to index:  7 type:  video Average throughput 15475 kbps 
Debug.js:108 [8663] Switch history rule index: 6 samples: 8 drops: 3 
Debug.js:108 [8663] AbrController (video) stay on 6/7 (buffer: 4.879) 
Debug.js:108 [8663] Getting the request for video time : 6.001295 
Debug.js:108 [8664] Index for video time 6.001295 is 5 
Debug.js:108 [8664] SegmentBase: 5 / 10 
Debug.js:108 [8664] Getting the next request at index: 6 
Debug.js:108 [8665] SegmentBase: 6 / 10 
Debug.js:108 [8766] Buffered Range for type: audio : 0.046439  -  4.992289 
Debug.js:108 [8769] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 49172 kbps 
Debug.js:108 [8769] Switch history rule index: 0 samples: 6 drops: 2 
Debug.js:108 [8770] AbrController (audio) stay on 0/0 (buffer: 3.766) 
Debug.js:108 [8770] Prior to making a request for time, NextFragmentRequestRule is aligning index handler's currentTime with bufferedRange.end. 4.9458503401360545  was changed to  4.992289 
Debug.js:108 [8770] Getting the request for audio time : 4.992289 
Debug.js:108 [8771] Index for audio time 4.992289 is 4 
Debug.js:108 [8771] SegmentBase: 3.947392290249433 / 10 
Debug.js:108 [8771] Getting the next request at index: 5 
Debug.js:108 [8771] SegmentBase: 4.9458503401360545 / 10 
Debug.js:108 [9868] Buffered Range for type: video : 0  -  7 
Debug.js:108 [9870] ThroughputRule requesting switch to index:  7 type:  video Average throughput 15475 kbps 
Debug.js:108 [9870] Switch history rule index: 6 samples: 8 drops: 2 
Debug.js:108 [9871] AbrController (video) stay on 6/7 (buffer: 4.672) 
Debug.js:108 [9871] Getting the request for video time : 7.00137 
Debug.js:108 [9871] Index for video time 7.00137 is 6 
Debug.js:108 [9871] SegmentBase: 6 / 10 
Debug.js:108 [9872] Getting the next request at index: 7 
Debug.js:108 [9872] SegmentBase: 7 / 10 
Debug.js:108 [10600] Buffered Range for type: video : 0  -  8 
Debug.js:108 [10602] ThroughputRule requesting switch to index:  7 type:  video Average throughput 9927 kbps 
Debug.js:108 [10602] Switch history rule index: 6 samples: 8 drops: 2 
Debug.js:108 [10603] AbrController (video) stay on 6/7 (buffer: 4.94) 
Debug.js:108 [10603] Getting the request for video time : 8 
Debug.js:108 [10603] Index for video time 8 is 7 
Debug.js:108 [10603] SegmentBase: 7 / 10 
Debug.js:108 [10604] Getting the next request at index: 8 
Debug.js:108 [10604] SegmentBase: 8 / 10 
Debug.js:108 [10832] Buffered Range for type: audio : 0.046439  -  5.990747 
Debug.js:108 [10834] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 3391 kbps 
Debug.js:108 [10834] Switch history rule index: 0 samples: 7 drops: 2 
Debug.js:108 [10834] AbrController (audio) stay on 0/0 (buffer: 2.699) 
Debug.js:108 [10835] Prior to making a request for time, NextFragmentRequestRule is aligning index handler's currentTime with bufferedRange.end. 5.944308390022676  was changed to  5.990747 
Debug.js:108 [10835] Getting the request for audio time : 5.990747 
Debug.js:108 [10835] Index for audio time 5.990747 is 5 
Debug.js:108 [10835] SegmentBase: 4.9458503401360545 / 10 
Debug.js:108 [10836] Getting the next request at index: 6 
Debug.js:108 [10836] SegmentBase: 5.944308390022676 / 10 
Debug.js:108 [11087] Buffered Range for type: video : 0  -  9 
Debug.js:108 [11090] ThroughputRule requesting switch to index:  7 type:  video Average throughput 8319 kbps 
Debug.js:108 [11091] Switch history rule index: 6 samples: 8 drops: 1 
Debug.js:108 [11091] AbrController (video) stay on 6/7 (buffer: 5.453) 
Debug.js:108 [11091] Getting the request for video time : 9 
Debug.js:108 [11091] Index for video time 9 is 8 
Debug.js:108 [11091] SegmentBase: 8 / 10 
Debug.js:108 [11092] Getting the next request at index: 9 
Debug.js:108 [11092] SegmentBase: 9 / 10 
Debug.js:108 [11123] Buffered Range for type: audio : 0.046439  -  6.989205 
Debug.js:108 [11125] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 5364 kbps 
Debug.js:108 [11125] Switch history rule index: 0 samples: 8 drops: 2 
Debug.js:108 [11126] AbrController (audio) stay on 0/0 (buffer: 3.406) 
Debug.js:108 [11126] Prior to making a request for time, NextFragmentRequestRule is aligning index handler's currentTime with bufferedRange.end. 6.942766439909297  was changed to  6.989205 
Debug.js:108 [11126] Getting the request for audio time : 6.989205 
Debug.js:108 [11126] Index for audio time 6.989205 is 6 
Debug.js:108 [11126] SegmentBase: 5.944308390022676 / 10 
Debug.js:108 [11127] Getting the next request at index: 7 
Debug.js:108 [11127] SegmentBase: 6.942766439909297 / 10 
Debug.js:108 [11358] Buffered Range for type: video : 0  -  10 
Debug.js:108 [11360] ThroughputRule requesting switch to index:  7 type:  video Average throughput 7957 kbps 
Debug.js:108 [11361] Switch history rule index: 6 samples: 8 drops: 1 
Debug.js:108 [11361] AbrController (video) stay on 6/7 (buffer: 6.181) 
Debug.js:108 [11361] Getting the request for video time : 10 
Debug.js:108 [11362] Index for video time 10 is 9 
Debug.js:108 [11362] SegmentBase: 9 / 10 
Debug.js:108 [11363] Getting the next request at index: 10 
Debug.js:108 [11363] Signal complete. 
Debug.js:108 [11363] Schedule controller stopping for video 
Debug.js:108 [11364] Stream is complete 
Debug.js:108 [11380] Buffered Range for type: audio : 0.046439  -  7.987663 
Debug.js:108 [11382] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 6262 kbps 
Debug.js:108 [11383] Switch history rule index: 0 samples: 8 drops: 1 
Debug.js:108 [11383] AbrController (audio) stay on 0/0 (buffer: 4.147) 
Debug.js:108 [11383] Prior to making a request for time, NextFragmentRequestRule is aligning index handler's currentTime with bufferedRange.end. 7.9412244897959186  was changed to  7.987663 
Debug.js:108 [11384] Getting the request for audio time : 7.987663 
Debug.js:108 [11384] Index for audio time 7.987663 is 7 
Debug.js:108 [11384] SegmentBase: 6.942766439909297 / 10 
Debug.js:108 [11384] Getting the next request at index: 8 
Debug.js:108 [11384] SegmentBase: 7.9412244897959186 / 10 
Debug.js:108 [11575] Buffered Range for type: audio : 0.046439  -  8.986121 
Debug.js:108 [11578] ThroughputRule requesting switch to index:  0 type:  audio Average throughput 6709 kbps 
Debug.js:108 [11578] AbrController (audio) stay on 0/0 (buffer: 4.95) 
Debug.js:108 [11578] Prior to making a request for time, NextFragmentRequestRule is aligning index handler's currentTime with bufferedRange.end. 8.93968253968254  was changed to  8.986121 
Debug.js:108 [11578] Getting the request for audio time : 8.986121 
Debug.js:108 [11579] Index for audio time 8.986121 is 8 
Debug.js:108 [11579] SegmentBase: 7.9412244897959186 / 10 
Debug.js:108 [11579] Getting the next request at index: 9 
Debug.js:108 [11579] SegmentBase: 8.93968253968254 / 10 
Debug.js:108 [11775] Buffered Range for type: audio : 0.046439  -  9.984579 
Debug.js:108 [17269] Buffer is empty! Stalling! 
Debug.js:108 [17269] Waiting for more buffer before starting playback. 
Debug.js:108 [17273] Native video element event: ratechange:  0 
Bug Investigate

All 23 comments

EDIT: updated with completely conformant stream.
Conformance: similar streams - presumably the problem is related to stream ending on segment border - either now pass conformance (edge.flowplayer.org/night[1-6].mpd) - or in one case (edge.flowplayer.org/night7.mpd) fail on the first 2 representations with:

Warning: Unknown atom found "pasp": video sample descriptions would not normally contain this
WARNING: unknown mvex atom 'trep'
WARNING: unknown/unexpected atom 'meta'
### error: 
### Buffer underrun conformance error: first (and only one reported here) for sample 1 of run 1 of track fragment 1 of fragment 9 of track id 1 (sample absolute file offset 127648, fragment absolute file offset 127316, bandwidth: 121008)

Which seems weird as all 7 are encoded the same way.
But issue is there regardless of conformance, and 2.4.1 works fine with all of them, even with their previous versions which had more conformance errors like the above.

Bisected several times to 29c0eff76aa84e1d1924c9b71cd7a8514a54e010 as first bad commit.
Disclaimer: take result with a certain amount of caution because browser cache persistence can interfere, but I tried as best as I could

Reverting 29c0eff fixes the problem for me[tm].

Ping ;-)

Working in nightly - looping each time. Can you try here
http://reference.dashif.org/dash.js/nightly/samples/dash-if-reference-player/index.html

@AkamaiDASH - thanks, but, no, for me it's still the same problem, sorry.

@AkamaiDASH - did you really try with e.g. https://edge.flowplayer.org/night4.mpd ?

It works rather well in Chrome, but not 100% reliably, but almost never in Firefox or Safari.

@AkamaiDASH - if I do the equivalent to reverting 29c0eff on the latest development:

diff --git a/src/streaming/controllers/StreamController.js b/src/streaming/controllers/StreamController.js
index 1db74493..6187a61e 100644
--- a/src/streaming/controllers/StreamController.js
+++ b/src/streaming/controllers/StreamController.js
@@ -305,6 +305,7 @@ function StreamController() {
         if (oldStream) oldStream.deactivate();
         activeStream = newStream;
         playbackController.initialize(activeStream.getStreamInfo());
+        videoTrackDetected = checkTrackPresence(Constants.VIDEO);

         //TODO detect if we should close and repose or jump to activateStream.
         openMediaSource(seekTime);
@@ -349,8 +350,6 @@ function StreamController() {
                 });
                 playbackController.seek(startTime); //seek to period start time
             }
-        } else {
-            videoTrackDetected = checkTrackPresence(Constants.VIDEO);
         }

         activeStream.startEventController();

the problem again goes away.

ping ;-) this problem is still present in Firefox 55, and arguably it's somewhat basic.

It turns out 29c0eff was exposing the problem not causing it. The problem was caused by an incorrect audio buffer target when a video track is present. Before 29c0eff the video track present check was (incorrectly) always returning false, circumventing the real issue. Fixed in #2122.

@spiterikevin - indeed your change seems to solve the problem.
Thanks a bunch!

@spiterikevin - hm, there's still trouble with some streams, for instance http://edge.flowplayer.org/moon.mpd - again, no problem with the revert hack.
Addendum: let's hope it was a caching issue, it seems to work now. I'll keep an eye on it.

No. It's better, but not as reliable as the "broken" approach, which _always_ works in this regard. Especially in Firefox with empty cache, starting, and jump seeking towards the end.
I _want_ it to work, but ... and otherwise I see lots of improvements, e.g. with multiperiod etc. Pity.
I'll try some more in the next couple of days.

And when it hangs, the following is repeated over and over in the console:

[Log] [28148] getNextFragment - Playing at the bleeding live edge and frag is not available yet  (dash.all.min.js, line 18)
[Log] [28161] Switch to index 0; buffer is empty.  (dash.all.min.js, line 18)
[Log] [28161] AbrController (video) stay on 0/7 (buffer: 0)  (dash.all.min.js, line 18)
[Log] [28161] ScheduleController - getNextFragment  (dash.all.min.js, line 18)

HTH.

Interesting. I am reproducing this error, but it is not as consistently reproducible. And I'm also occasionally getting it even with the revert fix. I don't yet understand what's going on and will look into it more.

@spiterikevin - much appreciated.

@blacktrash I have submitted two related PRs, #2128 and #2130. They are related to this issue. Do they help?

@blacktrash Yes, that's what I meant. Thank you for flagging the issue and testing it.

@spiterikevin - thank _you_.

@spiterikevin - I did not follow the fate of your patches closely, but from my perspective all seems fine with v2.6.0.

@blacktrash, closing this issue as it seems to be fixed. Please, feel free to reopen it in case you can reproduce the issue again.

Many thanks!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

fvalleeHbbTV picture fvalleeHbbTV  路  3Comments

herrsiim picture herrsiim  路  3Comments

ruslandinov picture ruslandinov  路  4Comments

qchroman picture qchroman  路  4Comments

budziq picture budziq  路  5Comments