Content playback
The most important use case of streaming app is to play the appropriate content. The following section describes how to identify and play the correct content.
When the app plays content, it must report the watch event to User Activity Vault – see Report watch events.
If it does not, many of the reports available through Data Warehouse will not work.
Identifying the content to be played
MDS metadata is filtered by the deviceType field. The value filtered on is device-specific to ensure that it is DASH or HLS; DASH content uses Widevine encryption, HLS content uses Fairplay.
Service
https://server:port/metadata/delivery/GLOBAL/btv/services?filter={"locale":"en_GB","deviceType":{"$in":["Chrome"]}}
VOD editorial
https://server:port/metadata/delivery/GLOBAL/vod/editorials?filter={"editorial.id":{"$in":["GLOBAL_20711_20190515010000"]},"technical.deviceType":{"$in":["Chrome"]}}
Retrieving the DRM id
For encrypted content, the MDS metadata provides a unique DRM id used as internal reference for further playback operations. This field needs to be received and stored on client side when acquiring metadata. An example can be seen with following URL:
https://server:port/metadata/delivery/GLOBAL/btv/services?filter={"locale":"en_GB","deviceType":{"$in":["Chrome"]}}&fields=["technical.drmId"]
Fetching the content token
To fetch the content token, the following example should be used before playback:
https://server:port/ias/v2/content_token?content_id=TEN900-CH015-DASH_1&type=device
See also
- Metadata Server (MDS) API Documentation
- Identity Authentication Service (IAS) API documentation
- Entitlements
If you are using OpenTV Player, see also: