VideoMetadata
What's the VideoMetadata?ā
The VideoMetadata is an object that describes the video to play.
All VideoMetadata fieldsā
Check the full list
| Category | Property | Type | Default | Description | Example |
|---|---|---|---|---|---|
| Advertising and Integrations | ad | string | "" | VAST or VMAP url | "http://vast.com/vmap.xml" |
| Core | assetState | AssetState | |||
| Playback | audioTracks | array of AudioTrack | "" | List of audio tracks for this media | |
| Experience | behaviour | Behaviour | |||
| Core | capabilities | Capabilities | |||
| Core | contentRating | ContentRating | Content rating information for age classification | ||
| Experience | customActions | array of CustomAction | "" | ||
| Experience | customDataPanels | array of CustomDataPanel | "" | ||
| Playback | defaultAudioTrackId | string | "" | The default id of the audio track that will be used if there is no user selection | |
| Core | eventId | string | "" | Identified the event associated to the video. This is used to fetch data associated to the video (overlays, data panels, etc..) | "videoId" |
| Core | expectedDuration | number | "0" | Expected duration of the video (milliseconds) | "0" |
| Experience | image | string | "" | A static thumbnail that can be used to represent the video | "http://thumbnail.com/image.png" |
| Advertising and Integrations | livelikeProgramId | string | "" | ID of the Livelike program for enabling Livelike feature | "aaeeff00" |
| deprecated | multicam (@deprecated) | Multicam | |||
| deprecated | overlayThumbnailUrl (@deprecated) | string | "" | Thumbnail shown when datapanels menu is open (tablet, hmtl5) | |
| Core | programDateTime | string | "" | Absolute time when the video was started (ISO 8601 date time) Used to synchronize video and additional data | "2020-02-14T15:01:50Z" |
| Experience | skipIntervals | array of SkipInterval | [] | List of time intervals during which to display the skip button | |
| Experience | socialSharing | SocialSharing | |||
| Playback | sources | array of VideoSource | "" | List of video sources for this media | |
| Playback | stereoMode | StereoMode | |||
| Core | title | string | "" | Title of the video | "title" |
| Core | subtitle | string | "" | Subtitle of the video | "subtitle" |
| Playback | trimIn | number | "0" | client side trimming-in (milliseconds) | "0" |
| Playback | trimOut | number | "0" | client side trimming-out (milliseconds) | "0" |
| Core | videoId | string | Unique id of the video | "videoId" | |
| Experience | videoLists | array of VideoList | "" | if empty, the video lists are not visible | |
| Experience | vttThumbnails.baseUrl | string | Base url of the vtt thumbnails file | "http:/domain.com/path" | |
| Experience | vttThumbnails.filename | string | Filename of the vtt thumbnails file | "file.vtt" | |
| Experience | vttThumbnails | ||||
| Playback | dvrType | DvrType |
VideoMetadata by Categoriesā
Coreā
| Property | Type | Default | Description | Example |
|---|---|---|---|---|
| assetState | AssetState | |||
| contentRating | ContentRating | Content rating information for age classification | ||
| expectedDuration | number | "0" | Expected duration of the video (milliseconds) | "0" |
| eventId | string | "" | Identified the event associated to the video. This is used to fetch data associated to the video (overlays, data panels, etc..) | "videoId" |
| programDateTime | string | "" | Absolute time when the video was started (ISO 8601 date time) Used to synchronize video and additional data | "2020-02-14T15:01:50Z" |
| title | string | "" | Title of the video | "title" |
| subtitle | string | "" | Subtitle of the video | "subtitle" |
| videoId | string | Unique id of the video | "videoId" |
Playbackā
| Property | Type | Default | Description | Example |
|---|---|---|---|---|
| trimIn | number | "0" | client side trimming-in (milliseconds) | "0" |
| trimOut | number | "0" | client side trimming-out (milliseconds) | "0" |
| audioTracks | array of AudioTrack | "" | List of audio tracks for this media | |
| defaultAudioTrackId | string | "" | The default id of the audio track that will be used if there is no user selection | |
| dvrType | DvrType | |||
| sources | array of VideoSource | "" | List of video sources for this media |
Experienceā
| Property | Type | Default | Description | Example |
|---|---|---|---|---|
| behaviour | Behaviour | "" | Defines default video playback behavior | ā |
| customActions | array of CustomAction | "" | List of custom actions for the video player | ā |
| customDataPanels | array of CustomDataPanel | "" | Defines additional data panels to be shown alongside the video | ā |
| image | string | "" | A static thumbnail that can be used to represent the video | "http://thumbnail.com/image.png" |
| mediaLists | array of MediaList | "" | If empty, the media lists are not visible | ā |
| related | ā | Deprecated: previously used for related content | ā | |
| socialSharing | SocialSharing | ā | Enables social sharing features | ā |
| stereoMode | StereoMode | ā | Defines stereo mode configuration (e.g., mono, stereo) | ā |
| upNext | ā | Deprecated: previously used to configure up-next videos | ā | |
| skipIntervals | array of SkipInterval | [] | List of time intervals during which to display the skip button | ā |
| videoLists | array of VideoList | "" | If empty, the video lists are not visible | ā |
| vttThumbnails.baseUrl | string | ā | Base URL of the VTT thumbnails file | "http://domain.com/path" |
| vttThumbnails.filename | string | ā | Filename of the VTT thumbnails file | "file.vtt" |
| vttThumbnails | object | ā | Container object for VTT thumbnail config (baseUrl, filename) | ā |
3rd Partiesā
| Property | Type | Default | Description | Example |
|---|---|---|---|---|
| ad | string | "" | VAST or VMAP url | "http://vast.com/vmap.xml" |
| livelikeProgramId | string | "" | ID of the Livelike program for enabling Livelike feature | "aaeeff00" |
Typesā
AssetStateā
| Property | Type | Values | Default | Description |
|---|---|---|---|---|
| assetstate | enum (of strings) | "live" "vod" | "vod" | Whether the video should be displayed as VOD or LIVE |
ContentRatingā
| Property | Type | Description | Example |
|---|---|---|---|
| icon | string | URL of the content rating icon | "https://divademo.deltatre.net/eighteenplus.png" |
| classification | string | Content rating classification message | "Viewing of this content is recommended for adults only" |
| contentDescription | string | Detailed description of content warnings | "Warning: This program contains scenes of violence, fear, and strong language. Viewer discretion is advised" |
AudioTrackā
āāā videoMetadata
ā āāā audioTracks
ā āāā audioTrack
| Property | Type | Description |
|---|---|---|
| id | string | Unique identifier of the track |
| label | string | Label of the audio track displayed in the audio tracks selection setting panel |
| selector | string | Result of the audio track found in the manifest, based on the selection method configured. |
Behaviourā
āāā videoMetadata
ā āāā behaviour
| Property | Type | Default | Description |
|---|---|---|---|
| endOfPlay | EndOfPlay | ||
| externalStreamingEnabled | boolean | "true" | |
| seekInterval | number | "10000" | milliseconds |
| spoilerMode | SpoilerMode | ||
| timelineMode | TimelineMode |
EndOfPlayā
āāā videoMetadata
ā āāā behaviour
ā āāā endOfPlay
| Property | Type | Default | Description |
|---|---|---|---|
| countdownToAutoplay | number | "10000" | milliseconds |
| squeezeBackTime | number | "0" (disabled) | milliseconds |
| verticalVideoAutoplayOrLoop | string | "autoplay" | string: "autoplay" |
SpoilerModeā
| Property | Type | Values | Default | Description |
|---|---|---|---|---|
| spoilermode | enum (of strings) | "notSpoiled" "highlights" "chapterNotSpoiled" "chapterAndDurationNotSpoiled" "chapterDurationAndSeekbarNotSpoiled" | "notSpoiled" | Define if events in certain features are spoiled or not |
TimelineModeā
| Property | Type | Values | Default | Description |
|---|---|---|---|---|
| timelinemode | enum (of strings) | "enhanced" "alternate" | "enhanced" |
Capabilitiesā
| Property | Type | Default | Description | Example |
|---|---|---|---|---|
| alternateCommentary | boolean | "true" | HTML5 only - enable or disable the alternate visualisation of timeline | "true" |
| cc | boolean | "true" | enable or disable the closed captions | "true" |
| chapters | boolean | "true" | enable or disable the chapters functionality | "true" |
| commentary | boolean | "true" | enable or disable the commentary functionality | "true" |
| dataPanels | boolean | "true" | enable or disable data panels | "true" |
| boolean | "true" | "true" | ||
| boolean | "true" | "true" | ||
| relevantCommentary | boolean | "true" | enable or disable the relevant commentary functionality | "true" |
| score | boolean | "true" | enable or disable the score functionality | "true" |
| snapStats | boolean | "true" | enable or disable the snap stats functionality | "true" |
| timeline | boolean | "true" | "true" | |
| title | boolean | "true" | "true" | |
| userAudioSelection | boolean | "true" | "true" | |
| videoQuality | boolean | "true" | enable or disable the video quality selector | "true" |
| vr | boolean | "true" | "true" | |
| wallclock | boolean | "true" | if false wallclock time is hidden in live videos with limited DVR | "true" |
CustomActionā
āāā videoMetadata
ā āāā customActions
ā āāā CustomAction
| Property | Type | Default | Description |
|---|---|---|---|
| actionId | string | "" | |
| icon | string | "" |
CustomDataPanelā
āāā videoMetadata
ā āāā customDataPanels
ā āāā CustomDataPanel
| Property | Type | Default | Description |
|---|---|---|---|
| feedUrl | string | "" | Url of the feed. The item will be ignored if this parameter is an empty string |
| id | string | "" | |
| menu | string | "" | The Data Panel title that will be shown in the tab bar. The item will be ignored if this parameter is an empty string |
| pollingInterval | number | "0" | How often the feed url will be polled (milliseconds). "0" means that polling is disabled. If this value is less than 1000 (1s), then 1000 will be applied |
DvrTypeā
| Property | Type | Values | Default | Description |
|---|---|---|---|---|
| dvrtype | enum (of strings) | "none" "full" "limited" | "full" | Type of DVR window for this video |
MediaListā
āāā videoMetadata
ā āāā mediaLists
ā āāā MediaList
| Property | Type | Default | Description |
|---|---|---|---|
| defaultItemLayout | MediaListItemLayout | ||
| defaultItemType | MediaListItemType | ||
| defaulImageFormat | MediaListImageFormat | ||
| items | array of MediaListItem | ||
| listId | string | "" | The identifier used for this media list in the analytic events |
| rowTitle | string | "" | The title of the media list (if empty it will be replaced by the menuLabel value) |
| noItemsMessage | string | "" | The message to show if the list is empty |
| menuLabel | string | "" | The label shown in the sidebar menu |
| behaviour | string | "" | The behaviour of the media list |
| showInEndOfPlay | boolean | false | if "true" it will add the current list in the End Of Play experience |
MediaListItemā
| Property | Type | Values | Default | Description |
|---|---|---|---|---|
| adBadge | boolean | false | Audio Description badge (Accessibility) | |
| caption | string | null | The subtext or description associated with the item. Can be null | |
| ccBadge | boolean | false | Closed Caption badge (Accessibility) | |
| explicitBadge | boolean | false | Explicit badge (Content) | |
| imageUrl | string | (fallback image) | Image URL used to background | |
| imageFormat | MediaListImageFormat | |||
| itemId | string | "" | The unique identifier of the item | |
| itemLayout | MediaListItemLayout | |||
| itemType | MediaListItemType | |||
| title | string | "" | The main text or heading associated with the item. | |
| itemUrl | string | "" | The URL to be used as a reference for the switch behaviour | |
| isLive | boolean | false | Indicates the status of the asset, it will apply the LIVE label on top | |
| highlightColor | string | "#ffff00" | The color used to highlight the currently selected video on tablets (dark theme theme) | |
| highlightColorLight | string | "#ffff00" | The color used to highlight the currently selected video on smartphones (light theme) | |
| number | "0" | Backward compatibility only, it will be deprecated | ||
| boolean | "false" | Backward compatibility only, it will be deprecated | ||
| boolean | "false" | Backward compatibility only, it will be deprecated | ||
| string | "" | Backward compatibility only, it will be deprecated |
MediaListItemLayoutā
| Property | Type | Values | Default | Description |
|---|---|---|---|---|
| medialistitemlayout | enum (of strings) | "vertical" "horizontal" | "" | Type of player visualization |
MediaListItemTypeā
| Property | Type | Values | Default | Description |
|---|---|---|---|---|
| medialistitemtype | enum (of strings) | "audio" "music" "podcast" | "audio" | Identify if medialist item is one music, one podcast or an album contained more file, in this last case audio |
MediaListImageFormatā
| Property | Type | Values | Default | Description |
|---|---|---|---|---|
| medialistimageformat | enum (of strings) | "square" | "square" | The format of the thumbnail (just 'tile' so far) |
Multicam (@deprecated)ā
This implementation is deprecated and will be maintained only until version 5.11.0. After that, it will no longer be supported. Upgrade now to ensure continued compatibility.
| Property | Type | Default | Description |
|---|---|---|---|
| enable360Cameras | boolean | "true" | |
| enableVRFor360Cameras | boolean | "true" | |
| pitchViewEnabled | boolean | "true" | |
| videoListUrl | string | "" |
Recommendation (@deprecated)ā
This implementation is deprecated and will be maintained only until version 5.11.0. After that, it will no longer be supported. Upgrade now to ensure continued compatibility.
| Property | Type | Default | Description |
|---|---|---|---|
| autoLoadTime | number | "10000" | milliseconds, 0 means disabled [html5 only] |
| feedUrl | string | "" | if empty, disable the feature |
| redirectOnClick | boolean | "false" | whether clicking an item redirects to a new player page [html5 only] |
| sortList | boolean | "true" | puts the current video as first, if present [html5 only] |
Related (@deprecated)ā
This implementation is deprecated for the Web platform and will be maintained only until version 5.13.x. After that, it will no longer be supported. Upgrade now to ensure continued compatibility.
āāā videoMetadata
ā āāā related
| Property | Type | Default | Description |
|---|---|---|---|
| imageFormat | string | tile | The format of the thumbnail (just 'tile' so far) |
| items | array of relatedItem | The list of related items to show | |
| rowTitle | string | "diva_eop_related_title" | a dictionary tag, the title of the related row |
| caption | string | The caption of the next video put below the title | |
| imageUrl | string | The image url of the next video | |
| itemId | string | The id of the next video | |
| title | string | The title of the next video |
Related Item (@deprecated)ā
āāā videoMetadata
ā āāā related
ā āāā items
ā ā āāā item
| Property | Type | Default | Description |
|---|---|---|---|
| adBadge | boolean | false | Audio Description badge (Accessibility) (tv only) |
| caption | string | The caption of the related video item | |
| ccBadge | boolean | false | Closed Caption badge (Accessibility) (tv only) |
| imageUrl | string | (fallback image) | The image url of the related video item |
| itemId | string | The id of the related video item | |
| title | string | The title of the related video item |
Scrubbingā
āāā videoMetadata
ā āāā behaviour
ā āāā seekSpeed1
seekSpeed2
seekSpeed3
| Property | Type | Description |
|---|---|---|
| seekSpeed1 | number | Level of lowest speed of scrubbing the seekbar |
| seekSpeed2 | number | Mid level of speed of scrubbing the seekbar |
| seekSpeed3 | number | Highest level of speed of scrubbing the seekbar |
SkipIntervalā
āāā videoMetadata
ā āāā skipIntervals
ā āāā SkipInterval
| Property | Type | Description |
|---|---|---|
| autoHide | number | Auto hide timeout if not interacted |
| end | number | End in milliseconds from the beginning of the video |
| label | string | Key to look for inside the dictionary for one specific interval |
| start | number | Start in milliseconds from the beginning of the video |
SocialSharingā
āāā videoMetadata
ā āāā socialSharing
| Property | Type | Default | Description |
|---|---|---|---|
| excludedNativeSharingApps | array of array | "" | |
| excludedSharingApps | array of array | "" | |
| message | string | "" |
StereoModeā
āāā videoMetadata
ā āāā stereoMode
| Property | Type | Values | Default | Description |
|---|---|---|---|---|
| stereomode | enum (of strings) | "none" "monoscopic" "updown" | "none" | Type of 360 video layout |
UpNext (@deprecated)ā
This implementation is deprecated for the Web platform and will be maintained only until version 5.13.x. After that, it will no longer be supported. Upgrade now to ensure continued compatibility.
āāā videoMetadata
ā āāā upNext
| Property | Type | Default | Description |
|---|---|---|---|
| caption | string | The caption of the next video put below the title | |
| imageUrl | string | The image url of the next video | |
| itemId | string | The id of the next video | |
| title | string | The title of the next video |
VideoList (@deprecated)ā
This implementation is deprecated for the Web platform and will be maintained only until version 5.13.x. After that, it will no longer be supported. Upgrade now to ensure continued compatibility.
āāā videoMetadata
ā āāā videoLists
ā āāā VideoList
| Property | Type | Default | Description |
|---|---|---|---|
| behaviour | VideoListBehaviour | ||
| feedUrl | string | "" | the url of videoList, if empty the video list related is not valid |
| highlightColor | string | "#ffff00" | The color used to highlight the currently selected video on tablets (dark theme theme) |
| highlightColorLight | string | "#ffff00" | The color used to highlight the currently selected video on smartphones (light theme) |
| id | string | "" | The identifier used for this video list in the analytic events |
| isRecommended | boolean | false | First element with isRecommended equal true will be shown at top position in End of Play view |
| menu | string | "" | The name of the videolist shown to the user in the tab bar |
| message | string | "" | The text shown as a header within the video list (not the title of the tab) |
| messageNoVideo | string | "" | The message show when the video list is empty (it replaces message) |
| pollingInterval | number | "0" | How often to poll the videolist url for new data (milliseconds) "0" means that polling is disabled. If this value is less than 1000 (1s), then 1000 will be applied |
| redirectOnClick | boolean | "false" | (HTML5 only) Whether the browser will open the video in a new page |
VideoListBehaviourā
| Property | Type | Values | Default | Description |
|---|---|---|---|---|
| videolistbehaviour | enum (of strings) | "switch" "multiview" "pipview" "multistreamSwitch" "multistreamMultiview" "multistreamPipview" "modal" | "switch" | How Diva will behave when opening one of the videos of the videolist |
VideoSourceā
āāā videoMetadata
ā āāā sources
ā āāā VideoSource
| Property | Type | Default | Description | Example |
|---|---|---|---|---|
| daiType | DaiType | |||
| drm | VideoSourceDrm | |||
| format | string | A string representing the video source format. Supported formats are 'hls', 'dash', 'mp4' | "hls" | |
| hdrType | HdrType | |||
| name | string | "same-as-format" | A string representing the video source name, defaults to the same value of format | "hls-for-chromecast" |
| offset | number | "0" | Program date time offset for this video source (milliseconds, can be negative) | "0" |
| uri | string | Uri of the media to be played (usually a DASH/HLS manifest) | "https://azuremedia.com/some/manifest.m3u8" |
DaiTypeā
| Property | Type | Values | Default | Description |
|---|---|---|---|---|
| daiType | enum (of strings) | "none" "googleLive" "googleVod" | "none" | type of DAI to use (currently only googleLive is supported) |
HdrTypeā
| Property | Type | Values | Default | Description |
|---|---|---|---|---|
| hdrType | enum (of strings) | "hdr10" "none" | Type of HDR (currently only HDR10 is supported) |
VideoSourceDrmā
| Property | Type | Default | Description |
|---|---|---|---|
| licenseUrl | string | "" | |
| token | string | "" | |
| type | VideoSourceDrmType |
VideoSourceDrmTypeā
| Property | Type | Values | Default | Description |
|---|---|---|---|---|
| videosourcedrmtype | enum (of strings) | "none" "fairplay" "widevine" "playready" "aes" | "none" | Drm types |
VideoMetadata sampleā
{
"assetstate": "vod",
"contentRating": {
{
"icon": "https://divademo.deltatre.net/eighteenplus.png",
"classification": "Viewing of this content is recommended for adults only",
"contentDescription": "Warning: This program contains scenes of violence, fear, and strong language. Viewer discretion is advised"
}
}
"expectedDuration": 0,
"eventId": "videoId",
"programDateTime": "2020-02-14T15:01:50Z",
"title": "title",
"subtitle": "subtitle",
"videoId": "videoId",
"behaviour": {
"endOfPlay": {
"countdownToAutoplay": 10000,
"squeezeBackTime": 10000
},
"externalStreamingEnabled": true,
"seekInterval": 10000,
"spoilermode": "notSpoiled",
"timelinemode": "enhanced",
"seekSpeed1": 10000,
"seekSpeed2": 20000,
"seekSpeed3": 30000
},
"capabilities": {
"alternateCommentary": true,
"cc": true,
"chapters": true,
"commentary": true,
"dataPanels": true,
"relevantCommentary": true,
"score": true,
"snapStats": true,
"timeline": true,
"title": true,
"userAudioSelection": true,
"videoQuality": true,
"vr": true,
"wallclock": true
},
"customActions": [
{
"actionId": "actionId",
"icon": "icon"
},
],
"customDataPanels": [
{
"feedUrl": "",
"id": "",
"menu": "",
"pollingInterval": 0
}
],
"image": "http://thumbnail.com/image.png",
"videoLists": [],
"vttThumbnails": {
"baseUrl": "http:/domain.com/path",
"filename": "file.vtt"
},
"skipIntervals": [
{
"autoHide": 0,
"end": 0,
"label": "label",
"start": 0
}
],
"socialSharing": {
"excludedNativeSharingApps": [],
"excludedSharingApps": [],
"message": ""
},
"stereoMode": {
"stereomode": "none"
},
"upNext": {
"caption": "",
"imageUrl": "",
"itemId": "",
"title": ""
},
"related": {
"imageFormat": "tile",
"items": [
{
"adBadge": false,
"caption": "",
"ccBadge": false,
"imageUrl": "",
"itemId": "",
"title": ""
}
],
"rowTitle": "diva_eop_related_title"
},
"ad": "http://vast.com/vmap.xml",
"livelikeProgramId": "aaeeff00",
"trimIn": 0,
"trimOut": 0,
"audioTracks": [],
"defaultAudioTrackId": "",
"dvrtype": "full",
"sources": [
{
"daiType": "none",
"drm": {
"licenseUrl": "",
"token": "",
"type": "none"
},
"format": "hls",
"name": "hls",
"uri": "https://azuremedia.com/some/manifest.m3u8",
"offset": 0,
"hdrType": "hdr10"
}
],
}
What's the VideoMetadataMap?ā
The VideoMetadataMap is the runtime representation of the VideoMetadata.
Each platform has its VideoMetadataMap to read and overwrite the VideoMetadata fields: