Amazon AWS announced Elastic Transcoder at the beginning of this year. For us this was interesting news as video transcoding is an essential part of the Digital Asset Management Systems we develop. So far we've been using Zencoder which offers a wide range of encodings and fits the needs of our customer quite well. On the 17th of May AWS announced three new ways of content output that makes it worth to dive deeper into some features and to compare the two video transcoding services.
The set of features AWS Elastic Transcoder was offering in the beginning didn't make it a serious candidate to tackle other cloud services providing video transcoding as a professional service. But with the introduction of HLS support, WebM support and MPEG-2 TS output it just became much more attractive. Let's have a look on some basic features to find out whether it would be worth to change the current implementation of our systems and introduce another SaaS for video transcoding.
Amazon AWS integrates the new service with a lot of known techniques like AWS Data Pipeline and AWS SNS. So if you need job handling with different priorities and maybe SMS support as part of a notification service is important, this might be interesting for you. Zencoder on the other hand provides home brew but rock solid JSON based solutions to handle transcoding jobs as well as a HTTP based callback mechanisms that can be easily integrated into a RESTful web system.
For our Digital Asset Management solution we use mainly AWS S3 as storage which is fully supported on both Zencoder and Elastic Transcoder. So whatever you want to transcode should preferably live on AWS S3 and ends up there after transcoding is finished to be played out to the user. It should be mentioned that Zencoder provides source upload and result download via FTP and HTTP as well.
Looking closer in the the input format supported, Zencoder is clearly taking the lead: nearly everything is supported here in comparison to the AWS service that is concentrating on 3GP, AVI, FLV, MP4 and MPEG-2. So it really depends on your use-case to decide whether this would be a real limitation or not to integrate with AWS Elastic Transcoder. Equally the supported output formats for Elastic Transcoder is limited to the most important formats and containers such as H.264, WebM, MPEG-2 TS, AAC audio where Zencoder provides an impressive list of video outputs.
Additionally Zencoder features an impressive list of SLAs while Amazon is not providing any of those for Elastic Transcoder so far. This might be changing in the near future and is likely a result of the service being quite young. Last but not the least the pricing for video transcoding on Elastic Transcoder is significantly lower then for Zencoder.
|Topic||Zencoder||AWS Elastic Transcoder|
|Jobs organization||via POST||Via pipelines, more flexible - priorities, enable disable pipelines, etc.|
|Jobs administration||Via job processing API||Via pipelines|
|Output configuration presets||No||Yes|
|Live stream input||Yes||No|
|Job notifications||Email, http POST||Amazon Simple Notification Service (mail, ams, http, SQS)|
|Media input||HTTP/HTTPS, FTP/FTPS, SFTP or S3||S3|
|Input formats||Nearly everything||3GP, AAC, AVI, FLV, MP4 and MPEG-2|
|Output formats||Nearly everything||H.264, WebM, MPEG-2 TS, AAC audio|