Skip to main content

VideoMetadata

What's the VideoMetadata?​

The VideoMetadata is an object that describes the video to play.

All VideoMetadata fields​

Check the full list
CategoryPropertyTypeDefaultDescriptionExample
Advertising and Integrationsadstring""VAST or VMAP url"http://vast.com/vmap.xml"
CoreassetStateAssetState
PlaybackaudioTracksarray of AudioTrack""List of audio tracks for this media
ExperiencebehaviourBehaviour
CorecapabilitiesCapabilities
ExperiencecustomActionsarray of CustomAction""
ExperiencecustomDataPanelsarray of CustomDataPanel""
PlaybackdefaultAudioTrackIdstring""The default id of the audio track that will be used if there is no user selection
CoreeventIdstring""Identified the event associated to the video. This is used to fetch data associated to the video (overlays, data panels, etc..)"videoId"
CoreexpectedDurationnumber"0"Expected duration of the video (milliseconds)"0"
Experienceimagestring""A static thumbnail that can be used to represent the video"http://thumbnail.com/image.png"
Advertising and IntegrationslivelikeProgramIdstring""ID of the Livelike program for enabling Livelike feature"aaeeff00"
deprecatedmulticam (@deprecated)Multicam
deprecatedoverlayThumbnailUrl (@deprecated)string""Thumbnail shown when datapanels menu is open (tablet, hmtl5)
CoreprogramDateTimestring""Absolute time when the video was started (ISO 8601 date time) Used to synchronize video and additional data"2020-02-14T15:01:50Z"
ExperienceskipIntervalsarray of SkipInterval[]List of time intervals during which to display the skip button
ExperiencesocialSharingSocialSharing
Playbacksourcesarray of VideoSource""List of video sources for this media
PlaybackstereoModeStereoMode
Coretitlestring""Title of the video"title"
Coresubtitlestring""Subtitle of the video"subtitle"
PlaybacktrimInnumber"0"client side trimming-in (milliseconds)"0"
PlaybacktrimOutnumber"0"client side trimming-out (milliseconds)"0"
CorevideoIdstringUnique id of the video"videoId"
ExperiencevideoListsarray of VideoList""if empty, the video lists are not visible
ExperiencevttThumbnails.baseUrlstringBase url of the vtt thumbnails file"http:/domain.com/path"
ExperiencevttThumbnails.filenamestringFilename of the vtt thumbnails file"file.vtt"
ExperiencevttThumbnails
PlaybackdvrTypeDvrType

VideoMetadata by Categories​

Core​

PropertyTypeDefaultDescriptionExample
assetStateAssetState
expectedDurationnumber"0"Expected duration of the video (milliseconds)"0"
eventIdstring""Identified the event associated to the video. This is used to fetch data associated to the video (overlays, data panels, etc..)"videoId"
programDateTimestring""Absolute time when the video was started (ISO 8601 date time) Used to synchronize video and additional data"2020-02-14T15:01:50Z"
titlestring""Title of the video"title"
subtitlestring""Subtitle of the video"subtitle"
videoIdstringUnique id of the video"videoId"

Playback​

PropertyTypeDefaultDescriptionExample
trimInnumber"0"client side trimming-in (milliseconds)"0"
trimOutnumber"0"client side trimming-out (milliseconds)"0"
audioTracksarray of AudioTrack""List of audio tracks for this media
defaultAudioTrackIdstring""The default id of the audio track that will be used if there is no user selection
dvrTypeDvrType
sourcesarray of VideoSource""List of video sources for this media

Experience​

PropertyTypeDefaultDescriptionExample
behaviourBehaviour""
customActionsarray of CustomAction""
customDataPanelsarray of CustomDataPanel""
imagestring""A static thumbnail that can be used to represent the video"http://thumbnail.com/image.png"
relatedRelated
socialSharingSocialSharing
stereoModeStereoMode
upNextUpNext
videoListsarray of VideoList""if empty, the video lists are not visible
vttThumbnails.baseUrlstringBase url of the vtt thumbnails file"http:/domain.com/path"
vttThumbnails.filenamestringFilename of the vtt thumbnails file"file.vtt"
vttThumbnails

3rd Parties​

