You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: millicast/playback/players-sdks/android/sdk/getting-started-with-publishing.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,7 @@ Follow these steps to add the publishing capability to your application.
9
9
You can get the SDK library from [MavenCentral](https://central.sonatype.com/artifact/com.millicast/millicast-sdk-android). If you haven't already, add the following to your gradle dependencies.
Copy file name to clipboardExpand all lines: millicast/playback/players-sdks/android/sdk/getting-started-with-subscribing.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,7 @@ Follow these steps to add the subscribing capability to your application.
9
9
You can get the SDK library from [MavenCentral](https://central.sonatype.com/artifact/com.millicast/millicast-sdk-android). If you haven't already, add the following to your gradle dependencies.
@@ -58,6 +58,7 @@ The following key/value pairs are supported on the `source` attribute of the `TH
58
58
| headers | roArray | An optional array of strings representing headers to include on the content requests. The strings follow the format of `"headerName:headerValue"`. Defaults to an empty array to clear any headers that were set on HttpAgent. |
59
59
| streamType | string | Optional. Whether the stream is `"vod"`, `"live"`, or `"dvr"`. Will override `live` if set. |
60
60
| textTracks | roArray of TextTrackDescriptions | Optional. An array of descriptions representing external text track files. If specified at this level, it will be applied to all sources in the `sources` array |
61
+
| cmcd | CmcdSourceConfiguration | Optional. CMCD configuration for this source. Overrides player-level CMCD configuration. See [CMCD Configuration](#cmcd-configuration). |
61
62
62
63
### Typed Source
63
64
@@ -208,11 +209,11 @@ The Ads API exposes the following properties, methods, and events.
208
209
| scheduledAdBreaks | roArray of roAssociativeArrays | read | Array of the scheduled breaks that haven't played. These may either be a source object or a resolved AdBreak. |
209
210
| scheduledAds | roArray of Ads | read | Array of the ads that are scheduled and have not played. Only shows one break's ads with VAST. |
| addEventListener(eventType as string, listenerOwner as roSGNode, eventListener as string) | Add a listener for the specified player event. |
215
+
| removeEventListener(eventType as string, listenerOwner as roSGNode, eventListener as string) | Remove a listener for the specified player event. |
216
+
| schedule(adDescription as AdDescription, sourceDescription as roAssociativeArray)| Schedule an ad break. Optionally, pass a source description for use in custom server-side ad integrations.|
| license | string | Your THEO license. Optional if `licenseUrl` is specified. |
382
+
| licenseUrl | string | The URL from which to load your THEO license. Optional if `license` is specified. |
383
+
| theolive | roAssociativeArray | The configuration for THEOlive. Optional. |
384
+
| cmcd | CmcdConfiguration | The configuration for CMCD. Optional. See [CMCD Configuration](#cmcd-configuration). |
383
385
384
386
#### THEOlive Configuration
385
387
@@ -389,6 +391,35 @@ The PlayerConfiguration object is passed to the configure method. It is an assoc
389
391
| discoveryUrls | roArray of strings | Array of discovery URLs for your THEOlive deployment. If `theoLive` config is omitted, the default URL is 'https://discovery.theo.live/v2/publications/'.|
390
392
| externalSessionId | string | A session ID to use for your THEOlive session. This can tie an application session to a THEOlens session. |
391
393
394
+
#### CMCD Configuration
395
+
396
+
The CMCD configuration enables Common Media Client Data reporting. It can be set at the player level (in `PlayerConfiguration.cmcd`) or at the source level (in `SourceDescription.cmcd`). CMCDv1 will be used for all streams. CMCDv2 events will also be used if `eventEndpoints` is set.
| externalSessionId | string | Optional. External session identifier for CMCD. This is recommended to use to join CMCDv1 and CMCDv2 sessions together. |
411
+
| userId | string | Optional. User identifier for CMCD reporting. |
412
+
| eventEndpoints | roArray of CmcdEndpointConfiguration | Optional. Array of endpoints to send CMCD events to. |
413
+
| sessionId | string | Optional. Session identifier for this source. Only used for CMCDv2 event mode. A Roku-generated ID is used for CMCDv1 request mode. |
| url | string | The URL of the endpoint to send CMCD events to. |
420
+
421
+
**Merge Behavior**: When CMCD is configured at both the player and source level, the source configuration takes precedence for scalar properties (`externalSessionId`, `userId`, `sessionId`). The `eventEndpoints` arrays from both configurations are combined, with duplicates removed based on URL (source endpoints take priority).
422
+
392
423
## THEOlive API
393
424
394
425
The THEOlive API exposes the following property.
@@ -468,3 +499,75 @@ There are several player events being emitted.
468
499
}
469
500
```
470
501
-`timeupdate`: Fired when the current playback position changed as part of normal playback or in an especially interesting way, for example discontinuously. The event data is the currentTime.
502
+
503
+
### THEOlive Data
504
+
505
+
The THEOlive events provide additional information about the THEOlive distribution and endpoint. The `distributionloadstart` event has the distribution ID as the `src` property. The `distributionoffline` event has the distribution ID as the `distributionId` property. The `intenttofallback` event contains the reason for the fallback as the `reason` property. However, the other THEOlive events contain more detailed information about the distribution and endpoint.
506
+
507
+
For the `distributionloaded` event, the following properties are available on the Distribution object:
| cdn | string | Optional. The CDN used for this endpoint. |
531
+
| provider | string | Optional. The provider of this endpoint. |
532
+
| src | string | The URL of the stream for this endpoint. |
533
+
| srcType | string | The type of the stream for this endpoint. |
534
+
| adSrc | string |_Deprecated_ Optional. The URL for the ad stream. Only for v1/v2 endpoints. |
535
+
| daiAssetKey | string |_Deprecated_ Optional. The DAI identifier for this stream. Only for v1/v2 endpoints. |
536
+
| hlsMpegTsSrc | string |_Deprecated_ Optional. The HLS MPEG-TS stream URL. Only for v1/v2 endpoints. |
537
+
| hlsSrc | string |_Deprecated_ Optional. The HLS stream URL. Only for v1/v2 endpoints. |
538
+
539
+
# Capabilities API
540
+
541
+
The THEO SDK now also exposes a couple of helper methods for getting the capabilities of the Roku device. These methods are available on the `Capabilities` object, which can be accessed via `THEOsdk:Capabilities`, separate from the THEOplayer.
0 commit comments