I'm using AWS' presigned URLs to let my users upload directly to an S3 bucket, with a lambda function to generate thumbnails, I keep track of the user's uploads through my app's database. This is as close as I imagine an "affordable API for audio, video, and images".
I had never worked with such API before so it took me roughly two days, the AWS documentation is abysmal, and I could've one that in just a few hours if only they cared about documenting their APIs better. My biggest mistake was going for a kind of presigned URL that was not giving me much control over the size of files sent (I don't find it anymore for some reason, looks like the documentation changed). Go with PresignedPost, it allows quite a lot of control and it's an amazing way to avoid load on your servers.
are you also encoding videos for adaptive streaming?
Can't help you with that, I only worked with images, best of luck!
If video is of interest, I'd definitely take a look at that and see if it meets your needs. It's one of those specialized serverless offerings from AWS that you pay as you use.
Comments
I'm using AWS' presigned URLs to let my users upload directly to an S3 bucket, with a lambda function to generate thumbnails, I keep track of the user's uploads through my app's database. This is as close as I imagine an "affordable API for audio, video, and images".
Thanks for the feedback! How long did it take you to implement this and are you also encoding videos for adaptive streaming?
I had never worked with such API before so it took me roughly two days, the AWS documentation is abysmal, and I could've one that in just a few hours if only they cared about documenting their APIs better. My biggest mistake was going for a kind of presigned URL that was not giving me much control over the size of files sent (I don't find it anymore for some reason, looks like the documentation changed). Go with PresignedPost, it allows quite a lot of control and it's an amazing way to avoid load on your servers.
Can't help you with that, I only worked with images, best of luck!
I have played around with AWS Elastic Transcoder: https://aws.amazon.com/elastictranscoder/
If video is of interest, I'd definitely take a look at that and see if it meets your needs. It's one of those specialized serverless offerings from AWS that you pay as you use.