With the rise of software-as-a-service (SAAS) and infrastructure-as-a-service (IAAS) I thought it was about time we started compiling a list of web-based video encoding options. This is not a list of online video platforms but rather a set of places that you can upload a video to so that it's encoded or transcoded and then you can do whatever you want with it, without using a specific platform afterward. Useful stuff if you're looking to host your own videos but need transcoding options. It's complex stuff that can't possibly be covered properly in an article like this which is mainly meant to be a list of services available. This list isn't about full-features platforms, only about ways you can encode or transcode your video in the cloud.
Google Compute Engine (GCE)
Google has started offering the GCE as a way to run large-scale computing out in the cloud along with their Google Cloud Storage and App Engine. That means you could not only encode and transcode your video in the Google Cloud but also store there for worldwide availability:
Google Compute Engine currently offers the following 4 machine types. More configurations are planned at a later date.
|Machine Type Pricing|
|Configuration||Virtual Cores||Memory||GCEU *||Local disk||Price/Hour||$/GCEU/hour|
|n1-standard-1-d||1||3.75GB ***||2.75||420GB ***||$0.145||0.053|
|n1-standard-8-d||8||30GB||22||2 x 1770GB||$1.16||0.053|
GCEU is a unit of CPU capacity used to describe the compute power of the instance types. Google chose 2.75 GQ’s to represent the minimum power of one logical core (a hardware hyper-thread) on their Sandy Bridge platform.
For an 8-core configuration it would cost you $1.16 for an hour of transcoding or encoding. At 15 seconds for each video that's 4 per minute and 240 an hour.
There are other fees, for example network transfer fees, storage, etc.
Amazon Elastic Computing Cloud (EC2)
Amazon's EC2 has pretty much been the only pony in the show for some time in terms of IAAS. They offer first a free tier when you sign up, so each month for the first year you get.
Upon sign-up, new AWS customers receive the following EC2 services each month for one year:
- 750 hours of EC2 running Linux/Unix Micro instance usage
- 750 hours of EC2 running Microsoft Windows Server Micro instance usage
- 750 hours of Elastic Load Balancing plus 15 GB data processing
- 30 GB of Amazon Elastic Block Storage (EBS) plus 2 million IOs and 1 GB snapshot storage
- 15 GB of bandwidth out aggregated across all AWS services
- 1 GB of Regional Data Transfer
Amazon has a weird way of organizing their instances into standard, micro, high-memory, high-CPU, cluster options and high I/O. The instances comparable to GCE are:
- Medium Instance 3.75 GB of memory, 2 EC2 Compute Units (1 virtual core with 2 EC2 Compute Units each), 410 GB of local instance storage, 32-bit or 64-bit platform
- Large Instance 7.5 GB of memory, 4 EC2 Compute Units (2 virtual cores with 2 EC2 Compute Units each), 850 GB of local instance storage, 64-bit platform
- Extra Large Instance 15 GB of memory, 8 EC2 Compute Units (4 virtual cores with 2 EC2 Compute Units each), 1690 GB of local instance storage, 64-bit platform
Pricing looks like this:
|Linux/UNIX Usage||Windows Usage|
|Standard On-Demand Instances|
|Small (Default)||$0.080 per Hour||$0.115 per Hour|
|Medium||$0.160 per Hour||$0.230 per Hour|
|Large||$0.320 per Hour||$0.460 per Hour|
|Extra Large||$0.640 per Hour||$0.920 per Hour|
There are other fees, for example network transfer fees, storage, etc.
Zencoder has been around since 2010 and specializes in could-based video encoding. They also offer a platform with any device, any video capabilities. However, their monthly plans are based on minutes of output video instead of cost-per-video or cost-per-hour calculations. They have got a pay-as-you-go option but again, it's based on minutes of video at five cents each. So 240 videos would cost you, well, it all depends on the length of the video. Let's say 5 minutes each. It's around 1200 minutes so at five cents per minute it's about $60.
From their website:
Minutes refers to the length in minutes of an output video. So if you encode the full length of a 10 minute video, your total minutes is 10. If you are using multiple outputs and encode your video into 2 different formats, your total minutes for that encoding job is
20 (now 18 with the 20% multiple outputs discount).
When your output frame size is 1280 pixels wide by 720 pixels tall or bigger, it is considered HD (High-Definition). Minutes of HD video count as 2 regular minutes. So if you encode your 10 minute video to one HD output, the total minutes for that encoding job would be 20.
There is no extra charge if only your input video is HD.
Audio-only minutes (audio to audio, or video to audio) count as 1/4 regular minutes. So if you encode your 10 minute video to just audio, or start with a 10 minute audio file (MP3, WAV, etc.) the total minutes would be 2.5.
NOTE: While writing this, news broke that Zencoder was acquired by Brightcove.
Perhaps the easiest to understand and calculate from a pricing standpoint is Encoding.com as they do gigabytes of video with pay-as-you-go, monthly and high volume plans. However, the way they calculate gigabytes includes your incoming and outgoing files. So if you have a monthly 10GB plan it would be $49 a month. Either way, 240 videos at 500MB each is going to cost you hundreds.
There are a couple quick and dirty free online video transcoders and Transcode.it is one of them offering a few preset profiles like iOS, MPEG-4, Flash, Windows Media and Sony PSP. You upload the video, it transcodes and then emails you when it's done.
Another pay encoding service uEncode features several output formats including MPEG-4, WebM, FLV and WMV with H.264, VP8 or WMV2 codecs. Pricing is pretty low at 10 cents per GB of source file size, 70 cents per GB of output file size and 10 cents per GB or destination (uploading to other services).
So again, 240 videos at 500MB each means about 120GB so it would be $12 to send for transcoding. If output were 75% of that it would be $63 and delivering it would be $9 per destination, so $84 for those videos, roughly.
Ankoder actually uses Amazon S3 and EC2 as its backbone and pricing is pretty high at $2 per GB of source and and $2 per GB output. So again with our 120GB of input (240 files at 500MB each) it would be $240 right off the bat and again at 75% output filesize it would be another $180.
I don't know how I missed these guys in the original when they had an article here at ReelSEO. I think I have a blind spot when I'm doing research and I see ReelSEO in SERPs.
Heywatch have a straight up per GB pricing (input file size plus output file size) in the $1.50-2.00/GB range. The service appears to be aimed at the more technically savvy as they offer a sandbox environment, instead of a free trial, for you to test encoding with their API (videos will only be output as five seconds in length). They have got some pretty big names on the client roster including, Tumblr. The API is REST based and responses are XML and JSON. Told you they were tech savvy dudes. Output codecs include: Flash Video, WebM, H264, MP4, WMV, Divx, HD, mobile, iPhone / iPod, PSP. If you need a specific format, you can also create it. Set bitrates, size, codec, container, etc.
For those of you who are doing live video streaming there's LiveTranscoding.com another SAAS. You essentially can send in your stream from Flash Media Live Encoder or Flumotion Encoding Software or hardware-based Viewcast (RTMP) or Digital Rapids Encoders (also RTMP). The outputs can be RTMP (Adobe FLV), HTTP (Apple m3u8-MPEG2 or Microsoft ismv-MPEG4), or MMS (Windows Media ASF).
Pricing plans range from $499 for a single output format with multi-bitrate, $599 for the PRO plan with just one bitrate or $1299 for the PRO with multi-bitrate. So if you wanted all four output formats, to reach desktops, iOS, Android and Windows Phone 7, your best bet is that last one.
If you have a massive amount of transcoding or encoding to do and, for whatever reason, don't want to use a full online video platform (OVP), you'll have a bit of work ahead of you as you can see. Pricing varies wildly in the space and some services are simply reselling what the IAAS places like Amazon and Google are offering. It might save you some time using them but you're going to end up paying a good amount for it. It might be best to simply go with an OVP since you'll generally have distribution and content management built in as well as analytics. But if you're looking at some non-standard usage or are trying to package up cloud-based encoding and transcoding into other services you offer, you should now have some good information on where to go look.
Please let me know in the comments below if there is another great service that you're aware of for online, cloud-based encoding/transcoding tools or services.