

The Lambda pricing is a bit more complicated because it depends on both the execution time and the RAM allocation. The cost of transcoding audio on Elastic Transcoder is $0.0045 per minute of audio.

Let’s do a quick price comparison of Elastic Transcoder and the transcoder Lambda function that we’ll build. That said, the cost savings of using Lambda rather than a more specialized service can be massive so there is some practicality to the choice as well. The techniques that we’ll cover for including complex native binaries in Lambda functions will be generally useful outside the context of transcoding, and that’s the primary purpose of this article. Well, for one thing, this this is a Lambda tutorial! So why not just use Elastic Transcoder instead of Lambda? In those ways, our Lambda transcoder is more similar to using Elastic Transcoder than to managing our own infrastructure. Using Lambda means that our transcoder will automatically scale to handle whatever volume of requests we throw at it, and that our costs will be proportional to usage. This might sound similar to running FFmpeg on our own server, but there are some significant differences. Instead, we’ll be using Exodus to bundle FFmpeg inside of an AWS Lambda function for performing transcoding tasks. We’ll be building a media transcoding service in this tutorial, but we won’t use either of these two methods.

You could use Amazon’s AWS Elastic Transcoder service, or you could run a server with FFmpeg installed and handle the transcoding yourself. There are a number of ways that one could go about accomplishing something like this. Things get a bit more complicated if you need to trigger transcoding tasks programmatically in a scalable way.įor instance, imagine that you would like to build a service for extracting MP3s from video files. If you’re just transcoding a few files here and there for your own site, then you can probably get away with just running things manually on your own laptop. They’re obviously a bit of an outlier, but even something as simple as using VP9 with an H.264 fallback in your video tags can have a tremendous impact on user experience.

Netflix, for example, encodes each title in at least 120 different formats and optimizes the encoding settings on a per-title basis. When delivering media content over the internet, it’s important to keep in mind that factors like network bandwidth, screen resolution, and codec support will vary drastically between different devices and connections.Ĭertain media encodings will be better suited for certain viewers, and transcoding source media to multiple formats is a must in order to ensure that you’re delivering the best possible experience to your users. Building a Media Transcoder with Exodus, FFmpeg, and AWS Lambda