PropertyTypeDefaultDescriptionExample
adstring""VAST or VMAP url"http://vast.com/vmap.xml"
livelikeProgramIdstring""ID of the Livelike program for enabling Livelike feature"aaeeff00"

Types​

AssetState​

PropertyTypeValuesDefaultDescription
assetstateenum (of strings)"live"
"vod"
"vod"Whether the video should be displayed as VOD or LIVE

AudioTrack​

├── videoMetadata
│ └── audioTracks
│ └── audioTrack
PropertyTypeDescription
idstringUnique identifier of the track
labelstringLabel of the audio track displayed in the audio tracks selection setting panel
selectorstringResult of the audio track found in the manifest, based on the selection method configured.

Behaviour​

├── videoMetadata
│ └── behaviour
PropertyTypeDefaultDescription
endOfPlayEndOfPlay
externalStreamingEnabledboolean"true"
seekIntervalnumber"10000"milliseconds
spoilerModeSpoilerMode
timelineModeTimelineMode

EndOfPlay​

├── videoMetadata
│ └── behaviour
│ └── endOfPlay
PropertyTypeDefaultDescription
countdownToAutoplaynumber"10000"milliseconds
squeezeBackTimenumber"0" (disabled)milliseconds

SpoilerMode​

PropertyTypeValuesDefaultDescription
spoilermodeenum (of strings)"notSpoiled"
"highlights"
"chapterNotSpoiled"
"chapterAndDurationNotSpoiled"
"chapterDurationAndSeekbarNotSpoiled"
"notSpoiled"Define if events in certain features are spoiled or not

TimelineMode​

PropertyTypeValuesDefaultDescription
timelinemodeenum (of strings)"enhanced"
"alternate"
"enhanced"

Capabilities​

PropertyTypeDefaultDescriptionExample
alternateCommentaryboolean"true"HTML5 only - enable or disable the alternate visualisation of timeline"true"
ccboolean"true"enable or disable the closed captions"true"
chaptersboolean"true"enable or disable the chapters functionality"true"
commentaryboolean"true"enable or disable the commentary functionality"true"
dataPanelsboolean"true"enable or disable data panels"true"
multicam (@deprecated)boolean"true""true"
multicam360 (@deprecated)boolean"true""true"
relevantCommentaryboolean"true"enable or disable the relevant commentary functionality"true"
scoreboolean"true"enable or disable the score functionality"true"
snapStatsboolean"true"enable or disable the snap stats functionality"true"
timelineboolean"true""true"
titleboolean"true""true"
userAudioSelectionboolean"true""true"
videoQualityboolean"true"enable or disable the video quality selector"true"
vrboolean"true""true"
wallclockboolean"true"if false wallclock time is hidden in live videos with limited DVR"true"

CustomAction​

├── videoMetadata
│ └── customActions
│ └── CustomAction
PropertyTypeDefaultDescription
actionIdstring""
iconstring""

CustomDataPanel​

├── videoMetadata
│ └── customDataPanels
│ └── CustomDataPanel
PropertyTypeDefaultDescription
feedUrlstring""Url of the feed. The item will be ignored if this parameter is an empty string
idstring""
menustring""The Data Panel title that will be shown in the tab bar. The item will be ignored if this parameter is an empty string
pollingIntervalnumber"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​

PropertyTypeValuesDefaultDescription
dvrtypeenum (of strings)"none"
"full"
"limited"
"full"Type of DVR window for this video

Multicam (@deprecated)​

PropertyTypeDefaultDescription
enable360Camerasboolean"true"
enableVRFor360Camerasboolean"true"
pitchViewEnabledboolean"true"
videoListUrlstring""

Recommendation (@deprecated)​

PropertyTypeDefaultDescription
autoLoadTimenumber"10000"milliseconds, 0 means disabled [html5 only]
feedUrlstring""if empty, disable the feature
redirectOnClickboolean"false"whether clicking an item redirects to a new player page [html5 only]
sortListboolean"true"puts the current video as first, if present [html5 only]
├── videoMetadata
│ └── related
PropertyTypeDefaultDescription
imageFormatstringtileThe format of the thumbnail (just 'tile' so far)
itemsarray of relatedItemThe list of related items to show
rowTitlestring"diva_eop_related_title"a dictionary tag, the title of the related row
captionstringThe caption of the next video put below the title
imageUrlstringThe image url of the next video
itemIdstringThe id of the next video
titlestringThe title of the next video
├── videoMetadata
│ └── related
│ └── items
│ │ ├── item
PropertyTypeDefaultDescription
adBadgebooleanfalseAudio Description badge (Accessibility) (tv only)
captionstringThe caption of the related video item
ccBadgebooleanfalseClosed Caption badge (Accessibility) (tv only)
imageUrlstring(fallback image)The image url of the related video item
itemIdstringThe id of the related video item
titlestringThe title of the related video item

