While you are encoding your video, you can keep track of the process. Learn how the Encoding Service informs the client about the progress by raising events and delivering these events with message publishers

Job Progress Tracking

This article discusses job progress tracking during encoding. You can find an overview of the entire encoding process in the Job Processing article.

The Encoding Service informs the client about the job progress by raising events every time the job reaches certain processing phase. The events are delivered to the client using the mechanism specified in the job description’s section Message Publishers. The Encoding Service supports the following delivery mechanisms:

  • RabbitMQ

  • Azure Service Bus

  • Amazon SQS Queue

  • FTPS/Files

See Message Publishers for more details about the Message Publishers.

Regardless of the delivery mechanism, the events and their payload stay the same. For each event, the Encoding Service reports:

  • JobId

  • TenantId (Name)

  • ExternalId, ExternalType, ExternalProvider - as specified in the job description

  • …​ plus additional, event-specific fields

Event List

The following table lists all raised events depending on the processing phase.

Event Phase Purpose Payload

JobCreated

Pre-Validation

Pre-validation is complete and the job is ready to start processing

Echo of the job parameters

AcquisitionProgress

Acquisition

Acquisition is in progress

Acquisition %

ContentAcquired

Acquisition

Acquisition is finished

Total files and bytes acquired

ContentMapped

Media Mapping

Mapping is finished

Mapping results, incl. languages

ContentPreProcessed

Media Mapping

All streams are mapped and extracted

Audio and subtitles languages

VideoEncodingStarted

Encoding

Encoding started

Used encoding options

EncodingProgress

Encoding

Encoding is in progress

Encoding %

EncodingFinished

Encoding

Encoding is finished

List of bitrates with their protection details

ImagesExtracted

Image Extraction

Extraction of images is finished

Relative path to the images location and the list of extracted images

ContentPublished

Publishing

Content is published

Published location, total files and bytes published

JobSuccess

Publishing

The whole job is successfully completed

Links to generated DASH and HLS manifests

FinalError

Publishing

The job failed

Error code and message

Error codes

If a job fails, an event Final Error is sent with an error code and description. The following codes are used depending on the processing phase where the error happened:

Error Code Description

Internal Error

5000

Unexpected internal service error occurred

Job Cancelled

5001

When you cancel your job through the API, you receive this error. This is an expected behavior.

Prevalidation Error

5003

An error occurred during the acquisition/publishing locations pre-validation, such as: inability to connect, insufficient permissions, etc.

Acquisition Error

1000

An error occurred during the content acquisition phase. Usually, this happens due to the inability to download files. For example, files not found, etc.

Encoding Error

2000

An error occurred during the actual encoding/packaging process. A rare case, but might occur due to some content issues.

Publishing Error

3000

An error occurred during the publishing the produced packages to their final locations. This might happen due to the inaccessibility of a target location.

Revision History

The table below lists the document versions and any changes to them.

Version Date Description

1.0

April 1, 2021

  • Initial version.