Media feed type

This page covers data collection for the Media feed type variable. See Media feed type for the corresponding reporting dimension.

The media feed type variable identifies the broadcast feed (for example, "East-HD", "West-SD", or "4K"). Use it when the same content is delivered through multiple regional or quality feeds and engagement needs to be broken out per feed.

Property
Value
Context data variable
a.media.feed
XDM collection field
xdm.mediaCollection.sessionDetails.feed
Audience Manager trait
c_contextdata.a.media.feed
Required
No
Sent with
Session start, session close
Web SDK

Set feed inside xdm.mediaCollection.sessionDetails when calling sendEvent:

code language-javascript
alloy("sendEvent", {
  xdm: {
    eventType: "media.sessionStart",
    mediaCollection: {
      sessionDetails: {
        feed: "East-HD"
      },
      playhead: 0
    }
  }
});
iOS

Pass the feed type as a metadata key in the HashMap argument to trackSessionStart. Use MediaConstants.VideoMetadataKeys.MEDIA_FEED.

code language-swift
var metadata: [String: String] = [:]
metadata[MediaConstants.VideoMetadataKeys.MEDIA_FEED] = "East-HD"

tracker.trackSessionStart(info: mediaObject, metadata: metadata)
Android

Pass the feed type as a metadata key in the HashMap argument to trackSessionStart. Use MediaConstants.VideoMetadataKeys.MEDIA_FEED.

code language-kotlin
val metadata = HashMap<String, String>()
metadata[MediaConstants.VideoMetadataKeys.MEDIA_FEED] = "East-HD"

tracker.trackSessionStart(mediaInfo, metadata)
Roku

Use createMediaSession to set feed inside sessionDetails:

code language-brightscript
m.aepSdk.createMediaSession({
    "xdm": {
        "eventType": "media.sessionStart",
        "mediaCollection": {
            "sessionDetails": {
                "feed": "East-HD"
            },
            "playhead": 0
        }
    }
})
Media Edge API

Call the sessionStart endpoint with feed inside xdm.mediaCollection.sessionDetails:

code language-json
{
  "events": [{
    "xdm": {
      "eventType": "media.sessionStart",
      "mediaCollection": {
        "sessionDetails": {
          "name": "video-123",
          "length": 128,
          "contentType": "vod",
          "playerName": "HTML5 Player",
          "channel": "Sports",
          "feed": "East-HD"
        },
        "playhead": 0
      }
    }
  }]
}

Legacy implementation types (Analytics-only)

Media SDK JS 3.x

Pass the feed in the contextData object using ADB.Media.VideoMetadataKeys.Feed:

code language-javascript
var contextData = {};
contextData[ADB.Media.VideoMetadataKeys.Feed] = "East-HD";

tracker.trackSessionStart(mediaInfo, contextData);
Chromecast

Use ADBMobile.media.VideoMetadataKeys.FEED to set the media feed type in the StandardMediaMetadata property of the media object before calling trackSessionStart:

code language-javascript
var mediaInfo = ADBMobile.media.createMediaObject("My Video", "video-123", 128,
  ADBMobile.media.StreamType.VOD, ADBMobile.media.MediaType.Video);
var standardMetadata = {};
standardMetadata[ADBMobile.media.VideoMetadataKeys.FEED] = "East-HD";
mediaInfo[ADBMobile.media.MediaObjectKey.StandardMediaMetadata] = standardMetadata;
ADBMobile.media.trackSessionStart(mediaInfo, null);
Media Collection API

Include media.feed in the params object:

code language-json
{
  "playerTime": { "playhead": 0, "ts": 1699523820000 },
  "eventType": "sessionStart",
  "params": {
    "media.feed": "East-HD"
  }
}

See the Media Collection API sessions reference for the full request structure.

recommendation-more-help
media-analytics-help