From 4c74a490320a0587f686b49caac5d3988be36148 Mon Sep 17 00:00:00 2001 From: Vasily Date: Wed, 15 Apr 2020 19:29:21 +0300 Subject: [PATCH] Fix .ass subtitles not starting on mobile --- src/components/htmlMediaHelper.js | 4 +++- src/components/htmlvideoplayer/plugin.js | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/components/htmlMediaHelper.js b/src/components/htmlMediaHelper.js index 7df38a6c87..8026110e21 100644 --- a/src/components/htmlMediaHelper.js +++ b/src/components/htmlMediaHelper.js @@ -162,7 +162,7 @@ define(['appSettings', 'browser', 'events'], function (appSettings, browser, eve } } - function seekOnPlaybackStart(instance, element, ticks) { + function seekOnPlaybackStart(instance, element, ticks, onMediaReady) { var seconds = (ticks || 0) / 10000000; @@ -175,6 +175,7 @@ define(['appSettings', 'browser', 'events'], function (appSettings, browser, eve if (element.duration >= seconds) { // media is ready, seek immediately setCurrentTimeIfNeeded(element, seconds); + if (onMediaReady) onMediaReady(); } else { // update video player position when media is ready to be sought var events = ["durationchange", "loadeddata", "play", "loadedmetadata"]; @@ -189,6 +190,7 @@ define(['appSettings', 'browser', 'events'], function (appSettings, browser, eve events.map(function(name) { element.removeEventListener(name, onMediaChange); }); + if (onMediaReady) onMediaReady(); } }; events.map(function (name) { diff --git a/src/components/htmlvideoplayer/plugin.js b/src/components/htmlvideoplayer/plugin.js index bcd3a72ba9..969c2689d8 100644 --- a/src/components/htmlvideoplayer/plugin.js +++ b/src/components/htmlvideoplayer/plugin.js @@ -857,7 +857,9 @@ define(['browser', 'require', 'events', 'apphost', 'loading', 'dom', 'playbackMa loading.hide(); - htmlMediaHelper.seekOnPlaybackStart(self, e.target, self._currentPlayOptions.playerStartPositionTicks); + htmlMediaHelper.seekOnPlaybackStart(self, e.target, self._currentPlayOptions.playerStartPositionTicks, function () { + if (currentSubtitlesOctopus) currentSubtitlesOctopus.resize(); + }); if (self._currentPlayOptions.fullscreen) {