Show Menu
TOPICS×

Understand Launch versus Media SDK differences

Feature differences

  • Launch
    - Launch provides you with a UI that walks you through setting up, configuring, and deploying your web-based media tracking solutions. Launch improves upon Dynamic Tag Management (DTM).
  • Media SDK
    - The Media SDK provides you with media tracking libraries designed for specific platforms (e.g.: Android, iOS, etc.). Adobe recommends Media SDK for tracking media usage in your Mobile Apps.

Tracker creation differences

Launch

Launch offers two approaches to creating the tracking infrastructure. Both approaches use the Media Analytics Launch Extension:
  1. Use the media tracking APIs from a web page.
    In this scenario, the Media Analytics Extension exports the media tracking APIs to a configured variable in the global window object:
    window["CONFIGURED_VARIABLE_NAME"].MediaHeartbeat.getInstance
  2. Use the media tracking APIs from another Launch extension.
    In this scenario, you use the media tracking APIs exposed by the
    get-instance
    and
    media-heartbeat
    Shared Modules.
    Shared Modules are not available for use in web pages. You can only use Shared Modules from another extension.
    Create a
    MediaHeartbeat
    instance using the
    get-instance
    Shared Module. Pass a delegate object to
    get-instance
    that exposes
    getQoSObject()
    and
    getCurrentPlaybackTime()
    functions.
    var getMediaHeartbeatInstance = turbine.getSharedModule('adobe-video-analytics', 'get-instance');
    Access
    MediaHeartbeat
    constants via the
    media-heartbeat
    Shared Module.

Media SDK

  1. Add the Media Analytics library to your development project.
  2. Create a config object (
    MediaHeartbeatConfig
    ).
  3. Implement the delegate protocol, exposing the
    getQoSObject()
    and
    getCurrentPlaybackTime()
    functions.
  4. Create a Media Heartbeat instance (
    MediaHeartbeat
    ).
// Media Heartbeat initialization var mediaConfig = new MediaHeartbeatConfig(); ... // Configuration settings mediaConfig.trackingServer = Configuration.HEARTBEAT.TRACKING_SERVER; ... // Implement Media Delegate (Quality of Service and Playhead) var mediaDelegate = new MediaHeartbeatDelegate(); ... mediaDelegate.getQoSObject = function() { return MediaHeartbeat.createQoSObject(<bitrate>, <startuptime>, <fps>, <droppedFrames>); ... } ... // Create your tracker this.mediaHeartbeat = new MediaHeartbeat(mediaDelegate, mediaConfig, appMeasurement);