MMC asset manifest - Prime Video Tech Docs

MMC asset manifest

Last updated 2024-12-17

Important: Partners delivering component source packages to Prime Video using bulk file delivery must include an asset manifest.

Prime Video supports the Media Manifest Core (MMC) specification. MMC is an industry-standard XML schema designed by MovieLabs. To ensure quality content for our users, unblock the fulfilment delivery process, and prevent errors, the XML file must be generated automatically. Documentation for this specification and example files are on the MovieLabs website. You can also download the sample files from this link.

Prime Video supports a subset of the MMC spec. The complete set of available MMC fields, along with notes regarding Prime Video usage, is provided in the MMC Field List section of this page. The MMC asset manifest files you deliver are subject to these file-naming rules.

Identifiers in MMC
MMC references a variety of IDs throughout the manifest. To ensure that identifiers are globally unique and to allow for manual exception handling, please use the following Uniform Resource Identifier (URI) structure within MMC submissions. Additional information is available on the MovieLabs website.

Identifiers use the following URI structure. Complete examples are provided in the next section.

<namespace>:<type>:<scheme>:<SSID>:<Additional Information>

  • <namespace> defines the scope of the identifier. Throughout the MMC, the namespace is always md.
  • <type> is the type of identifier, or what is being identified. Examples include audtrackID, vidtrackID, PresentationID, and so on.
  • <scheme> identifies the scheme of the ID provided in the SSID. Amazon accepts two schemes. The scheme used is determined by what kind of ID is provided to Amazon to identify content:
    • eider-x indicates that the ID provided is from the Entertainment Identifier Registry (an EIDR), with additional information following the EIDR.
    • org indicates that the ID provided is a unique identifier determined by the partner (not an EIDR).
  • <SSID> is the content identifier. It’s either the EIDR or the unique ID submitted by the partner. If the org scheme is used, then the partner’s BusinessAlias must precede the ID provided, as mandated by the MMC spec.
  • <Additional Information> is where you can submit more information. If the eidr-x scheme is used, then the partner’s BusinessAlias must immediately follow the EIDR. Additional information may follow that. Additional information is sometimes required to make the identifier unique. For example, information contained in the Additional Information section (underlined in the following URIs) is what distinguishes the two IDs from each other:
    • md:audtrackid:eidr-x:8011-8DCB-38E0-BF71-83D2-U:amazon_studios:feature.audio.en
    • md:audtrackid:eidr-x:8011-8DCB-38E0-BF71-83D2-U:amazon_studios:feature.audio.fr

Identifier examples
Eidr-x identifier example

