Skip to content

Register locmaf packaging referencing draft-einarsson-moq-locmaf - #27

Open
tobbee wants to merge 2 commits into
moq-wg:mainfrom
Eyevinn:locmaf-packaging
Open

tobbee wants to merge 2 commits into
moq-wg:mainfrom
Eyevinn:locmaf-packaging

Conversation

@tobbee

@tobbee tobbee commented Jul 7, 2026 •

Copy link
Copy Markdown
Contributor

Per the London interim, LOCMAF should be added as a packaging in CMSF.

Since LOCMAF is not deeply tied to CMSF, @wilaw in moq-wg/msf#24 suggested adding a reference to a standalone draft draft-einarsson-moq-locmaf-01 rather than the full format being folded into CMSF. This also has the advantage that one draft can be updated without the other.

This PR references LOCMAF as a new packaging option in CMSF and defines how it is signaled.

  • Adds LOCMAF as a normative reference.
  • Adds a short LOCMAF Packaging section registering the locmaf packaging value (Table 3) and a mandatory-when-locmaf locmafVersion track field ("major.minor", e.g. "0.3").
  • LOCMAF reuses CMSF init (initRef), switching/Group/Object rules, and DRM (contentProtectionRefIDs) unchanged; only the Object-payload encoding differs, and that is specified entirely in [LOCMAF].

Fixes: #24
Fixes: #28

Reference LOCMAF (draft-einarsson-moq-locmaf-01) as a new packaging
option rather than folding it into CMSF (per moq-wg#24 and the London interim):

- add LOCMAF as a normative reference
- add a short LOCMAF Packaging section registering the "locmaf"
  packaging value (Table 3) and a mandatory-when-locmaf "locmafVersion"
  track field ("major.minor", e.g. "0.3")
- LOCMAF reuses CMSF init (initRef), switching/Group/Object rules, and
  DRM (contentProtectionRefIDs) unchanged; only the Object-payload
  encoding differs, specified entirely in [LOCMAF]
Comment thread draft-ietf-moq-cmsf.md Outdated
a "packaging" type value of "locmaf".

### LOCMAF version {#locmafversion}
Location: T Required: Conditional JSON Type: String

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Suggested change
Location: T Required: Conditional JSON Type: String
Required: Conditional JSON Type: String Location: Track Object

@tobbee tobbee Jul 8, 2026 •

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Your suggested format aligns with MSF, but not with what is used in this CMSF draft:

#### Max Object SAP starting type {#maxobjsapstartingtype}
Location: T    Required: Optional   JSON Type: Number

### Content Protections {#contentprotections}
Location: R    Required: Optional   JSON Type: Array
...

However Locations: T, R, CP, DS are not defined as far as I can see.
It is probably a good idea to adopt the same format as MSF for all values, but I keep this for now.

Comment thread draft-ietf-moq-cmsf.md Resolved
Comment thread draft-ietf-moq-cmsf.md Resolved
Made a better catalog example combining cmaf and locmaf,
and showing the great benefit for audio.
@avelad

avelad commented Sep 2, 2026

Copy link
Copy Markdown

Any update?

This branch has not been deployed

No deployments
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.

LOCMAF reference Incorporate LOCMAF as a packaging mode in CMSF

3 participants