Skip to content

[WIP] [Proposal] Rename stream submodules to improve readability#1795

Open
peaBerberian wants to merge 1 commit intodevfrom
refacto
Open

[WIP] [Proposal] Rename stream submodules to improve readability#1795
peaBerberian wants to merge 1 commit intodevfrom
refacto

Conversation

@peaBerberian
Copy link
Collaborator

@peaBerberian peaBerberian commented Feb 9, 2026

While working on the Stream (the module and submodules determining which segments need to be loaded), I thought that the current architecture was relatively difficult to follow. For example, the submodules inside it are hierarchical and follow a StreamOrchestrator > PeriodStream > AdaptationStream > RepresentationStream path.

It makes relative sense when you know DASH and think a little about it, but I feel that it could be improved on.

For now, I'm not set on what we could name it, I just searched-and-replaced and tried different things.
Notably, directories inside src/core/stream are now numbered and indicates what job they have:

1-Period_selection/
2-Track_selection/   
3-Representation_selection/
4-Segment_selection/

(instead of orchestrator/, period/, adaptation/ and representation/ respectively)

And the modules themselves have also been renamed for what they do (e.g. TrackSelector) instead of the DASH abstraction level they're at like before (like PeriodStream). But I'm still not 100% happy with that.

This is background work not important for the other work I was doing (which is implementing more resilience on decoding errors) but it is something I saw so I thought I would open a PR so we can think about how we could improve on this.

@github-actions
Copy link

github-actions bot commented Feb 9, 2026

✅ Automated performance checks have passed on commit 3462b5ea13f07c28b91e7f2f1d92ec1a2ef1b372 with the base branch unit-tests.

Details

Performance tests 1st run output

No significative change in performance for tests:

Name Mean Median
loading 23.96ms -> 24.24ms (-0.271ms, z: 0.39638) 34.20ms -> 34.20ms
seeking 496.94ms -> 479.12ms (17.818ms, z: 0.16928) 1513.35ms -> 1513.65ms
audio-track-reload 30.45ms -> 30.45ms (0.004ms, z: 0.54886) 45.30ms -> 45.30ms
cold loading multithread 49.06ms -> 49.18ms (-0.121ms, z: 12.87448) 72.60ms -> 71.55ms
seeking multithread 50.41ms -> 38.99ms (11.423ms, z: 1.63793) 18.00ms -> 18.00ms
audio-track-reload multithread 28.65ms -> 28.75ms (-0.102ms, z: 1.08275) 42.30ms -> 42.15ms
hot loading multithread 18.69ms -> 18.82ms (-0.128ms, z: 4.24912) 27.60ms -> 27.30ms

@github-actions
Copy link

✅ Automated performance checks have passed on commit 3f4be023f584988bb9c6ec0df4e8bf4bcdd86291 with the base branch unit-tests.

Details

Performance tests 1st run output

No significative change in performance for tests:

Name Mean Median
loading 24.69ms -> 24.79ms (-0.102ms, z: 1.32758) 35.10ms -> 34.95ms
seeking 441.65ms -> 444.88ms (-3.233ms, z: 0.04873) 1515.75ms -> 1515.30ms
audio-track-reload 31.12ms -> 31.16ms (-0.035ms, z: 0.55678) 46.35ms -> 46.35ms
cold loading multithread 50.32ms -> 50.05ms (0.279ms, z: 12.27503) 74.25ms -> 73.05ms
seeking multithread 42.25ms -> 47.66ms (-5.414ms, z: 0.44458) 18.90ms -> 18.90ms
audio-track-reload multithread 29.59ms -> 29.37ms (0.225ms, z: 2.49557) 43.35ms -> 43.20ms
hot loading multithread 19.40ms -> 19.29ms (0.115ms, z: 4.45826) 28.35ms -> 28.05ms

@peaBerberian peaBerberian changed the base branch from unit-tests to dev February 10, 2026 15:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant