Offerings are differentiated based on input type. There are two main input types: Transforms (file-based / VOD processing) and Live Events (live ingest and processing).
Transforms
Section titled “Transforms”Transforms are for static (file-based / VOD) content stored in your connected cloud storage (for example, Azure Blob Storage containers or Amazon S3 buckets).
For on-demand content, a Transform acts as a template for the tasks to be performed, and a Job connects a Transform to input content (for example, an Asset or an HTTPS URL) and produces an output 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:
- Create a Transform.
- Submit Jobs under that Transform.
- List Transforms.
- Delete a Transform, if you are not planning to use it in the future.
Use Transforms to configure common tasks for processing video or audio files (for example encoding, thumbnail generation, track insertion, asset conversion, or AI processing).
A Transform currently produces one output. Each output has a preset that defines the processing to perform, and a relativePriority (High, Low, or Normal) that MK.IO uses to order work across multiple Transform outputs.
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 create Jobs in the Video Processing page or using the API.
A Job specifies information such as the location of the input content and the destination for the output. You can specify the input content two ways:
- An existing Asset — optionally trimmed to a specific
startandendpoint on the source timeline. - An HTTPS URL — including a SAS URL, with an optional base URI that gets concatenated with the file names you provide.
Each Job also has a priority (High, Low, or Normal, default Normal) that determines its place in the processing queue relative to other Jobs, and optional correlationData — key/value pairs you provide that are echoed back in the Job’s state events, useful for tying a Job back to something in your own system.
Job state
Section titled “Job state”A Job moves through the following states, tracked by the system:
| State | Meaning |
|---|---|
Scheduled | The Job has been accepted and is waiting to start. |
Queued | The Job is queued for processing. |
Processing | The Job is actively running. |
Finished | The Job completed and produced its output Asset. |
Error | The Job failed. |
Canceling | A cancellation request is being applied. |
Canceled | The Job was canceled before it finished. |
Poll the Job resource or subscribe to webhooks to know when a Job reaches Finished or Error — the output Asset is not ready to use until then.