The /media/playlist Robot

Transloadit can enrich media files with meta data and generate playlists for them.

The /media/playlist Robot merges segment files to generate playlist files for HTTP Live Streaming (HLS).


Name Type Default Description
use (required) String / Array of Strings General
Specifies which Step(s) to use as the input to this Robot.

Special Step names
A special Step name is ":original", which "uses" the originally uploaded files.

Providing several Steps as input
You can also add arrays here to use several Steps:
use: [ ":original", "encode2", "resizing3" ]

Step bundling
This Robot allows you to bundle several Steps that are to be used as the input. In fact, for this Robot you should use Step bundling, otherwise you will create one playlist file for each passed segment. If you set bundle_steps to true, however, it will create one playlist containing all the provided segments. To achieve this, provide an object like the one below to the use parameter:
use: { steps: "segment_step_name", "bundle_steps": true }

Please keep in mind that all input Steps must actually be present in your Template. If one of them is missing, no playlist is generated because the Robot waits indefinitely for all input Steps to be finished first.

Grouping segments into several playlists
You can also set group_by_original to true, in order to create a separate playlist based on the segments for each of your uploaded or imported files, instead of creating a playlist containing all segments of all uploaded and imported files.

See a demo for the use parameter here.
name String "playlist.m3u8" The final name of the playlist file.
relative_to String "" URL prefixes to use in the playlist file. Example: "/234p/"
resolution String "" The resolution reported in the playlist file. Example: "416x234". More info.
codecs String "" The codecs reported in the playlist file. Example: "avc1.42001e,mp4a.40.34". More info.
bandwidth String("auto") / Integer "auto" The bandwidth reported in the playlist file. Example: 2560000. More info. This value is expressed in bits per second.
meta_name String "" The meta name as used for NAME in the #EXT-X-STREAM-INF path in playlists. Can be different from the (file)name.
protocol String "http" The URL protocol used for all URLs in playlists. Can be "http" or "https".

Example use cases

Our /media/playlist Robot can be used in combination with other Robots, to create powerful workflows unique to your use case.
Here are a few example scenarios, and the required the Assembly Instructions to implement them.
You can also try demos of these examples right here, live on our website.

Related blog posts

Over the years we wrote the following posts about Our /media/playlist robot on our blog:

Did you know?

You can easily combine Robots to create powerful workflows, unique to your business.
This is the power of Transloadit.