Elastic Transcoder
3 minute read
Introduction
Elastic Transcoder is a managed service that facilitates the transcoding of multimedia files into various formats to ensure compatibility across devices. Elastic Transcoder manages the underlying resources, ensuring high availability and fault tolerance. It also supports a wide range of input and output formats, enabling users to efficiently process and deliver video content at scale.
LocalStack allows you to mock the Elastic Transcoder APIs in your local environment. The supported APIs are available on our API coverage page, which provides information on the extent of Elastic Transcoder’s integration with LocalStack.
Getting started
This guide is designed for users new to Elastic Transcoder and assumes basic knowledge of the AWS CLI and our awslocal
wrapper script.
Start your LocalStack container using your preferred method. We will demonstrate how to create an Elastic Transcoder pipeline, read the pipeline, and list all pipelines using the AWS CLI.
Create S3 buckets
You can create S3 buckets using the mb
API.
Execute the following command to create two buckets named elasticbucket
and outputbucket
:
$ awslocal s3 mb s3://elasticbucket
$ awslocal s3 mb s3://outputbucket
Create an Elastic Transcoder pipeline
You can create an Elastic Transcoder pipeline using the CreatePipeline
API.
Execute the following command to create a pipeline named test-pipeline
:
$ awslocal elastictranscoder create-pipeline \
--name Default \
--input-bucket elasticbucket \
--output-bucket outputbucket \
--role arn:aws:iam::000000000000:role/Elastic_Transcoder_Default_Role
The following output would be retrieved:
{
"Pipeline": {
"Id": "0998507242379-vltecz",
"Arn": "arn:aws:elastictranscoder:us-east-1:000000000000:pipeline/0998507242379-vltecz",
"Name": "Default",
"Status": "Active",
"InputBucket": "elasticbucket",
"OutputBucket": "outputbucket",
"Role": "arn:aws:iam::000000000000:role/Elastic_Transcoder_Default_Role",
"Notifications": {
"Progressing": "",
"Completed": "",
"Warning": "",
"Error": ""
},
"ContentConfig": {
"Bucket": "outputbucket",
"Permissions": []
},
"ThumbnailConfig": {
"Bucket": "outputbucket",
"Permissions": []
}
},
"Warnings": []
}
List the pipelines
You can list all pipelines using the ListPipelines
API.
Execute the following command to list all pipelines:
$ awslocal elastictranscoder list-pipelines
The following output would be retrieved:
{
"Pipelines": [
{
"Id": "0998507242379-vltecz",
"Arn": "arn:aws:elastictranscoder:us-east-1:000000000000:pipeline/0998507242379-vltecz",
"Name": "Default",
"Status": "Active",
"InputBucket": "elasticbucket",
"OutputBucket": "outputbucket",
"Role": "arn:aws:iam::000000000000:role/Elastic_Transcoder_Default_Role",
"Notifications": {
"Progressing": "",
"Completed": "",
"Warning": "",
"Error": ""
},
"ContentConfig": {
"Bucket": "outputbucket",
"Permissions": []
},
"ThumbnailConfig": {
"Bucket": "outputbucket",
"Permissions": []
}
}
]
}
Read the pipeline
You can read a pipeline using the ReadPipeline
API.
Execute the following command to read the pipeline with the ID 0998507242379-vltecz
:
$ awslocal elastictranscoder read-pipeline --id 0998507242379-vltecz
The following output would be retrieved:
{
"Pipeline": {
"Id": "0998507242379-vltecz",
"Arn": "arn:aws:elastictranscoder:us-east-1:000000000000:pipeline/0998507242379-vltecz",
"Name": "Default",
"Status": "Active",
"InputBucket": "elasticbucket",
"OutputBucket": "outputbucket",
"Role": "arn:aws:iam::000000000000:role/Elastic_Transcoder_Default_Role",
"Notifications": {
"Progressing": "",
"Completed": "",
"Warning": "",
"Error": ""
},
"ContentConfig": {
"Bucket": "outputbucket",
"Permissions": []
},
"ThumbnailConfig": {
"Bucket": "outputbucket",
"Permissions": []
}
}
}