Skip to content

docs(cmaf-ham): cross-implementation comparison (avia-js and video.js) - #376

Draft
littlespex wants to merge 2 commits into
mainfrom
docs/cmaf-ham-cross-implementation
Draft

docs(cmaf-ham): cross-implementation comparison (avia-js and video.js)#376
littlespex wants to merge 2 commits into
mainfrom
docs/cmaf-ham-cross-implementation

Conversation

@littlespex

Copy link
Copy Markdown
Collaborator

Neutral design note comparing how avia-js and video.js v10 SPF independently extended CMAF-HAM.

Converged independently (candidates to adopt): an AddressableObject primitive ({ url, byteRange?: { start, end } }), initialization typed as an addressable object (replacing urlInitialization: string), splitting mimeType from codecs, 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.

…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>
@littlespex
littlespex requested review from a team as code owners July 9, 2026 20:21
Copilot AI review requested due to automatic review settings July 9, 2026 20:21

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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, initialization as an object, mimeType/codecs split, 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
littlespex marked this pull request as draft July 9, 2026 20:23
@littlespex
littlespex requested a review from cjpillsbury July 9, 2026 20:23
Signed-off-by: Casey Occhialini <1508707+littlespex@users.noreply.github.com>
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