update missing season creator
This commit is contained in:
@@ -186,7 +186,7 @@ class LevelController extends EventHandler {
|
||||
return;
|
||||
}
|
||||
|
||||
var details = data.details, hls = this.hls, levelId, level;
|
||||
let details = data.details, hls = this.hls, levelId, level, levelError = false;
|
||||
// try to recover not fatal errors
|
||||
switch(details) {
|
||||
case ErrorDetails.FRAG_LOAD_ERROR:
|
||||
@@ -199,6 +199,7 @@ class LevelController extends EventHandler {
|
||||
case ErrorDetails.LEVEL_LOAD_ERROR:
|
||||
case ErrorDetails.LEVEL_LOAD_TIMEOUT:
|
||||
levelId = data.level;
|
||||
levelError = true;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -222,6 +223,10 @@ class LevelController extends EventHandler {
|
||||
hls.abrController.nextAutoLevel = 0;
|
||||
} else if(level && level.details && level.details.live) {
|
||||
logger.warn(`level controller,${details} on live stream, discard`);
|
||||
if (levelError) {
|
||||
// reset this._level so that another call to set level() will retrigger a frag load
|
||||
this._level = undefined;
|
||||
}
|
||||
// FRAG_LOAD_ERROR and FRAG_LOAD_TIMEOUT are handled by mediaController
|
||||
} else if (details !== ErrorDetails.FRAG_LOAD_ERROR && details !== ErrorDetails.FRAG_LOAD_TIMEOUT) {
|
||||
logger.error(`cannot recover ${details} error`);
|
||||
|
||||
Reference in New Issue
Block a user