Scrubbing​

├── videoMetadata
│ └── behaviour
│ └── seekSpeed1
seekSpeed2
seekSpeed3
PropertyTypeDescription
seekSpeed1numberLevel of lowest speed of scrubbing the seekbar
seekSpeed2numberMid level of speed of scrubbing the seekbar
seekSpeed3numberHighest level of speed of scrubbing the seekbar

SkipInterval​

├── videoMetadata
│ └── skipIntervals
│ └── SkipInterval
PropertyTypeDescription
autoHidenumberAuto hide timeout if not interacted
endnumberEnd in milliseconds from the beginning of the video
labelstringKey to look for inside the dictionary for one specific interval
startnumberStart in milliseconds from the beginning of the video

SocialSharing​

├── videoMetadata
│ └── socialSharing
PropertyTypeDefaultDescription
excludedNativeSharingAppsarray of array""
excludedSharingAppsarray of array""
messagestring""

StereoMode​

├── videoMetadata
│ └── stereoMode
PropertyTypeValuesDefaultDescription
stereomodeenum (of strings)"none"
"monoscopic"
"updown"
"none"Type of 360 video layout

UpNext​

├── videoMetadata
│ └── upNext
PropertyTypeDefaultDescription
captionstringThe caption of the next video put below the title
imageUrlstringThe image url of the next video
itemIdstringThe id of the next video
titlestringThe title of the next video

VideoList​

├── videoMetadata
│ └── videoLists
│ └── VideoList
PropertyTypeDefaultDescription
behaviourVideoListBehaviour
feedUrlstring""the url of videoList, if empty the video list related is not valid
highlightColorstring"#ffff00"The color used to highlight the currently selected video on tablets (dark theme theme)
highlightColorLightstring"#ffff00"The color used to highlight the currently selected video on smartphones (light theme)
idstring""The identifier used for this video list in the analytic events
isRecommendedbooleanfalseFirst element with isRecommended equal true will be shown at top position in End of Play view
menustring""The name of the videolist shown to the user in the tab bar
messagestring""The text shown as a header within the video list (not the title of the tab)
messageNoVideostring""The message show when the video list is empty (it replaces message)
pollingIntervalnumber"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
redirectOnClickboolean"false"(HTML5 only) Whether the browser will open the video in a new page

VideoListBehaviour​

PropertyTypeValuesDefaultDescription
videolistbehaviourenum (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
PropertyTypeDefaultDescriptionExample
daiTypeDaiType
drmVideoSourceDrm
formatstringA string representing the video source format. Supported formats are 'hls', 'dash', 'mp4'"hls"
hdrTypeHdrType
namestring"same-as-format"A string representing the video source name, defaults to the same value of format"hls-for-chromecast"
offsetnumber"0"Program date time offset for this video source (milliseconds, can be negative)"0"
uristringUri of the media to be played (usually a DASH/HLS manifest)"https://azuremedia.com/some/manifest.m3u8"

DaiType​

PropertyTypeValuesDefaultDescription
daiTypeenum (of strings)"none"
"googleLive"
"googleVod"
"none"type of DAI to use
(currently only googleLive is supported)

HdrType​

PropertyTypeValuesDefaultDescription
hdrTypeenum (of strings)"hdr10"
"none"
Type of HDR
(currently only HDR10 is supported)

VideoSourceDrm​

PropertyTypeDefaultDescription
licenseUrlstring""
tokenstring""
typeVideoSourceDrmType
VideoSourceDrmType​
PropertyTypeValuesDefaultDescription
videosourcedrmtypeenum (of strings)"none"
"fairplay"
"widevine"
"playready"
"aes"
"none"Drm types

VideoMetadata sample​

{
"assetstate": "vod",
"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: