This guide provides information about the API changes in Browser TVSDK between Browser TVSDK 2.4.2 and version 2.4.3.

Advertising API changes

These tables compare the advertising workflow API elements between Browser TVSDK version 2.4.2 and version 2.4.3.

Tables in this topic:

  • AdSignalingMode
  • Ad
  • AdBreakRemoval
  • AdBreakMove
  • TimelineItem
  • AdvertisingMetadata
  • Opportunity
  • TimelineOperationType

AdSignalingMode

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API  

Enum AdSignalingMode {
    const unsigned short DEFAULT = 0,
    const unsigned short MANIFEST_CUES = 1,
    const unsigned short SERVER_MAP = 2,
    const unsigned short CUSTOM_RANGES = 3,
    Boolean isValidMode(AdSignalingMode mode);
    
}

Enum AdSignalingMode {
    const unsigned short DEFAULT = 0,
    const unsigned short MANIFEST_CUES = 1,
    const unsigned short SERVER_MAP = 2,
    const unsigned short CUSTOM_RANGES = 3

};

 
Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

interface Ad {
    readonly attribute AdAsset primaryAsset;
    readonly attribute Array.<AdAsset> companionAssets;
    readonly attribute double duration;
    readonly attribute DomString id;
    readonly attribute unsigned short adType;
    readonly attribute AdInsertionType adInsertionType;
    readonly attribute Boolean isClickable;
    readonly attribute Boolean isCustomAdMarker;
    readonly attribute ContentTracker tracker;
    readonly attribute Boolean isCustomAd;
    readonly attribute Boolean isVPAIDAd;

};

interface Ad {
    readonly attribute AdAsset primaryAsset;
    readonly attribute Array.<AdAsset> companionAssets;
    readonly attribute double duration;
    readonly attribute DomString id;
    readonly attribute unsigned short adType;
    readonly attribute AdInsertionType adInsertionType;
    readonly attribute Boolean isClickable;
    readonly attribute Boolean isCustomAdMarker;
    readonly attribute ContentTracker tracker;
    
    readonly attribute Boolean isVPAIDAd;

};

AdBreakRemoval

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Class AdBreakRemoval {
AdBreakRemoval(AdBreakTimelineItem adBreakTimelineItem);
readonly attribute AdBreakTimelineItem adBreakTimelineItem;
AdBreakTimelineItem getAdBreakTimelineItem();

}

This class has been removed from Browser TVSDK 2.4.3.

AdBreakMove

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Class AdBreakMove {
AdBreakMove(AdBreakTimelineItem adBreakTimelineItem, AdBreakPlacement newPlacement);
readonly attribute AdBreakTimelineItem adBreakTimelineItem;
readonly attribute AdBreakPlacement newPlacement;
AdBreakTimelineItem getAdBreakTimelineItem();
AdBreakPlacement getNewPlacement();

}

This class has been removed from Browser TVSDK 2.4.3.

