Video-on-demand transcode and deliver workflow

Video-on-demand serverless workflow, with transcoding, delivery and error handling.

The transcoding workflow orchestrates the process of AWS Elemental MediaConvert service
1. Starts the media transcoding process by invoking a Lambda function responsible for submitting a MediaConvert job.
2. Checks the status of the MediaConvert job by invoking another Lambda function.
3. Updates a DynamoDB table with information about the video, such as video_id, video_name, job_status, etc.
4. Invokes a Lambda function to archive the original video.
5. Publishes a message to an SNS topic with the payload of the previous states. After this state, the state machine ends.
The Step Functions workflow for packaging orchestrates the process of creating the asset for a AWS Elemental MediaPackage packing group
1. start the asset creation process by invoking a Lambda function responsible for creating an asset.
2. publish a message to an SNS topic with the payload from the previous "Asset creation function" state. After this state, the state machine ends.

< Back to all workflows

GitHub icon View this workflow on GitHub


Clone repo

git clone https://github.com/aws-samples/step-functions-workflows-collection/tree/main/vod-transcode-delivery-cdk/cd step-functions-workflows-collection/vod-transcode-delivery-cdk

Deploy

<code>cdk deploy --all</code>


Testing

See the GitHub repo for detailed testing instructions.

Cleanup

Delete the stack: cdk destroy --all.

Additional Resources

Created by:

Stan Fan

Stan Fan

Stan Fan is a Solutions Architect at Amazon Web Services (AWS) based on Sydney, Australia.

Follow on LinkedIn