diff --git a/.changeset/video-containers-3gp-mpeg-m4v.md b/.changeset/video-containers-3gp-mpeg-m4v.md new file mode 100644 index 00000000000..df74c59b395 --- /dev/null +++ b/.changeset/video-containers-3gp-mpeg-m4v.md @@ -0,0 +1,5 @@ +--- +"adcontextprotocol": minor +--- + +Add `3gp`, `mpeg`, and `m4v` to the `containers` enum of the video asset requirements (`core/requirements/video-asset-requirements.json`), so a seller that accepts those files can declare them. Three additive enum values: no existing value changes, and clients already tolerate unknown enum values. Proposed for 3.3 by consent (adcp#8107). diff --git a/docs/reference/3-3-beta.mdx b/docs/reference/3-3-beta.mdx index 8680d9affa0..8ce3e766114 100644 --- a/docs/reference/3-3-beta.mdx +++ b/docs/reference/3-3-beta.mdx @@ -198,7 +198,7 @@ Four proposed records document surfaces merged for beta.0 and await working-grou | Creative and brand | [#5375](https://github.com/adcontextprotocol/adcp/issues/5375) | `build_creative` refinement scope | — | Compliance carries forward across refinement (#7937) | | Creative and brand | [#4282](https://github.com/adcontextprotocol/adcp/issues/4282) | Provenance on listed and delivered creative variants | — | Creative-level `provenance` on `list_creatives` (#8063) | | Creative and brand | [#8048](https://github.com/adcontextprotocol/adcp/issues/8048) | Brand-wide `prohibited_terms` in brand.json | — | `prohibited_terms` on the brand.json brand definition (#8056) | -| Creative and brand | [#8107](https://github.com/adcontextprotocol/adcp/issues/8107) | `3gp`, `mpeg`, and `m4v` video containers | — | — | +| Creative and brand | [#8107](https://github.com/adcontextprotocol/adcp/issues/8107) | `3gp`, `mpeg`, and `m4v` video containers | — | `3gp`, `mpeg`, and `m4v` added to the video `containers` enum (proposed by consent, objections by 2026-11-06) | | Creative and brand | [#8092](https://github.com/adcontextprotocol/adcp/issues/8092) | Creator and show cards on collections | — | Collection cards, follower counts, response collections, and `list_collections` (#8094, #8098, #8141, #8279) | | Creative and brand | [#6348](https://github.com/adcontextprotocol/adcp/issues/6348) | Anchored creative feedback and per-party review records | — | — | | Signals, audiences, catalogs | [#8023](https://github.com/adcontextprotocol/adcp/issues/8023) | Audience overlap read | [#8031](https://github.com/adcontextprotocol/adcp/pull/8031) (draft) | Audience size ranges (#8024) | diff --git a/static/schemas/source/core/requirements/video-asset-requirements.json b/static/schemas/source/core/requirements/video-asset-requirements.json index a1c4d219bfe..467d97e7bc3 100644 --- a/static/schemas/source/core/requirements/video-asset-requirements.json +++ b/static/schemas/source/core/requirements/video-asset-requirements.json @@ -44,9 +44,9 @@ "type": "array", "items": { "type": "string", - "enum": ["mp4", "webm", "mov", "avi", "mkv"] + "enum": ["mp4", "webm", "mov", "avi", "mkv", "3gp", "mpeg", "m4v"] }, - "description": "Accepted video container formats" + "description": "Accepted video container formats. The `3gp`, `mpeg`, and `m4v` values were added in AdCP 3.3. `mpeg` is an MPEG-1 or MPEG-2 program stream (`video/mpeg`), not an MPEG transport stream." }, "codecs": { "type": "array", diff --git a/tests/x-added-in-3-3-sweep.test.cjs b/tests/x-added-in-3-3-sweep.test.cjs index 6803f60b45b..44c44d366ef 100644 --- a/tests/x-added-in-3-3-sweep.test.cjs +++ b/tests/x-added-in-3-3-sweep.test.cjs @@ -182,6 +182,7 @@ test('added enum values are noted in the enum description', () => { const video = load('formats/canonical/video_hosted.json').properties; assert.match(video.video_codecs.description, /`mpeg2`, `avc_intra`, and `xavc`.*3\.3/); assert.match(video.containers.description, /`mxf`.*3\.3/); + assert.match(load('core/requirements/video-asset-requirements.json').properties.containers.description, /`3gp`, `mpeg`, and `m4v`.*3\.3/); }); test('surfaces shipped in 3.2 are not marked 3.3', () => {