From 69fba6113640a094d9ae86be6dca62122932e6f7 Mon Sep 17 00:00:00 2001 From: Joe Wearing Date: Tue, 7 Apr 2026 15:19:10 +0100 Subject: [PATCH 1/3] chore: updated dash.js (v4.7.3-19) --- package-lock.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8b2c9abf..77357bdd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "hasInstallScript": true, "license": "Apache-2.0", "dependencies": { - "dashjs": "github:bbc/dash.js#smp-v4.7.3-18", + "dashjs": "github:bbc/dash.js#smp-v4.7.3-19", "smp-imsc": "github:bbc/imscJS#v1.0.11" }, "devDependencies": { diff --git a/package.json b/package.json index 4c8b7524..08a1e5e8 100644 --- a/package.json +++ b/package.json @@ -63,7 +63,7 @@ "typescript-eslint": "7.2.0" }, "dependencies": { - "dashjs": "github:bbc/dash.js#smp-v4.7.3-18", + "dashjs": "github:bbc/dash.js#smp-v4.7.3-19", "smp-imsc": "github:bbc/imscJS#v1.0.11" }, "repository": { From 9a6a9eb9269591205325230b59b16bdac74bd00d Mon Sep 17 00:00:00 2001 From: Joe Wearing Date: Tue, 21 Apr 2026 16:14:03 +0100 Subject: [PATCH 2/3] chore: removed uhd override from legacy adaper's disableSentinels check --- src/playbackstrategy/legacyplayeradapter.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/playbackstrategy/legacyplayeradapter.js b/src/playbackstrategy/legacyplayeradapter.js index 61257c89..43884f02 100644 --- a/src/playbackstrategy/legacyplayeradapter.js +++ b/src/playbackstrategy/legacyplayeradapter.js @@ -10,7 +10,7 @@ function LegacyPlayerAdapter(mediaSources, playbackElement, isUHD, player) { const setSourceOpts = { disableSentinels: - !!isUHD && manifestType === ManifestType.DYNAMIC && window.bigscreenPlayer?.overrides?.liveUhdDisableSentinels, + manifestType === ManifestType.DYNAMIC && window.bigscreenPlayer?.overrides?.liveUhdDisableSentinels, disableSeekSentinel: !!window.bigscreenPlayer?.overrides?.disableSeekSentinel, } From e63715a7e38a449aff8c0b8ff9a2ae176e381b00 Mon Sep 17 00:00:00 2001 From: Joe Wearing Date: Wed, 22 Apr 2026 10:30:18 +0100 Subject: [PATCH 3/3] chore: remove uhd sentinel override --- docs/tutorials/01-settings-and-overrides.md | 1 - src/playbackstrategy/legacyplayeradapter.js | 3 +-- .../legacyplayeradapter.test.js | 27 ------------------- 3 files changed, 1 insertion(+), 30 deletions(-) diff --git a/docs/tutorials/01-settings-and-overrides.md b/docs/tutorials/01-settings-and-overrides.md index f61c33ce..8d560f55 100644 --- a/docs/tutorials/01-settings-and-overrides.md +++ b/docs/tutorials/01-settings-and-overrides.md @@ -17,7 +17,6 @@ In order to add an override, simply add an override object to the `window.bigscr | `restartTimeout` | This is used after a seek attempted to ensure that a seek has happened correctly. | number | | `disableMediaSourceUnload` | When tearing down in HTML5 we unload the source as part of the html5 spec. This prevents this from happening as it was causing issues on devices. | boolean | | `legacySubtitles` | This can be used to render subtitles using our legacy method, rather than the new method which utilises the third party imscJS library. | boolean | -| `liveUhdDisableSentinels` | Disables any sentinels when consuming live UHD content | boolean | | `cacheSeekableRange` | Caches the seekable range so it can't be requested more than every 250ms for devices that struggle. | boolean | | `resetMSEPlayer` | Forces the `dash.js` MediaPlayer and HTML MediaElement to be fully destroyed/removed when `reset()` is called on the MSE Strategy. Reset is called from `playerComponent.js` on a CDN failover, and usually does nothing (allowing a new source to be attached to the current Media Player). | boolean | diff --git a/src/playbackstrategy/legacyplayeradapter.js b/src/playbackstrategy/legacyplayeradapter.js index 43884f02..03bf4640 100644 --- a/src/playbackstrategy/legacyplayeradapter.js +++ b/src/playbackstrategy/legacyplayeradapter.js @@ -9,8 +9,7 @@ function LegacyPlayerAdapter(mediaSources, playbackElement, isUHD, player) { const manifestType = mediaSources.time().manifestType const setSourceOpts = { - disableSentinels: - manifestType === ManifestType.DYNAMIC && window.bigscreenPlayer?.overrides?.liveUhdDisableSentinels, + disableSentinels: false, disableSeekSentinel: !!window.bigscreenPlayer?.overrides?.disableSeekSentinel, } diff --git a/src/playbackstrategy/legacyplayeradapter.test.js b/src/playbackstrategy/legacyplayeradapter.test.js index a60912ef..0f501bcf 100644 --- a/src/playbackstrategy/legacyplayeradapter.test.js +++ b/src/playbackstrategy/legacyplayeradapter.test.js @@ -239,33 +239,6 @@ describe("Legacy Playback Adapter", () => { } ) - it("should disable all sentinels for a dynamic UHD stream when configured to do so", () => { - window.bigscreenPlayer.overrides = { - liveUhdDisableSentinels: true, - } - - mockMediaSources.time.mockReturnValueOnce({ manifestType: ManifestType.DYNAMIC }) - mockMediaSources.currentSource.mockReturnValueOnce("mock://media.src/") - - const isUHD = true - const mediaPlayer = createMockMediaPlayer() - - const legacyAdapter = LegacyAdapter(mockMediaSources, playbackElement, isUHD, mediaPlayer) - - legacyAdapter.load("video/mp4") - - expect(mediaPlayer.initialiseMedia).toHaveBeenCalledWith( - "video", - "mock://media.src/", - "video/mp4", - playbackElement, - { - disableSeekSentinel: false, - disableSentinels: true, - } - ) - }) - it("should disable seek sentinels if we are configured to do so", () => { window.bigscreenPlayer.overrides = { disableSeekSentinel: true,