VOD
A typical client UI application needs to retrieve on-demand content metadata to display to the end-user. On-demand content usually includes movies and TV shows, but can also include music videos, karaoke videos and so on. Video on-demand is technically distinct from live broadcast by its delivery mechanism, therefore the content discovery APIs can be separated as well. The requests required and how the data is used depends on the requirements of the deployment. Since on-demand metadata cannot be delivered on a broadcast stream in the same way that linear TV metadata can, the method to retrieve the metadata is the same for all devices – over HTTP.
Data models
The basic data models involved in these use cases are described below. All this data can be found in the Metadata Server (MDS); product subscription details for the account is found in the Rights Management Service (RMG).
There are two different data models – the older, technical-based one, where products are linked to technical contents, and the newer, editorial-based one (introduced in version 20.51), where products are linked to editorial contents.
The only difference in terms of usage is that if you are using the editorial-based model, you need to use version 2 of the VOD editorials API to retrieve metadata, rather than the original (v1) version. See Retrieve catalogue node information.
Technical-based data model
The diagram below shows the links between the various models within MDS for the technical-based data model. Each model is grouped within the API by which it can be accessed.
Editorial-based data model
The diagram below shows the links between the various models within MDS for the editorial-based data model. Each model is grouped within the API by which it can be accessed.
Nodes
Also known as catalogue nodes, a node represents a collection of VOD items and can contain child nodes, VOD items, or both (although both is rare as it is confusing from a UI perspective). The whole collection of nodes is known as the catalogue and is a tree structure of any depth. Nodes at the top of the tree are known as root nodes, as they have no parent node. The root nodes should be the first nodes shown to the user when browsing.
VOD item (technical-based data model only)
A VOD Item is a scheduled link between a node and a technical content item. It contains information about when then technical content should appear in the node, and its operator-defined display order within that node. It is also linked to any number of products.
Editorial content
Editorial content simply contains editorial metadata about the content, such as title, description, actors and so forth. It also contains a link to a parent series entity if applicable, and any associated Image metadata.
Technical content
Technical content contains data about a single delivery mechanism for a content item. For every delivery mechanism available, there will be a different technical content item. Each technical item contains the information required for the compatible device to be able to playback the content, for example a HLS playlist, RSTP URL or other identifier. Each technical item will contain a list of compatible device types (as defined by the operator) that the device can use to filter the technical content to those it can consume. The technical content also repeats most of the editorial content metadata, but it could contain some alterations specific to the technical item. Every technical content item belongs to a parent editorial content.
Products
An on-demand product is the same as a live content product; it makes content available for a length of time for a specific price. The metadata includes details such as product availability, price, currency and type. A product can be linked to any number of VOD Items. Likewise, a VOD Item could be linked to any number of products, though it is expected that each product has a different offering, e.g. different product types or content. There are two product types, subscription product and transaction product.
- A subscription product is a product that typically has no pre-defined end date, and incurs a recurring charge on an account for continued access. Access to content contained within only stops if subscription to the product is cancelled or the content stops becoming available within the product. The typical use case for subscription products in the context of on demand content is to give long term access to collection of on-demand items.
- A transaction product is a product that gives access to content for a limited length of time for a single charge. It can include any number of VOD items.
Series
The series represents a collection of content items that belong together, and contains metadata such as a description and promotional image information. It also acts as a link for all related content. Not all content items will have a series, and some deployments do not provide this information at all.
Season
The season also represents a collection of content items that belong together, and contains metadata such as season number, description and promotional image information.
Images
Images may be used in solutions where the UI is basic and does not require multiple images per content, otherwise the ImageService must be used.
Images are used in a number of contexts, including:
- Artwork for content, such as DVD covers, promotional artwork.
- Backgrounds and wallpaper for various views within the client app.
Use cases
- Retrieve catalogue node information
- Retrieve content information
- Retrieving VOD series information
- Retrieving VOD image information
- Sorting responses