Skip to content

DASH: Implement Manifest-chaining#1640

Open
peaBerberian wants to merge 2 commits intodevfrom
feat/chained-manifest
Open

DASH: Implement Manifest-chaining#1640
peaBerberian wants to merge 2 commits intodevfrom
feat/chained-manifest

Conversation

@peaBerberian
Copy link
Copy Markdown
Collaborator

@peaBerberian peaBerberian commented Jan 30, 2025

NOTE: To facilitate tests, I deployed that work on the https://developers.canal-plus.com/rx-player/mpd-chaining demo page

This is a very naive implementation of the DASH Manifest chaining concept which allows to signal a next content to load from the first content's MPD. Use cases we've heard of are mainly pre-roll or post-roll contents (basically ad before and after a content) including for live contents.

I only handle the chaining at the end of the previous content for now. There is a second situation "Fallback Chaining" which is supposed to do so at the "failure" of a content that I do not yet handle as it poses much more questions in terms of RxPlayer API.

Even in that very simple chaining after ENDED, there is still some API question left: should we send an event when chaining? What loadVideo options should we set, should we ask the application? How can an application configure the start time of one of the chained content?

To note also that some other players preload the future content at the end of the previous one with the goal of having a lower transition time, I saw mainly the shaka-player with this. The RxPlayer has no preload concept yet.

@peaBerberian peaBerberian added the DASH Relative to the DASH streaming protocol label Jan 30, 2025
@peaBerberian peaBerberian added the Priority: 3 (Low) This issue or PR has a low priority. label Feb 26, 2025
@peaBerberian peaBerberian force-pushed the dev branch 2 times, most recently from 00fc806 to b7216b4 Compare April 15, 2025 18:14
@peaBerberian peaBerberian force-pushed the feat/chained-manifest branch 4 times, most recently from c0a3466 to d66ff3d Compare April 22, 2025 20:03
@peaBerberian peaBerberian force-pushed the feat/chained-manifest branch from d66ff3d to eb1454b Compare June 30, 2025 10:17
@canalplus canalplus deleted a comment from github-actions bot Jun 30, 2025
@canalplus canalplus deleted a comment from github-actions bot Jun 30, 2025
@canalplus canalplus deleted a comment from github-actions bot Jun 30, 2025
@peaBerberian peaBerberian force-pushed the feat/chained-manifest branch from eb1454b to ade0ad6 Compare July 8, 2025 10:43
@peaBerberian peaBerberian force-pushed the feat/chained-manifest branch from ade0ad6 to 67030a2 Compare August 1, 2025 13:23
@peaBerberian peaBerberian force-pushed the feat/chained-manifest branch 3 times, most recently from 0182497 to bfe3a20 Compare August 29, 2025 18:03
@canalplus canalplus deleted a comment from github-actions bot Aug 29, 2025
@canalplus canalplus deleted a comment from github-actions bot Aug 29, 2025
@canalplus canalplus deleted a comment from github-actions bot Aug 29, 2025
@canalplus canalplus deleted a comment from github-actions bot Aug 29, 2025
@peaBerberian peaBerberian force-pushed the dev branch 8 times, most recently from 6d4fed2 to 9b856a5 Compare September 25, 2025 15:56
@canalplus canalplus deleted a comment from github-actions bot Sep 26, 2025
@peaBerberian peaBerberian force-pushed the feat/chained-manifest branch 2 times, most recently from fb9f7ed to 13be225 Compare October 10, 2025 09:08
@peaBerberian peaBerberian force-pushed the dev branch 4 times, most recently from 6cfd206 to 1e55170 Compare October 13, 2025 20:54
@peaBerberian peaBerberian force-pushed the dev branch 2 times, most recently from d4be192 to 9ad6758 Compare December 19, 2025 19:49
@peaBerberian peaBerberian force-pushed the dev branch 9 times, most recently from 0142e34 to 1fd9df3 Compare January 27, 2026 11:59
@github-actions
Copy link
Copy Markdown

✅ Automated performance checks have passed on commit 216c111e2026390360ee01a5f65121973a66990d with the base branch dev.

Details

Performance tests 1st run output

No significative change in performance for tests:

Name Mean Median
loading 24.55ms -> 24.88ms (-0.327ms, z: 0.41297) 34.95ms -> 34.95ms
seeking 422.24ms -> 426.92ms (-4.679ms, z: 0.55685) 1518.30ms -> 1516.35ms
audio-track-reload 31.53ms -> 31.54ms (-0.002ms, z: 0.43421) 47.10ms -> 47.10ms
cold loading multithread 50.48ms -> 49.90ms (0.578ms, z: 10.19429) 74.55ms -> 73.65ms
seeking multithread 56.02ms -> 45.31ms (10.704ms, z: 0.46676) 19.55ms -> 19.50ms
audio-track-reload multithread 30.10ms -> 29.92ms (0.182ms, z: 1.98375) 43.95ms -> 43.95ms
hot loading multithread 19.88ms -> 19.67ms (0.217ms, z: 4.00063) 28.95ms -> 28.80ms

@canalplus canalplus deleted a comment from github-actions bot Feb 27, 2026
@canalplus canalplus deleted a comment from github-actions bot Feb 27, 2026
@canalplus canalplus deleted a comment from github-actions bot Feb 27, 2026
@canalplus canalplus deleted a comment from github-actions bot Feb 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

DASH Relative to the DASH streaming protocol Priority: 3 (Low) This issue or PR has a low priority.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant