docs(cmaf-ham): cross-implementation comparison (avia-js and video.js) - #376
Draft
littlespex wants to merge 2 commits into
Draft
docs(cmaf-ham): cross-implementation comparison (avia-js and video.js)#376littlespex wants to merge 2 commits into
littlespex wants to merge 2 commits into
Conversation
…o.js) Neutral design note / RFC input for the Players & Playback working group. Maps where avia-js and video.js v10 SPF independently converged when extending CMAF-HAM (addressable object, initialization-as-object, mimeType+codecs split, set discriminators) and where they diverge (parent-navigation/JSON, timing redundancy, not-resolved-yet, extensibility). Includes side-by-side object graphs and a comparison matrix. Signed-off-by: Casey Occhialini <1508707+littlespex@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Adds an implementer-neutral design note to the CMAF-HAM docs set, comparing how avia-js and video.js v10 SPF independently extended the HAM model to surface areas of convergence (strong candidates for adoption in @svta/cml-cmaf-ham) and divergence (open questions for the SVTA Players & Playback working group).
Changes:
- Introduces a cross-implementation comparison write-up covering convergences (e.g.,
AddressableObject,initializationas an object,mimeType/codecssplit, set-layer discriminators). - Documents key divergences as explicit design questions (parent navigation vs. JSON-serializability, timing redundancy, unresolved signaling, layer extension strategy, etc.).
- Includes a comparison matrix and side-by-side mermaid diagrams to make structural differences concrete.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
littlespex
marked this pull request as draft
July 9, 2026 20:23
Signed-off-by: Casey Occhialini <1508707+littlespex@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Neutral design note comparing how avia-js and video.js v10 SPF independently extended CMAF-HAM.
Converged independently (candidates to adopt): an
AddressableObjectprimitive ({ url, byteRange?: { start, end } }),initializationtyped as an addressable object (replacingurlInitialization: string), splittingmimeTypefromcodecs, and track-type discriminators on the switching/selection layers.Diverged (open questions for the Players & Playback working group): (A) parent navigation vs. JSON-serializability, (B) redundant vs. minimal timing, (C) signaling "not resolved yet", (D) layer extension. A and B point in opposite directions, and video.js's choices preserve the acyclic / JSON-serializable invariant.
Doc:
docs/superpowers/specs/2026-07-09-cmaf-ham-cross-implementation-comparison.md(side-by-side object graphs + the full comparison matrix inside).Opening for review by the video.js maintainers first; the open questions will go to a working-group Discussion once we have reviewed here.