Great post! Though I think you can save yourself a ton of headaches by just downloading a pre-compiled version of ffmpeg for Linux:
https://johnvansickle.com/ffmpeg/
These builds work perfectly in Lambda.
Interesting article. Exodus in particular seems to solve a lot of problems with using FFMPEG on Lamda.
One point: It could be made more efficient with a streaming approach. i.e. pipe input file from request into FFMPEG's stdin, and pipe the outputs direct to S3. That way download, transcode and upload of resulting MP3 could all happen concurrently rather than each step waiting for the previous step to complete before starting.
In practice, I don't know how much this would affect execution time - maybe the download and upload steps are so blazing fast on AWS's network connections that it's negligible. But since you're paying by the second on Lamda, obviously faster completion is a good goal.
You forget to mention the biggest catch of this article or perhaps you are not aware for it. One needs to state clearly the licensing implications of using ffmpeg with GPL libraries. In short, all applications developed with this guide must be open source as well.
You could compile ffmpeg with only LGPL libraries you will lose libx264 for example and will only have limited features and performance of the ffmpeg's own h264 encoder. Not a hard road block but something to really consider before commiting to this :)
Hello, you could also download static build of ffmpeg from here: https://www.johnvansickle.com/ffmpeg instead of using exodus