The eidr-x scheme should be used if you are delivering EIDR numbers to identify your content. Prime Video prefers EIDR numbers to identify titles. When providing EIDRs to Prime Video, you must omit the EIDR prefix, which is everything prior to the slash character (for example, “10.5240/"). Submit only the unique suffix and check digit (such as XXXX-XXXXXXXX-XXXX-XXXX-C). The Prime Video-supplied Partner Alias is appended after the EIDR, separated by a colon.

Sample eidr-x identifier with its segments called out. Type is audtrackid, Scheme is eidr-x, EIDR is 8011-8DCB-38E0-BF71-83D2-U; Partner Alias is amazon_studios, and Additional Info is feature.audio.en.

Org identifier example

The org scheme should be used if you are delivering unique IDs that are not EIDRs to identify your content. In the following example, note that the Prime Video-supplied Partner Alias is provided immediately preceding the title ID.

Sample org identifier with its segments called out. Type is audtrackid, Scheme is org, Partner Alias is amazon_studios, Unique ID is chiraq_movie_ID, and Additional Info is feature.audio.en.

Sections of the manifest

  • Inventory: The Inventory section of the MMC includes details about all the assets (video, audio and timed text) being delivered as part of a component source package.
  • Presentations: The Presentation section of the MMC indicates which assets delivered as part of a package should be played together. For example, if a package includes two video assets (one for the feature and one for the trailer), five audio tracks (four for the feature and one for the trailer), and eight timed text assets (all associated with the feature), there would be two Presentations associated with that inventory. The first would be for the Feature, and would include one video asset, four audio tracks, and eight timed text assets. The second presentation would be for the trailer and would include one video track and one audio track.
  • Playable Sequences: The Playable Sequence section of the MMC provides details about Presentations that are intended to be played together and their sequence ordering. These entries aren’t required.
  • Experiences: The Experience section of the MMC groups Presentations and/or Playable Sequences along with Picture Groups to define the customer experience. For example, a single Experience could be composed of a Playable Sequence that contains a rating card, feature presentation, and a dub card.
  • ALID-Experience Mapping: A Logical Asset ID (ALID) is used to match the avails to the content. The ALID-Experience Mapping section of the MMC relates ALIDs from the EMA avails to the Experiences associated with that content.

Partial MMC

Partial MMC allows delivery of assets for an updated package without the need to declare all previously delivered assets. Sample files are available for download.

Partial MMCs should only contain Inventory objects for assets included in the updated package. There is no need to declare Inventory for assets previously delivered to Prime Video. Only declare Presentations when they contain assets that are present in the MMC Inventory and in the package. For example, if you’re delivering an update package that contains only dub cards for a feature film, you aren’t required to declare an empty feature Presentation; the feature assets were previously delivered and aren’t included in the MMC and update package.

All delivered assets are classified at the time of receipt based on their MMC metadata. For example, a dub card is classified when its Inventory object contains CardsetList.Cardset.TypeDubbingCredit”, and by it being declared an Experience with a Type of Main and SubType of Feature (via declaration in a Presentation > PlayableSequence > Experience).

The ALID is the only ID that must match between an initial package and an updated package that contains new assets.

MMC Field List

The following table summarizes the available MMC fields along with Prime Video-specific notes. (To see examples of the hierarchy of fields, download the MMC Manifest v1.10 sample files.)

The Field name column lists MMC fields; attributes for fields are indicated by the @ symbol.

The Accepted values column lists the acceptable values or indicates the type of value expected for each field. If left blank, it indicates a string entry is permitted. Inputs are limited to UTF-8 characters.

The Prime Video usage column indicates whether the field is required, optional, or not used by Prime Video.

The table and notes are in addition to the documentation and definitions provided by MovieLabs. Should any conflict occur between the two, the notes and guidelines provided below take precedence for deliveries to Prime Video.

Field name

Definition & notes

Accepted values

Prime Video usage

MediaManifest-type

@ManifestID

Unique identifier for the manifest.

Not used

@updateNum

Version of this manifest delivery.

Integer

Not used

@updateDeliveryType

Indicates that the object includes only portions required for an update. It isn’t a complete object.

Not used

Compatibility

Indicates which versions can fully use this input.

Required

SpecVersion

Supported version is v1.5.

Enumerated

Required

Profile

Profile of the Manifest.

“MMC-1"

Not used

Inventory

Identifies all individual assets being delivered as part of the package (for example, mezzanine files, timed text, audio, and so on) along with asset-specific metadata.
Note: For brevity, only supported fields and other common fields from the XSD are included below. If a field is omitted from the list below, it isn’t used by Prime Video.

Required

Audio

See Audio for details about supported formats, channel mapping, and other technical requirements. At least one audio track is required for episode or movie deliveries. The audio track embedded with a video file must also be listed in the Inventory as an audio track. The container location (file name) can be the same for one audio and one video file.

Optional

@AudioTrackID

ID used to reference the audio track throughout the MMC.

Required by Audio

Type

  • primary for standard audio mix
  • narration for Descriptive Audio tracks
  • dialog centric for audio mix emphasizing dialog
  • commentary for commentary audio track

Enumerated

Required by Audio

Encoding

The output/extension of the file.

Optional

Codec

The codec used to output the file.

Optional

Language

Language of the primary dialog contained in the audio track.

RFC 5646

Required by Audio

Language

Language of the primary dialog contained in the audio track.

RFC 5646

Required by Audio

@dubbed

True indicates that the audio track is dubbed. False indicates that this is the OV audio track. If omitted, Prime Video assumes false.

Boolean

Not used

@forced

Indicates that forced narratives are included in the audio track.

Boolean

Not used

Description

Required if there is more than one commentary or descriptive audio track for the same language.

Optional

ContainerReference

Provides the file name of the asset. For audio embedded in a mezzanine video file, indicate the video file.

Required

ContainerLocation

File name of the audio track. Don’t provide folders, links, or paths.

Required

Hash

Checksum for the file delivered.

Optional

@method

Checksum method. Only MD5 is supported.

“MD5"

Optional

Video

See Videos for details about supported formats and technical requirements. At least one video track is required for episode or movie deliveries.

Optional

@VideoTrackID

ID used to reference the video track throughout the MMC.

Required by Video

Type

Supported values:

  • primary for all video except dub cards.
  • other for dub cards.

Enumerated

Required by Video

Picture

Used for HDR asset metadata.

Required for HDR

AspectRatio

Aspect ratio of the video file.

Optional

MasteredColorVolume

Color volume used at mastering. This represents the boundaries of the encoded color.

Required for HDR

PrimaryRChromaticity

Red chromaticity values.

Required for HDR

ChromaticityCIEx

Decimal

ChromaticityCIEy

Decimal

PrimaryGChromaticity

Green chromaticity values.

Required for HDR

ChromaticityCIEx

Decimal

ChromaticityCIEy

Decimal

PrimaryBChromaticity

Blue chromaticity values.

Required for HDR

ChromaticityCIEx

Decimal

ChromaticityCIEy

Decimal

WhitePointChromaticity

The nominal chromaticity of the white point.

Required for HDR

ChromaticityCIEx

Decimal

ChromaticityCIEy

Decimal

LightLevel

HDR metadata that describes the light level of HDR content and is represented in nits, a unit of luminance.

Required for HDR

ContentMax

HDR metadata that corresponds to the brightest pixel in the entire stream. If values are unknown, a value of “0" is acceptable.

Integer

Required for LightLevel

FrameAverageMax

HDR metadata that corresponds to the highest frame average brightness per frame in the entire stream. If values are unknown, a value of “0" is acceptable.

Integer

Required for LightLevel

Language

Language of the primary dialog contained in the video track.

RFC 5646

Not used

CardsetList

Identifies a video file as a dub card (DubbingCredit). Prime Video accepts only video dubbing credits. We don’t accept images as dub cards.

Optional

Cardset

Required by CardsetList

type

Identifies the type of cardset.

“dubbing credit”

Required by Cardset

language

Identifies the dubbing language being credited.

RFC 5646

Required by Cardset

ContainerReference

Provides the filename of the asset.

Required by Video

ContainerLocation

File name of the audio track. Don’t provide folders, links, or paths.

Required

Hash

Checksum for the file delivered.

Optional

@method

Checksum method.

“MD5"

Optional

Subtitle

See Timed text for details about supported formats and requirements.

Optional

@SubtitleTrackID

ID used to reference the subtitle track throughout the MMC.

Required by Subtitle

Type

Type of subtitle track.

  • Normal = Spoken dialog.
  • SDH = Subtitles for deaf and hearing impaired (US captions should use type SDH).
  • Forced = Forced narratives.

Enumerated

Required by Subtitle

Language

Language of the subtitle track

RFC 5646

Required by Subtitle

Encoding

The output/extension of the file.

Required by Subtitle

FrameRate

This field is an extension to MMC from the Common Metadata spec to support delivery of timed text frame-rate information. For frame rates that are natively whole numbers (such as 30), whole numbers should be used. For frame rates that have decimal values (such as 29.97), the FrameRate element tag should include a whole number frame rate, as well as a multiplier and drop frame/non-drop frame information.

Enumerated Integer

Required by Subtitle

@multiplier

For frame rates that have decimal values (such as 29.97), the multiplier should be included using the following format: 24 Frame Rate multiplier of “1000/1001" is used for frame rates of 29.97 or 23.976. No other multiplier is supported.

“1000/1001" is the supported value for non-whole number framerates.

Optional

@timecode

This field is used to communicate Drop or NonDrop. Omitted values will be assumed to be non-drop.

Drop = drop frame. NonDrop = non-drop frame.

Required

ContainerReference

Provides the file name of the asset.

Required by Subtitle

ContainerLocation

File name of the timed text. Don’t provide folders, links, or paths. Subtitles may not refer to video files.

Required by Subtitle

Hash

Checksum for the file delivered.

Optional

@method

Checksum method.

“MD5"

Optional

Presentations

One Presentation instance is required for each set of conformed tracks.

Required

Presentation

Used to group conformed assets together. Include all audio and timed text that conform to the video file.

Required

@PresentationID

ID used to reference the Presentation throughout the MMC.

Required

TrackMetadata

Set of tracks that can be played together.

Required

TrackSelectionNumber

A Track Selection Number assigned to the group of tracks that belong to the same type. There is one set for each combination of tracks that should be played together. TrackSelectionNumber=0 is the primary group.

Integer

Required

VideoTrackReference

One video file is required. For HDR content, include references to both the SDR and HDR sources from the Inventory.

Required

VideoTrackID

Must reference a VideoTrackID included in the Inventory.

Required

AudioTrackReference

At least one audio reference is required. Include all audio tracks conformed to the video of each Presentation. Presentations for trailers may only include one audio track.

Required

AudioTrackID

Must reference an AudioTrackID included in the Inventory.

Required

SubtitleTrackReference

Include all timed text references conformed to the video of each Presentation.

Optional

SubtitleTrackID

Must reference a SubtitleTrackID included in the Inventory.

Optional

PlayableSequence(s)

Defines pre-rolls and post-rolls before and after the main content.

Optional

PlayableSequence

Only supported for dubcards.

Required by PlayableSequence(s)

@PlayableSequenceID

ID used to reference the playable sequence throughout the MMC.

Required by PlayableSequence

Clip

Clip of audiovisual playback material.

Required by PlayableSequence(s)

sequence

Indicates sequence of this clip relative to other clips in the same grouping. Order is from lowest value to highest. 0 = the main content. Negative numbers = pre-rolls. Positive numbers = post-rolls.

Integer

Required by Clip

audioLanguage

Indicates this Clip is associated with a particular audio language. Typically used for dub cards.

RFC 5646

Not used

manifest:PresentationID

ID of the Presentation to be played.

Required by Clip

Experiences

Experiences define the customer playback experience.

Required

Experience

Defines how Playable Sequences and Presentations are to be presented to a customer.

Required

@ExperienceID

ID used to reference the Experience throughout the MMC.

Required

@Version

Required by MovieLabs XSD. Not used by Prime Video.

Integer

Not used

@updateNum

Version of the experience being delivered.

Integer

Not used

Language

Language and ExcludedLanguage tags aren’t supported. Use avails to specify allowed languages or language holdbacks.

RFC 5646

Not used

ExcludedLanguage

Language and ExcludedLanguage tags aren’t supported. Use avails to specify allowed languages or language holdbacks.

RFC 5646

Not used

Region

Region and ExcludedRegion tags aren’t supported. Use avails to specify regions.

Not used

ExcludedRegion

Region and ExcludedRegion tags aren’t supported. Use avails to specify regions.

Not used

ContentID

Not used by Prime Video. Matching is based on UniqueID.

Not used

AudioVisual

Experience requires one AudioVisual element.

Required

@ContentID

Not used by Prime Video. Matching is based on UniqueID.

Not used

Type

Type values provide information about the referenced PlayableSequence or Presentation.

  • Main = Main experience.
  • Promotion = Movie trailer experience.

Enumerated

Required by AudioVisual

SubType

Relevant only to specific Type values.

Feature, Default Trailer

Optional

PresentationID

Only one PresentationID or one PlayableSequenceID is required by AudioVisual. Must reference an ID defined in the Presentations section.

Required if no PlayableSequenceID is provided

PlayableSequenceID

Only one PresentationID or one PlayableSequenceID is required by AudioVisual. Must reference an ID defined in the PlayableSequences section.

Required if no PresentationID is provided

ContentID

Not used by Prime Video.

Not used

ExperienceChild

Used to associate trailers to features.

Optional

Relationship

ispromotionfor or isepisodeof

Enumerated

Required by ExperienceChild

ExperienceID

Must reference an ID defined in another Experience.

Required by ExperienceChild

ALIDExerienceMap(s)

Associates an avail (ALID) to an experience.

Required

manifest:ALID

The ALID is parsed to extract both the Amazon assigned Partner Alias ID and the unique ID corresponding to the matching experience. The Unique ID should match the AltID in the avail and be included in the AltID section in the MEC title metadata. See the section about MovieLabs IDs for details about how to correctly construct the ALID.

Required

manifest:ExperienceID

Must reference an ID defined in the Experiences section.

Required

Can’t find what you’re looking for?

Contact us


Internal Server error! Please try again
Your session has expired

Please sign in to continue

Sign In

edit