Ask HN: Getting started with Amazon Cloud & Zencoder

5 points by robwgibbons ↗ HN
Hey HN. We have a client who wants us to build a user-submitted video website. I can't be much more specific, but we're considering Amazon's cloud hosting and Zencoder to offload the video processing.

I don't have any experience with either of these two services. Does anyone have any advice, tips or links to useful tutorials?

5 comments

[ 4.8 ms ] story [ 27.0 ms ] thread
I too am looking for the same, please do share as you find helpful resources.
Hey, I don't want to come off like I'm just shilling for my company, but what you are trying to do may possibly be more easily done with a video hosting platform with an API.

By taking this approach, you won't have to worry about tuning encodes yourself, dealing with problem videos, etc. while also getting access to many other features that the client might be interested in (playlists, analytics, video SEO, etc.).

If you want to talk sometime and discuss various options and pros and cons for each, I'd be happy to help out. You can reach me at ben -at- wistia -dot- com. I'm the VP of Engineering there.

What program language are you going to be using?

I'd recommend checking out the available integration libraries (http://zencoder.com/docs/integration-libraries/#libraries) that we and our customers have created to simplify your integration with Zencoder. You can read our docs (http://zencoder.com/docs/) and API reference (http://zencoder.com/docs/api) for more information about the options you can set. Our API Builder (https://app.zencoder.com/api_builder) will also help you get started with seeing how some of the options fit together.

As for S3, we work in Ruby and use RightAWS (http://rubygems.org/gems/right_aws). That would handle the transfer of files from your users to S3. If you're using another language I'd recommend checking online for an S3 library compatible with your language.

I'm at a similar stage, and I have settled on Transloadit (http://www.transloadit.com) for encoding and storing on S3, and the HTML5 VideoJS player (http://www.videojs.com) - which falls back on FlowPlayer for Flash, for playing the output video on the website. My experience with all three of them has been fairly positive, if not excellent.
I had a project recently that had requirements similar to what you are describing, and I went with s3 + zencoder, and it worked wonderfully. This was my first time working with zencoder, but I've used s3 a lot.

What I did is send movie uploads directly to s3 via swfupload so my Rails app isn't tied up with uploads. When the upload is done I use a JS callback to set the location of the uploaded file (bucket and path) in a hidden field that gets set in the ActiveRecord model when the form is submitted. If that attribute is present at creation time, a call is made to zencoder to start the encode. Then I use flowplayer to show the encoded videos.

It's a straightforward implementation, and it works well. I've been pleased as punch with zencoder, and I'd definitely recommend them. You might also want to look at http://www.pandastream.com/ ... it looks like a great alternative, but zencoder's pricing was a better match for this project.