Skip to content

[MT-4732]: Emit ContentSteering as last child of MPD element#21

Merged
JackDunham merged 2 commits into
masterfrom
feature/content-steering-redux
May 6, 2026
Merged

[MT-4732]: Emit ContentSteering as last child of MPD element#21
JackDunham merged 2 commits into
masterfrom
feature/content-steering-redux

Conversation

@JackDunham
Copy link
Copy Markdown

bugfix: Emit ContentSteering as last child of MPD per ISO/IEC 23009-1

DASH-MPD.xsd requires ContentSteering to be the final child of the MPD element, after Period, Metrics, EssentialProperty, SupplementalProperty, UTCTiming, and LeapSecondInformation. Strict XSD validators reject manifests that emit it earlier (lenient players such as dash.js and Shaka tolerate it, masking the bug).

Move the ContentSteering struct field to follow UTCTiming so encoded output matches the schema. Add a regression test asserting that the encoded byte offset of <ContentSteering follows and <UTCTiming.

…O/IEC 23009-1 Amd 1

DASH-MPD.xsd requires ContentSteering to be the final child of the MPD
element, after Period, Metrics, EssentialProperty, SupplementalProperty,
UTCTiming, and LeapSecondInformation. Strict XSD validators reject
manifests that emit it earlier (lenient players such as dash.js and
Shaka tolerate it, masking the bug).

Move the ContentSteering struct field to follow UTCTiming so encoded
output matches the schema. Add a regression test asserting that the
encoded byte offset of <ContentSteering follows </Period> and <UTCTiming.

Refs MT-4732.
@JackDunham JackDunham requested a review from robomac May 6, 2026 16:25
@JackDunham JackDunham merged commit 354e4b9 into master May 6, 2026
1 check passed
@JackDunham JackDunham deleted the feature/content-steering-redux branch May 6, 2026 17:18
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.

2 participants