From 34a16e298da4d84930a139e18d35925d729166e2 Mon Sep 17 00:00:00 2001 From: alex-gusev Date: Sun, 6 Oct 2019 16:41:23 +0300 Subject: [PATCH] select audio group on LEVEL_LOADING --- src/controller/audio-track-controller.js | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/controller/audio-track-controller.js b/src/controller/audio-track-controller.js index e440a05325c..da2dab4e557 100644 --- a/src/controller/audio-track-controller.js +++ b/src/controller/audio-track-controller.js @@ -31,6 +31,7 @@ class AudioTrackController extends TaskLoop { Event.MANIFEST_PARSED, Event.AUDIO_TRACK_LOADED, Event.AUDIO_TRACK_SWITCHED, + Event.LEVEL_LOADING, Event.LEVEL_LOADED, Event.ERROR ); @@ -91,8 +92,6 @@ class AudioTrackController extends TaskLoop { onManifestParsed (data) { const tracks = this.tracks = data.audioTracks || []; this.hls.trigger(Event.AUDIO_TRACKS_UPDATED, { audioTracks: tracks }); - - this._selectAudioGroup(this.hls.nextLoadLevel); } /** @@ -143,7 +142,7 @@ class AudioTrackController extends TaskLoop { } /** - * When a level gets loaded, if it has redundant audioGroupIds (in the same ordinality as it's redundant URLs) + * When a level starts loading, if it has redundant audioGroupIds (in the same ordinality as it's redundant URLs) * we are setting our audio-group ID internally to the one set, if it is different from the group ID currently set. * * If group-ID got update, we re-select the appropriate audio-track with this group-ID matching the currently @@ -151,6 +150,15 @@ class AudioTrackController extends TaskLoop { * * @param {*} data */ + onLevelLoading (data) { + this._selectAudioGroup(data.level); + } + + /** + * Runs the same logic when level gets loaded + * + * @param {*} data + */ onLevelLoaded (data) { this._selectAudioGroup(data.level); }