RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
...
This document captures a high-level requirements and architecture for client-side DAI Implementation in the AAMP Native Engine
Table of key web links
...
Web Resource
...
...
Descrption
...
...
Req No. | Product Requirements | Status |
---|---|---|
1.0 | ||
2.0 |
This section provides a high-level architecture
draw.io Diagram | ||||||||
---|---|---|---|---|---|---|---|---|
|
...
draw.io Diagram | ||||||||
---|---|---|---|---|---|---|---|---|
|
draw.io Diagram | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
View file | ||||
---|---|---|---|---|
|
Process viewView
Detaching the AAMP from browser & merging with the FOG's executable gives us the flexibility in caching the dynamic Ads in the local storage. It provides many other advantages and few disadvantages too.
...
Name | Data Type | Read or Write | Description |
---|---|---|---|
adBreaks | Object[] | r | Array of AdBreak objects (sorted by time). Contains replaced and inserted Ad placed into the timeline. |
adOpportunities | Object[] | r | Array of AdOpportunity objects (sorted by time). Contains replaced and inserted Ad opportunities available for client-side Ad insertion. |
duration | Number | r | Duration of the entire timeline in milliseconds (includes content and placed Ads). |
position | Number | r | Current playback position in milliseconds. |
start | Number | r | Earliest seekable position in milliseconds |
timedMetadata | Object[] | r | Array of TimedMetadata objects (sorted by time). Contains metadata associated with HLS subscribed tags and embedded SCTE35 data. |
...
Name | Return Value | Arguments | Description |
---|---|---|---|
addEventListener | void | eventType - String, listener - Function | Register an event listener for the specified eventType. |
removeEventListener | void | eventType - String, listener - Function | De-register the specifiend event listener for the specified eventType. |
placeAdBreak | bool | adBreak - Object | Places the specified AdBreak into the timeline. Return true if successful. |
subscribedTimedMetadata | void | tags - String [] | Sets collection of HLS tags to monitor during parsing, or embedded data. Fire "timedMetadata" event when subscribed tags are parsed. |
...
Name | Payload | Description |
---|---|---|
timelineUpdated | seekableRangeChanged - bool adBreaks - Object[] - array of modified AdBreaks adOpportunities - Object[] - array of inserted AdOpportunities duration - Number - duration of entire timeline (milliseconds) position - Number - current position in the timeline (milliseconds) start - Number - earliest seekable position in the timeline (milliseconds) | Fired timeline is updated. An update occurs when the timeline start/duration changes, or new AdOpportunity has been inserted, or an AdBreak / Ad has been placed. |
timedMetadata | timedMetadata - Object | Fired when new TimedMetadata has been parsed. |
adBreakStart | adBreak - Object - the AdBreak being started speed - Number - current playback rate seenCount - Number - number of times Ad break was played (in full). | Fired when player starts playing an AdBreak. |
adBreakComplete | adBreak - Object - the Adbreak being finished progress - Number - percentage of Ads played ads - Object[] - array of Ad including played progress of each Ad. | Fired when player finishes playing an AdBreak. |
adBreakSkipped | adBreak - Object - the Adbreak being skipped or exited progress - Number - percentage of Ads played | Fired when player skips over an AdBreak. |
adStart | ad - Object - the Ad being started speed - Number - current playback rate seenCount - Number - number of times Ad was played (in full). | Fired when player start playing an Ad. |
adProgress | ad - Object - the Ad being played progress - Number - percentage of Ad played | Reports the player's progress as it plays an Ad. |
adComplete | ad - Object - the Ad that finished begin played progress - Number - percentage of Ad played | Fired when player finishes playing an Ad. |
...
Name | Data Type | Read or Write | Description |
---|---|---|---|
ADBREAK_TYPE_INSERT | 0 | static const | Indicates adBreak was inserted. |
ADBREAK_TYPE_REPLACED | 1 | static const | Indicates adBreak was replaced. |
type | Number | r | Specified the abBreak type, and indicates if adds are inserted or replace existing content. |
id | String | r | Unique identifier associated with the ad break. |
start | Number | r | Starting position (milliseconds) of the ad break in the timeline. |
duration | Number | r | Duration (milliseconds) of the ad break. |
ads | Object[] | r | Array of Ad objects (sorted by time). Contains the ads that will be played during the ad break. |
...
Name | Return Value | Arguments | Description |
---|---|---|---|
placeAds | bool | position - Number, ads - Object[] | Place the specified Ad objects in the AdBreak. Return true if successful. |
...
Name | Data Type | Read or Write | Description |
---|---|---|---|
id | String | r | Unique identifier associated with the ad. |
url | String | r | URL specifying the location of the ad's manifest. |
duration | Number | r | Duration (milliseconds) of the ad. |
metadata | Object | r | Additional metadata associated with the ad. |
...
Name | Data Type | Read or Write | Description |
---|---|---|---|
AD_PLACEMENT_TYPE_PREROLL | 0 | static const | Indicates opportunity places ad before the main content. |
AD_PLACEMENT_TYPE_MIDROLL | 1 | static const | Indicates opportunity places ad in the main content. |
AD_PLACEMENT_TYPE_POSTROLL | 2 | static const | Indicates opportunity places ad after the main content. |
AD_PLACEMENT_MODE_INSERT | 0 | static const | Indicates opportunity inserts ad inside content. |
AD_PLACEMENT_MODE_REPLACE | 1 | static const | Indicates opportunity replaces content. |
id | String | r | Unique identifier associated with the ad opportunity. |
placement | Number | r | Indicates placement type: preroll vs. midroll vs. postroll. |
mode | Number | r | Indicates placement mode: insertion vs. replacement. |
start | Number | r | Starting position (milliseconds) of the ad opportunity. |
duration | Number | r | Duration (milliseconds) of the ad. |
metadata | Object | r | Additional metadata associated with the ad opportunity. |
...
Name | Data Type | Read or Write | Description |
---|---|---|---|
METADATA_TYPE_TAG | 0 | static const | Indicates metadata is from the manifest. |
METADATA_TYPE_ID3 | 1 | static const | Indicates metadata was embedded in the content. |
type | Number | r | Specified the metadata type: manifest vs. embedded. |
time | Number | r | Time (in milliseconds) of the metadata. |
name | String | r | Name of the metadata. E.g., #EXT-X-CUE, #EXT-X-SCTE35. |
content | String | r | Value of the metadata. |
id | String | r | Unique identifier associated with the metadata. |
metadata | Object | r | Additional name / value pairs obtained from the metadata content string. |
...
Name | Data Type | Read or Write | Description |
---|---|---|---|
pause | Number | r | Specifies if pause is restricted during Ad playback. |
rewind | Number | r | Specifies if rewind is restricted during Ad playback. |
fastForward | Number | r | Specified if fastForward is restricted during Ad playback. |