While Amazon Web Services is well-know for the services they provide (what’s in a name), they also sell some hardware to get video into the cloud: Elemental Link 1. But what is it, and when would you use it? In this blog post we will take a high-level view at ingestion (getting data into the cloud) to answer that question.
Interactive Video Service
The first (and newest) streaming option in AWS is Interactive Video Service (or IVS), which we can summarise as “your own Twitch”2. If you use this, you will be using some streaming software (like OBS) on a machine locally to convert your camera source (or screen share, movie, …) and push it to AWS. IVS is interesting to consider as a first option, as the AWS Elemental suite has a lot more options and assumes a bit of a video-production/broadcasting background.
One caveat with software-based solutions is that you need to get the video on a computer. For a webcam, this is easy. For a stand-alone camera, you will need a “capture card”. These come in different styles with different prices. The most common inputs are HDMI and SDI3 (used mainly in professional equipment). You might get this over USB or as a PCIe card. Prices range from ~20 USD (sometimes good quality, sometimes terrible) to ~200 USD (and more if you need more inputs or better quality).
The other significant AWS option is the AWS Elemental suite. We will assume that Elemental MediaLive will be our destination. Like IVS, it’s made for streaming video. MediaLive is more flexible in the sources that it supports. It can get content from software that pushes to AWS or from an endpoint where it will request the data (pull). Note that we’re still talking about software, not camera’s at this point. The list of supported formats is here.
If your camera can output one of those options (take a note of whether this should happen in a VPC), you could use MediaLive directly. OBS has an RTMP output option, and MediaLive can accept an RTMP stream as input, so that could be one software solution to try out. You still have the capture card problem at this point (the chance of a non-ip-camera4 outputting something usable is slim).
You’ll notice two “special” formats/inputs on the list of supported inputs: MediaConnect and Elemental Link. We’ll skip MediaConnect in this explanation. You use that if you have an “encoder” locally.
That brings us finally to AWS Elemental Link. Link is a dedicated hardware device to be the equivalent of the capture card + software (+ place to run the software) in one convenient, silent, package. You connect it to power, network, and HDMI or SDI, and it is preconfigured to stream to MediaLive in your account. It also gives you some control over the device from within the AWS console.
As we have seen in this blog post, you do not need Elemental Link to get video into AWS. There are different options for different situations. Sometimes a software solution might be better suited. Other times. the remote management and fanless operation might make AWS Elemental Link a better fit.
- There is more AWS hardware sold than I expected. There are other Elemental appliances, Storage Gateway Hardware Appliance and some learning-focused hardware. Like DeepRacer, DeepComposer, IoT Button, …
- That’s not completly true, but it is “built on the same live streaming technology that powers Twitch”
- Some people, who I would like to thank for proofreading this, would point out that SDI is the “Standard Definition” standard, in a modern setting you would be using HD-SDI, 3G-SDI, or newer. On an unrelated note: many products that we still call “chalk” are made from other materials.
- IP-cameras, are frequently used as security cameras. Security cameras won’t look good in most other use cases.