diff --git a/src/streaming/text/TextController.js b/src/streaming/text/TextController.js index c86c948206..41b4906a66 100644 --- a/src/streaming/text/TextController.js +++ b/src/streaming/text/TextController.js @@ -264,7 +264,7 @@ function TextController() { if (streamProcessor && mediaInfosArr) { for (let i = 0; i < mediaInfosArr.length; i++) { - if (mediaInfosArr[i].lang === currentTrackInfo.lang) { + if (mediaInfosArr[i].index === currentTrackInfo.index && mediaInfosArr[i].lang === currentTrackInfo.lang) { streamProcessor.selectMediaInfo(mediaInfosArr[i]); break; } diff --git a/src/streaming/text/TextSourceBuffer.js b/src/streaming/text/TextSourceBuffer.js index dfddae13b9..dd253fc131 100644 --- a/src/streaming/text/TextSourceBuffer.js +++ b/src/streaming/text/TextSourceBuffer.js @@ -301,7 +301,7 @@ function TextSourceBuffer() { textTrackInfo.captionData = captionData; textTrackInfo.lang = mediaInfo.lang; - textTrackInfo.label = mediaInfo.id; // AdaptationSet id (an unsigned int) + textTrackInfo.label = mediaInfo.id ? mediaInfo.id : mediaInfo.index; // AdaptationSet id (an unsigned int) as it's optionnal parameter, use mediaInfo.index textTrackInfo.index = mediaInfo.index; // AdaptationSet index in manifest textTrackInfo.isTTML = checkTTML(); textTrackInfo.defaultTrack = getIsDefault(mediaInfo);