Skip to content

fix(Reference-UI): Restore LCEVC Dual-track Scalable Integration#5000

Open
v-nova-romas wants to merge 3 commits intoDash-Industry-Forum:developmentfrom
v-novaltd:fix/restore-reference-ui-lcevc-dual-track
Open

fix(Reference-UI): Restore LCEVC Dual-track Scalable Integration#5000
v-nova-romas wants to merge 3 commits intoDash-Industry-Forum:developmentfrom
v-novaltd:fix/restore-reference-ui-lcevc-dual-track

Conversation

@v-nova-romas
Copy link
Copy Markdown
Contributor

@v-nova-romas v-nova-romas commented Apr 1, 2026

Summary

This PR restores MPEG-5 Part 2 LCEVC Dual-track Scalable Integration in the rewritten DASH-IF Reference UI.

The core dash.js LCEVC support was still present, but the new reference UI introduced in #4974 no longer wired the UI to the LCEVC decoder runtime. As a result, LCEVC sample streams still appeared in the catalog and the UI still exposed the LCEVC checkbox, but the reference player no longer initialized the decoder or rendered enhancement output.

What changed

  • reintroduce the reference-player-side LCEVC integration in a dedicated LcevcController
  • load the lcevc_dec.js decoder library in the new reference UI
  • restore the enhancement canvas overlay required for rendered output
  • wire stream selection, load, and stop lifecycle into LCEVC setup/cleanup
  • automatically enable LCEVC for known LCEVC sample streams
  • add unit tests covering LCEVC controller initialization and cleanup behavior
  • adjust ControlBar UI selection logic to correctly highlight the effective selected representation during scalable video playback
  • align Reference UI video metrics with the effective scalable video representation to avoid base-layer-only values being shown during dual-track playback

Notes

This PR only restores the Reference UI integration path. It does not change the core dash.js LCEVC implementation.

Use the active video processor's composite representation when the reference UI needs to reflect the effective scalable video selection. This keeps the control bar bitrate menu aligned with the selected scalable row and updates the stats panel to report the matching video representation details.

The follow-up sample UI changes keep the implementation intentionally small by reusing getCurrentCompositeRepresentation() for video-only display logic while preserving the existing metrics flow for non-video tracks.
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