Inputs are how you get content into the platform for processing.

Offerings are differentiated on the basis on input type. There are two main input types, Transforms and Live Events.


Transforms are for static content that is uploaded to Azure blob storage. They support re-encoding as well as a file copy into their blob storage.

For on-demand content, a Transform is a template for work to perform, and a Job connects a Transform to content in blob storage to create an Asset.

A Transform is like a recipe. It helps you create the recipe once (Step 1), and submit Jobs using that recipe (Step 2). You can:

  1. Create a Transform.
  2. Submit Jobs under that Transform.
  3. List Transforms.
  4. Delete a Transform, if you are not planning to use it in the future.


Use Transforms to configure common tasks for encoding or managing video. Each Transform describes a recipe or a workflow of tasks for processing your video or audio files. A single Transform can apply more than one rule.


A Job is the actual request to apply the Transform to a given input video or audio content. Once the Transform has been created, you can submit jobs using Media Services APIs, or any of the published SDKs. The Job specifies information like the location of the input video and the location for the output. You can specify the location of your input video using: HTTPS URLs, SAS URLs, or Assets.

Live Events

Live Events are for content that is streamed continuously to an RTMP or RTMPS endpoint. These support passthrough options as well as re-encoding to ABR.

For live content, a Live Event creates an ingress endpoint, an egress/preview endpoint, and an encoder, and that's it. The content doesn't go anywhere! Live Events are persistent - they provide a DNS name through which content can be accessed. The DNS name is persistent as long as the service is alive, though its configuration is removed when a stream is stopped.

In order for content to be presented in a playable rendition, a Live Output is required.

Live Output

Live outputs are a timeshift buffer that persists to Azure blob storage as the asset is being streamed. It defines the packaging parameters for a live event.

Multiple outputs are possible per live event, say in a case where you wanted a 6-hour timeshift buffer for later review, and a 3-minute buffer for live playback.