TimelineItem

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Interface TimelineItem : TimelineMarker {
    readonly attribute long id;
    readonly attribute TimeRange virtualRange;
    readonly attribute TimeRange localRange;
    readonly attribute boolean watched;
    readonly attribute boolean isTemporary;

Interface TimelineItem : TimelineMarker {
    readonly attribute long id;
    readonly attribute TimeRange virtualRange;
    readonly attribute TimeRange localRange;
    readonly attribute boolean isWatched;
    readonly attribute boolean isTemporary;

AdvertisingMetadata

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Interface AdvertisingMetadata {
    attribute AdSignalingMode mode;
    attribute AdBreakWatchedPolicy adBreakAsWatched;  
    attribute Boolean delayAdLoading;
    attribute Boolean livePreroll;
    readonly attribute Boolean hasDelayAdLoading;

    readonly attribute Boolean hasLivePreroll;

};

Interface AdvertisingMetadata {
    attribute AdSignalingMode mode;
    attribute AdBreakWatchedPolicy adBreakAsWatched;  
    attribute Boolean delayAdLoading;
    attribute Boolean livePreroll;
    readonly attribute Boolean delayAdLoading;

    readonly attribute Boolean hasLivePreroll;

};

Opportunity

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Interface Opportunity {
    readonly attribute DomString id;
    readonly attribute Placement placement;
    readonly attribute Metadata settings;
    readonly attribute Metadata customParams;


};

Interface Opportunity {
    readonly attribute DomString id;
    readonly attribute Placement placement;
    readonly attribute Metadata settings;
    readonly attribute customParameters;


};

TimelineOperationType

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Enum TimelineOperationType {
AdBreakPlacement: "AdBreakPlacement",
AdBreakMove: "AdBreakMove",
AdBreakRemoval: "AdBreakRemoval",
AdBreakRestore: "AdBreakRestore"

};

This class has been removed from Browser TVSDK 2.4.3.

Customization API changes

These tables compare the customization API elements between Browser TVSDK version 2.4.2 and version 2.4.3.

Tables in this topic:
  • MediaPlayerItemConfig

MediaPlayerItemConfig

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Class MediaPlayerItemConfig {
    MediaPlayerItemConfig();
    attribute AdvertisingMetadata advertisingMetadata;
    attribute ContentFactory advertisingFactory;
    attribute Array.<String> subscribeTags;
    attribute Array.<String> adTags;

    attribute TimedMetadataFilter timedMetadataFilter;
    attribute NetworkConfiguration networkConfiguration;
    attribute Boolean useHardwareDecoder;

   attribute MediaResourceFilter mediaResourceFilter;

    attribute CustomRangeMetadata customRangeMetadata;
    attribute AdSignalingMode adSignalingMode;
    attribute BillingMetricsConfiguration billingMetricsConfiguration;

   };

Class MediaPlayerItemConfig {
    MediaPlayerItemConfig();
    attribute AdvertisingMetadata advertisingMetadata;
    attribute ContentFactory advertisingFactory;
    attribute Array.<String> subscribeTags;
    attribute Array.<String> adTags;
    

    attribute NetworkConfiguration networkConfiguration;
    attribute Boolean useHardwareDecoder;
    


    attribute CustomRangeMetadata customRangeMetadata;
    attribute AdSignalingMode adSignalingMode;
    attribute BillingMetricsConfiguration billingMetricsConfiguration;

   };

DRM API changes

These tables compare the DRM API elements between Browser TVSDK version 2.4.2 and version 2.4.3.

Tables in this topic:

  • DRMManager
  • DRMAuthenticationMethod

DRMManager

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Class DRMManager  {


void setAuthenticationToken(DRMMetadata metadata, String
    authenticationDomain, ByteArray token, DRMOperationCompleteListener listener);

void authenticate(DRMMetadata metadata, String url, String
    authenticationDomain, String user, String password,
    DRMAuthenticateListener listener);

void acquireLicense(DRMMetadata metadata, DRMAcquireLicenseSettings setting,
    DRMAquireLicenseListener listener);

void acquirePreviewLicense(DRMMetadata metadata,DRMAquireLicenseListener
    listener);

DRMMetadata createMetadataFromBytes(ByteArray array,DRMErrorListener listener);

void initialize(DRMOperationCompleteListener listener);

void joinLicenseDomain(DRMLicenseDomain
    licenseDomain,boolean forceRefresh, DRMOperationCompleteListener listener);

void leaveLicenseDomain(DRMLicenseDomain licenseDomain,
    DRMOperationCompleteListener listener);

void resetDRM(DRMOperationCompleteListener listener);

void returnLicense(String serverURL, String licenseID, String policyID,
    boolean commitImmediately, DRMReturnLicenseListener listener);

void storeLicenseBytes(ByteArray licenseBytes,DRMOperationCompleteListener listener);
    
AdobePSDK.PSDKErrorCode setProtectionData(object protectionData);
    readonly attribute PSDKEventDispatcher eventDispatcher;

attribute int maxOperationTime;

}

Class DRMManager  {


void setAuthenticationToken(DRMMetadata metadata, String
    authenticationDomain, ByteArray token, DRMOperationCompleteListener listener);

void authenticate(DRMMetadata metadata, String url, String
    authenticationDomain, String user, String password,
    DRMAuthenticateListener listener);

void acquireLicense(DRMMetadata metadata, DRMAcquireLicenseSettings setting,
DRMAquireLicenseListener listener);

void acquirePreviewLicense(DRMMetadata metadata,DRMAquireLicenseListener
    listener);

DRMMetadata createMetadataFromBytes(ByteArray array,DRMErrorListener listener);

void initialize(DRMOperationCompleteListener listener);

void joinLicenseDomain(DRMLicenseDomain
    licenseDomain,boolean forceRefresh, DRMOperationCompleteListener listener);

void leaveLicenseDomain(DRMLicenseDomain licenseDomain,
    DRMOperationCompleteListener listener);

void resetDRM(DRMOperationCompleteListener listener);

void returnLicense(String serverURL, String licenseID, String policyID,
    boolean commitImmediately, DRMReturnLicenseListener listener);

void storeLicenseBytes(ByteArray licenseBytes,DRMOperationCompleteListener listener);
    
    

    
attribute int maxOperationTime;

}

DRMAuthenticationMethod

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Enum DRMAcquireLicenseSettings {
    const unsigned short FORCE_REFRESH = 0;
    const unsigned short LOCAL_ONLY = 1
    const unsigned short ALLOW_SERVER = 2;

];

This class has been removed from Browser TVSDK 2.4.3.

Event class changes

These tables compare the event class API elements between Browser TVSDK version 2.4.2 and version 2.4.3.

Tables in this topic:

  • PSDKEventType
  • DRMMetadataInfoAvailableEvent

PSDKEventType

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API
This class is new in Browser TVSDK 2.4.3.

Enum PSDKEventType =
{
FIRST_EVENT : 100,
AD_BREAK_STARTED : 101,
AD_BREAK_COMPLETED : 102,
AD_BREAK_SKIPPED : 103,
AD_CLICK : 104,
AD_STARTED : 105,
AD_PROGRESS : 106,
AD_COMPLETED : 107,
BUFFERING_BEGIN : 108,
BUFFERING_END : 109,
DRM_METADATA_INFO_AVAILABLE : 110,
LOAD_INFORMATION_AVAILABLE : 111,
ITEM_CREATED : 112,
ITEM_UPDATED : 113,
CAPTIONS_UPDATED : 114,
AUDIO_UPDATED : 115,
PLAYBACK_RANGE_UPDATED : 116,
MASTER_UPDATED : 117,
STATUS_CHANGED : 118,
RATE_SELECTED : 119,
RATE_PLAYING : 120,
PROFILE_CHANGED : 121,
RESERVATION_REACHED : 122,
SEEK_POSITION_ADJUSTED : 123,
SEEK_BEGIN : 124,
SEEK_END : 125,
SIZE_AVAILABLE : 126,
TIME_CHANGED : 127,
TIMED_METADATA_AVAILABLE : 128,
TIMELINE_UPDATED : 129,
PLAY_START : 130,
OPERATION_FAILED : 131,
TIMED_METADATA_IN_BACKGROUND : 132,
TIMED_EVENT : 133,
BUFFER_PREPARED : 134,
AD_RESOLUTION_COMPLETE : 135,
LAST_EVENT : 135,
FIRST_USER_EVENT : 10000

}:

DRMMetadataInfoAvailableEvent

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Class DRMMetadataInfoAvailableEvent {
DRMMetadataInfoAvailableEvent(MediaPlayer.Events type, DRMMetadata drmMetadataInfo, MediaPlayer target);
DRMMetadata getDRMMetadataInfo();
DRMMetadata drmMetadataInfo;

}

This class has been removed from Browser TVSDK 2.4.3. You must use the DRMMetadataInfoEvent instead. To see the API parity for the DRMMetadataInfoEvent class, see Event class.

Generic playback API changes

These tables compare the generic playback API elements between Browser TVSDK version 2.4.2 and version 2.4.3.

Tables in this topic:

  • MediaResource
  • MediaResourceIntent
  • MediaResourceFilter
  • MediaPlayer
  • MediaPlayerStatus
  • MediaPlayerItemLoader

MediaResource

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

public final class MediaResource {
    public static function createFromUrl(url:String,
    metadata:Metadata):MediaResource;
    public static function createFromMetadata(metadata:Metadata,
    type:String):MediaResource;
    public function MediaResource(url:String, type:String,
        metadata:Metadata);
    public function get url():String;
    public function get type():String;
    public function get metadata():Metadata;
    public function equals(otherMediaResource:MediaResource):Boolean;
    public function toString():String;

    Enum Intent {
    LINEAR_PLAYBACK : 0,
    CUSTOM_LINEAR_PLAYBACK : 1,
    NON_LINEAR_PLAYBACK : 2,
    EXTERNAL : 3
    };

}

Class MediaResource {
    MediaResource(String url, unsigned short type, Object metadata, Boolean forceFlash);
    readonly attribute String url;  
    readonly attribute MediaResourceType type;
    readonly attribute Metadata metadata;
    readonly attribute Boolean isValid;
    Boolean equals( MediaResource otherMediaResource);
    String toString();

MediaResourceIntent

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API
This class is new in Browser TVSDK 2.4.3.

Enum MediaResourceIntent {
LINEAR_PLAYBACK : 0,
CUSTOM_LINEAR_PLAYBACK : 1,
NON_LINEAR_PLAYBACK : 2,
EXTERNAL : 3

};

MediaResourceFilter

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Class MediaResourceFilter {
MediaResourceFilter();
Boolean isSupported(MediaResource resource,
   MediaResource.Intent intent, MediaResourceType contentType);




};

This class does not exist in Browser TVSDK 2.4.3.

MediaPlayer

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Class MediaPlayer {
MediaPlayer();
void registerCurrentItemInBackground(MediaPlayerItemConfig config);
void unregisterCurrentBackgroundItem();
void prepareToPlay(double position);
void play();
void pause();
void seek( double position);
void seekToLocal( double position);
void reset();
void release();
void replaceCurrentResource(MediaResource resource, MediaPlayerItemConfig config);
void replaceCurrentItem(MediaPlayerItem item);
void prepareBuffer();
void suspend();
void restore();
void notifyClick();
void addEventListener(int eventType, Function eventListener);
void removeEventListener(int eventType, Function eventListener);

readonly attribute double currentTime;
readonly attribute double localTime;
readonly attribute TimeRange playbackRange;
readonly attribute TimeRange seekableRange;
readonly attribute TimeRange bufferedRange;
readonly attribute PlaybackMetrics playbackMetrics;
readonly attribute Timeline timeline;
readonly attribute MediaPlayerItem currentItem;
readonly attribute unsigned short status;
readonly attribute DRMManager drmManager;

attribute MediaPlayerContext context;

attribute MediaPlayerView view;  
attribute double volume;
attribute double rate;
attribute BufferControlParameters bufferControlParameters;
attribute ABRControlParameters abrControlParameters;
attribute unsigned short ccVisibility;
attribute TextFormat ccStyle;
attribute double currentTimeUpdateInterval;
object getCustomAdView();
readonly AdobePSDK.PSDKEventDispatcher eventDispatcher;


const short LIVE_POINT = -2;
const unsigned short DEFAULT_VOLUME = 1;
const unsigned short VISIBLE = 0; //For CC visibility
const unsigned short INVISIBLE = 1; //For CC invisibility



Enum Events {
AdBreakStartedEvent : 101,
AdBreakCompletedEvent : 102,
AdBreakSkippedEvent : 103,
AdClickedEvent : 104,
AdStartedEvent : 105,
AdProgressEvent : 106,
AdCompletedEvent : 107,
BufferingBeginEvent : 108,
BufferingEndEvent : 19,
DRMMetadataInfoAvailableEvent : 110,
LoadInformationEvent : 111,
ItemCreatedEvent : 112, //Verify String
ItemUpdatedEvent : 113, //Verify String
CaptionsUpdatedEvent : 114,
AudioUpdatedEvent : 115,
PlaybackRangeUpdatedEvent : 116,
MainManifestUpdatedEvent : 117,
StatusChangeEvent : 118,
PlaybackRateSelectedEvent : 119,
PlaybackRatePlayingEvent : 120,
ProfileChangeEvent : 121,
ReservationReachedEvent : 122
SeekPositionAdjustedEvent : 123,
SeekBeginEvent : 124,
SeekEndEvent : 125,
SizeAvailableEvent : 126,
TimeChangeEvent : 127,
TimedMetadataEvent : 128,
TimelineUpdatedEvent : 129,
PlayStartEvent : 130,
OperationFailedEvent : 131,
TimedMetadataInBackgroundEvent : 132,
TimedEvent : 133,
BufferPreparedEvent : 134,
PSDKLastEvent: 134,
PSDKFirstUserEvent: 10000

};


};

Class MediaPlayer {
MediaPlayer();
void registerCurrentItemInBackground(MediaPlayerItemConfig config);
void unregisterCurrentBackgroundItem();
void prepareToPlay(double position);
void play();
void pause();
void seek( double position);
void seekToLocal( double position);
void reset();
void release();
void replaceCurrentResource(MediaResource resource, MediaPlayerItemConfig config);
void replaceCurrentItem(MediaPlayerItem item);
void prepareBuffer();
void suspend();
void restore();
void notifyClick();
void addEventListener(int eventType, Function eventListener);
void removeEventListener(int eventType, Function eventListener);

readonly attribute double currentTime;
readonly attribute double localTime;
readonly attribute TimeRange playbackRange;
readonly attribute TimeRange seekableRange;
readonly attribute TimeRange bufferedRange;
readonly attribute PlaybackMetrics playbackMetrics;
readonly attribute Timeline timeline;
readonly attribute MediaPlayerItem currentItem;
readonly attribute unsigned short status;
readonly attribute DRMManager drmManager;



attribute MediaPlayerView view;  
attribute double volume;
attribute double rate;
attribute BufferControlParameters bufferControlParameters;
attribute ABRControlParameters abrControlParameters;
attribute unsigned short ccVisibility;
attribute TextFormat ccStyle;
attribute double currentTimeUpdateInterval;




const short LIVE_POINT = -2;
const unsigned short DEFAULT_VOLUME = 1;
Enum VISIBILITY {
    const unsigned short VISIBLE = 0,
    const unsigned short INVISIBLE = 1

    }:

};

MediaPlayerStatus

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Enum MediaPlayerStatus =

{

IDLE : 0,
INITIALIZING : 1,
INITIALIZED : 2,
PREPARING : 3,
PREPARED : 4,
PLAYING : 5,
PAUSED : 6,
SEEKING : 7,
COMPLETE : 8,

COMPLETED: 8

ERROR : 9,
RELEASED : 10,
SUSPENDED : 11

};

Enum MediaPlayerStatus =

{

IDLE : 0,
INITIALIZING : 1,
INITIALIZED : 2,
PREPARING : 3,
PREPARED : 4,
PLAYING : 5,
PAUSED : 6,
SEEKING : 7,
COMPLETE : 8,
ERROR : 9,
RELEASED : 10,
SUSPENDED : 11

};

MediaPlayerItemLoader

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Class MediaPlayerItemLoader {
MediaPlayerItemLoader ();
void load(MediaResource resource, int resourceId, ItemLoaderListener listener, MediaPlayerItemConfig config) ;
void cancel();
void prepareBuffer(double position);

readonly attribute MediaPlayerItem currentItem;
readonly attribute DRMManager drmManager;
readonly attribute PSDKEventDispatcher eventDispatcher;

attribute AbrControlParameters abrControlParameters;
attribute BufferControlParameters bufferControlParameters;
attribute Boolean keepRebufferingForLive;


};

Class MediaPlayerItemLoader {
MediaPlayerItemLoader ();
void load(MediaResource resource, int resourceId, ItemLoaderListener listener, MediaPlayerItemConfig config) ;
void cancel();
void prepareBuffer(double position);

readonly attribute MediaPlayerItem currentItem;
readonly attribute DRMManager drmManager;


attribute AbrControlParameters abrControlParameters;
attribute BufferControlParameters bufferControlParameters;
attribute Boolean keepRebufferingForLive;


};

Media characteristics API changes

These tables compare the media characteristics API elements between Browser TVSDK version 2.4.2 and version 2.4.3.

Tables in this topic:

  • MediaPlayerItem
  • ClosedCaptionsTrack
  • Profile
  • Notification/NotificationType

MediaPlayerItem

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Class MediaPlayerItem {
MediaPlayerItem(MediaPlayer mediaPlayer,
MediaResource mediaResource,MediaPlayerItem nativeMediaPlayerItem);
Boolean selectAudioTrack(AudioTrack audioTrack);
Boolean selectClosedCaptionsTrack(ClosedCaptionsTrack closedCaptionsTrack);
readonly attribute AdobePSDK.MediaResource resource;
readonly attribute String resourceId;

readonly attribute Boolean live;

readonly attribute Boolean hasAlternateAudio;
readonly attribute AudioTrack[] audioTracks;
readonly attribute AudioTrack selectedAudioTrack;
readonly attribute MediaPlayerItem hasClosedCaptions;
readonly attribute ClosedCaptionsTrack[] closedCaptionsTracks;
attribute ClosedCaptionsTrack selectedClosedCaptionsTrack;
readonly attribute Boolean hasTimedMetadata;
readonly attribute TimedMetadata[] timedMetadata;

readonly attribute Boolean dynamic;

readonly attribute Boolean isProtected;
readonly attribute DRMMetadata[] drmMetadataInfos;
readonly attribute Profile[] profiles;
readonly attribute Profile selectedProfile;

readonly attribute Boolean trickPlaySupported;

readonly attribute Number[] availablePlaybackRates;
readonly attribute Number selectedPlaybackRate;
readonly attribute MediaPlayer mediaPlayer;
readonly attribute MediaPlayerItemConfig config;
readonly attribute Boolean isDynamic;
readonly attribute Boolean isLive;
readonly attribute Boolean isTrickPlaySupported;


}

Class MediaPlayerItem {
MediaPlayerItem(MediaPlayer mediaPlayer,
MediaResource mediaResource,MediaPlayerItem nativeMediaPlayerItem);
Boolean selectAudioTrack(AudioTrack audioTrack);
Boolean selectClosedCaptionsTrack(ClosedCaptionsTrack closedCaptionsTrack);
readonly attribute AdobePSDK.MediaResource resource;
readonly attribute String resourceId;


readonly attribute Boolean isLive;

readonly attribute Boolean hasAlternateAudio;
readonly attribute AudioTrack[] audioTracks;
readonly attribute AudioTrack selectedAudioTrack;
readonly attribute MediaPlayerItem hasClosedCaptions;
readonly attribute ClosedCaptionsTrack[] closedCaptionsTracks;
attribute ClosedCaptionsTrack selectedClosedCaptionsTrack;
readonly attribute Boolean hasTimedMetadata;
readonly attribute TimedMetadata[] timedMetadata;

readonly attribute Boolean isDynamic;

readonly attribute Boolean isProtected;
readonly attribute DRMMetadata[] drmMetadataInfos;
readonly attribute Profile[] profiles;
readonly attribute Profile selectedProfile;

readonly attribute Boolean isTrickPlaySupported;

readonly attribute Number[] availablePlaybackRates;
readonly attribute Number selectedPlaybackRate;
readonly attribute MediaPlayer mediaPlayer;
readonly attribute MediaPlayerItemConfig config;
readonly attribute Boolean isDynamic;
readonly attribute Boolean isLive;
readonly attribute Boolean isTrickPlaySupported;


}

ClosedCaptionsTrack

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

public class ClosedCaptionsTrack extends Track {
ClosedCaptionsTrack create(String url, String name, String language, String isDefault)
readonly attribute Boolean forced;
readonly attribute Boolean isValid;
readonly attribute String serviceType;

}

Class ClosedCaptionsTrack extends Track {
readonly attribute Boolean forced;
readonly attribute Boolean isValid;
readonly attribute String serviceType;

}

Profile

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Class Profile {
Profile (Number width, Number height, Number bitrate, String streamType, Boolean isIFrame);
Boolean isEqual(Ad other);
Boolean notEqual(Ad other);
readonly attribute Number width;
readonly attribute Number height;
readonly attribute Number bitrate;

readonly attribute String streamType;

readonly attribute Boolean isIFrame;
eadonly attribute String codecs;
readonly attribute Boolean isAudioOnly;
readonly attribute Boolean isValid;

};

Class Profile {
Profile (Number width, Number height, Number bitrate, String streamType, Boolean isIFrame);
Boolean isEqual(Ad other);
Boolean notEqual(Ad other);
readonly attribute Number width;
readonly attribute Number height;
readonly attribute Number bitrate;


readonly attribute Boolean isIFrame;
readonly attribute String codecs;
readonly attribute Boolean isAudioOnly;
readonly attribute Boolean isValid;

};

Notification/NotificationType

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API
Notification  

Class Notification {
Notification(NotificationType type, PSDKErrorCode errorCode, Metadata metadata, Notification innerNotification);
readonly attribute NotificationType type;
readonly attribute PSDKErrorCode errorCode;
readonly attribute Metadata metadata;
readonly attribute Notification innerNotification;
String toString();

};

Class Notification {
Notification(NotificationType type, PSDKErrorCode errorCode, Metadata metadata, Notification innerNotification);
readonly attribute NotificationType type;
readonly attribute PSDKErrorCode errorCode;
readonly attribute Metadata metadata;
readonly attribute Notification innerNotification;


};

Utility and Helper API changes

These tables compare the utility and helper API elements between Browser TVSDK version 2.4.2 and version 2.4.3.

Tables in this topic:

  • PlaybackInformation
  • DefaultMetadataKeys
  • PSDKErroCode

PlaybackInformation

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Class DeviceInformation {
PlaybackInformation(double timeToFirstByte, double timeToLoad, double timeToPrepare, double timeToStart, double timeToFail, int secondsPlayed, int secondsSpent, double frameRate, int droppedFrameCount, int perceivedBandwidth, int bitRate, double bufferTime, int bufferLength, int emptyBufferCount, double bufferingTime);


readonly attribute double timeToFirstByte;
readonly attribute double timeToLoad;
readonly attribute double timeToPrepare;
readonly attribute double timeToStart;
readonly attribute double timeToFail;
readonly attribute int totalSecondsPlayed;
readonly attribute int totalSecondsSpent;
readonly attribute double frameRate;
readonly attribute int droppedFrameCount;
readonly attribute int perceivedBandwidth;
readonly attribute int bitRate;
readonly attribute double bufferTime;
readonly attribute int bufferLength;
readonly attribute int emptyBufferCount;
readonly attribute double bufferingTime;
readonly attribute double timeToInitialize;
readonly attribute double timeToPlay;
readonly attribute double totalBufferingTime;
readonly attribute Object seekTimes;
readonly attribute PlaybackMetrics playbackMetrics;



};

Class DeviceInformation {
PlaybackInformation(double timeToFirstByte, double timeToLoad, double timeToPrepare, double timeToStart, double timeToFail, int secondsPlayed, int secondsSpent, double frameRate, int droppedFrameCount, int perceivedBandwidth, int bitRate, double bufferTime, int bufferLength, int emptyBufferCount, double bufferingTime);


readonly attribute double timeToFirstByte;
readonly attribute double timeToLoad;
readonly attribute double timeToPrepare;
readonly attribute double timeToStart;
readonly attribute double timeToFail;
readonly attribute int totalSecondsPlayed;
readonly attribute int totalSecondsSpent;
readonly attribute double frameRate;
readonly attribute int droppedFrameCount;
readonly attribute int perceivedBandwidth;
readonly attribute int bitRate;
readonly attribute double bufferTime;
readonly attribute int bufferLength;
readonly attribute int emptyBufferCount;
readonly attribute double bufferingTime;




};

DefaultMetadataKeys

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Class DefaultMetadataKeys {

AD_SIGNALING_MODE : "adSignalingMode",
AD_BREAK_AS_WATCHED_POLICY : "adBreakAsWatchedPolicy",
ADVERTISING_METADATA : "advertisingMetadata",
AUDITUDE_METADATA_KEY : "auditude_metadata",
JSON_METADATA_KEY : "json_metadata",
VIDEO_ANALYTICS_METADATA_KEY : "video_analytics_metadata",
CUSTOM_AD_MARKERS_METADATA_KEY : "custom_ad_markers_metadata",
METADATA_KEY_TYPE : "type",
METADATA_KEY_ADJUST_SEEK_ENABLED : "adjust_seek_enabled",
CUSTOM_PARAMETERS : "customParams",
TARGETING_PARAMETERS : "targetingParameters",
NETWORK_CONFIGURATION_KEY : "network_configuration"


};

This class has been removed from Browser TVSDK 2.4.3.

PSDKErrorCode

Browser TVSDK 2.4.2 API Browser TVSDK 2.4.3 API

Class PSDKErrorCode {
kECSuccess = 0;
kECInvalidArgument = 1;
kECNullPointer = 2;
kECIllegalState = 3;
kECInterfaceNotFound = 4;
kECCreationFailed = 5;
kECUnsupportedOperation = 6;
kECDataNotAvailable = 7;
kECSeekError = 8;
kECUnsupportedFeature = 9;
kECRangeError = 10;
kECCodecNotSupported = 11;
kECMediaError = 12;
kECNetworkError = 13;
kECGenericError = 14;
kECInvalidSeekTime = 15;
kECAudioTrackError = 16;
kECAccessFromDifferentThreadError = 17;
kECElementNotFound = 18;
kECNotImplemented = 19;
kECNotSupported = 20;
kECPlaybackOperationFailed = 200; // Warning code
kECNativeWarning = 201; // warning code
kECAdResolverFailed = 202; // warning code






};

Class PSDKErrorCode {
SUCCESS = 0;
INVALID_ARGUMENT = 1;
NULL_POINTER = 2;
ILLEGAL_STATE = 3;
INTERFACE_NOT_FOUND = 4;
CREATION_FAILED = 5;
UNSUPPORTED_OPERATION = 6;
DATA_NOT_AVAILABLE = 7;
SEEK_ERROR = 8;
UNSUPPORTED_FEATURE = 9;
RANGE_ERROR = 10;
CODEC_NOT_SUPPORTED = 11;
MEDIA_ERROR = 12;
NETWORK_ERROR = 13;
GENERIC_ERROR = 14;
INVALID_SEEK_TIME = 15;
AUDIO_TRACK_ERROR = 16;
ACCESS_FROM_DIFFERENT_THREAD_ERROR = 17;
ELEMENT_NOT_FOUND = 18;
NOT_IMPLEMENTED = 19;
PLAYBACK_OPERATION_FAILED = 200; // Warning code
NATIVE_WARNING = 201; // warning code
AD_RESOLVER_FAILED = 202; // warning code

AD_MANIFEST_LOAD_FAILED : 203;
LAZY_AD_RESOLUTION_IN_PROGRESS : 204; // warning code
PREROLL_DISABLED : 20;

}

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License  Twitter™ and Facebook posts are not covered under the terms of Creative Commons.

Legal Notices   |   Online Privacy Policy