An asset is an item representing something that can be presented in an app. It can be playable like a movie a tv-show episode but it can also be a tv-series or a season which in turn contains other assets.
When something is playable there is a need for something representing the actual playable content. The reason being that it must be possible to replace one version with another for the same asset. This concept is in our platform called material. The material represents one version of what is actually playable or is about to be playable.
When doing a first ingest for an asset you can provide for instance an mp4 file with all the video and audio tracks you want to use. This file will be used as a source for the first material, the material with version number 1. If you later on discover that you have a newer and better version of your source file available you can do a new ingest and create a material with version number 2 (and so on). If both versions are ingested successfully you can select to use any one of them when an end user decides to play the asset. A more advanced feature is have multiple active materials and then select different materials for different users based on selectors. For details on this read more about material profiles and variants.
A material can have any number of tracks of different types.
Video- The actual video tracks. We will create one video track for each bitrate. The bitrate ladder is configured using an ingestion profile. At the moment the ingestion profile(s) can only be configured by a platform administrator.
Audio- The audio tracks are created based on the input. For the case where the input contains stereo audio tracks will be added automatically although as an advanced feature it is also possible to select specific audio tracks and skip others and also to provide an audio tracks in separate input source file. As for video bitrates the bitrates created will dependent on the selected ingestion profile.
Subtitle- Subtitle tracks can be added using separate source files either directly when the material is created or added later. The latter currently results in a new separate material.
Version number- All materials will have a version number starting with 1 for first material. Next version will be 2 and so on. If one version is deleted the version number is still taken and will not be reused.
Material ID- All materials will have a material ID. This will always be generated and you only need to care about it if you want to update a material or create a new based on material using the management API.
Profiles- A material can have one or more profiles. A profile is used to select a material when different end users should use different materials (advanced feature).
Variants- A material can have zero or more variants. A variant is an advanced feature that can be used together with profiles to separate what is available for different end users without using different materials. See Variants
VOD ingestion flows¶
When creating a new material this will be done using an internal workflow. There are different workflows available since different ingests require different steps. As a customer administrator you cannot actively select a specific flow, it will be automatically selected for you based on what you provide either in the management API or in the customer portal. You do not really need to care but if you try to do something more advanced it might be good to know what is actually happening in the background, what is a simple operation and what is a more resource consuming operation.
Standard- The standard flow is the basic ingestion. One or multiple source files are ingested resulting in a completely new material. The source is transcoded so it is a resource consuming operation.
Update- The update flow is used when you want to change an existing material in a way that a new material will be created but there is no need for a transcode operation. It can be that subtitles are added or removed. This is normally a fast operation.
External- An external ingest is when you have manifest files available outside our platform and want to make them available within our platform. This is only supported for content without DRM. This is a quick operation.
Live2VOD- Live to VOD is the process of taking a part of a live stream and create a VOD from it. This is a quite resource consuming process.
VOD2VOD- VOD to VOD is the process of taking a part of a material and create a new material. This is used when you want to trim the beginning and/or end of a existing VOD. This is a fast operation since nothing is actually removed we just set a start/end.
See Material Activation for more information about activating materials.
See Material Updates for more information about how materials can be updated.
Some sub pages might contain links to very specific examples but most of our examples are available in our management API example Postman project. This is where we add more both simple and advanced examples. We are continuously adding more based on requests. See Management API Postman Example Project