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.