What is Amazon Interactive Video Service?
Amazon Interactive Video Service (IVS) is a managed, live-video streaming service that allows you to:
-
Create channels and start streaming in minutes.
-
Build engaging, interactive experiences alongside ultra-low-latency live video.
-
Distribute video at scale to a range of devices and platforms.
-
Easily integrate into websites and apps.
Amazon IVS lets you focus on building your own interactive application and audience experience. With Amazon IVS, you don't need to manage infrastructure or develop and configure components of your video workflows, to be secure, reliable, and cost effective.
Amazon IVS supports both RTMPS and RTMP streaming. RTMPS is the secure version of RTMP (Real-Time Messaging Protocol), running over TLS. RTMP is an industry standard for transmitting video over a network.
In addition to the product documentation here, see https://ivs.rocks/
Multiple Hosts
Amazon IVS also enables developers to build applications that combine video from multiple participants into one live stream. A stage is a virtual space where participants can exchange audio and video in real time. You can then broadcast a stage to channels to reach a larger audience, and you can build applications where audience members can be brought "on stage" to contribute to the live conversation. For more information, see:
Amazon IVS Chat
Amazon IVS Chat is a managed, live-chat feature to go alongside live video streams. Documentation is accessible from the Amazon IVS documentation landing page:
-
In the Amazon IVS User Guide:
-
Begin with "Getting Started with Amazon IVS Chat."
-
See "Chat Logging" and "Chat Message Review Handler."
-
See "chat" references in "Monitoring Amazon IVS with Amazon CloudWatch," "Amazon IVS Security," and "Amazon IVS Service Quotas."
-
The "Amazon IVS Chat Client Messaging SDK" section of the User Guide has many SDK Guides and tutorials.
-
-
The Amazon IVS Chat section of the Amazon IVS documentation landing page has reference material:
-
"Chat API Reference" — Control-plane API (HTTPS).
-
"Chat Messaging API Reference" — Data-plane API (WebSocket).
-
SDK References for chat clients: Android, iOS, and JavaScript.
-
Latency
Latency is the delay from when a camera captures a live stream to when the stream appears on a viewer’s screen. Amazon IVS has functionality that can delivery video as follows:
Ultra-low latency — Amazon IVS channels can deliver video with latency under 5 seconds.
Real-time latency — IVS stages can deliver video with latency under 300ms. All participants in the stage experience this enhanced "real-time latency." (Note that if the stage is broadcast to an IVS channel, channel viewers get ultra-low latency.)
For a traditional Over-The-Top (OTT) stream, latency may be as high as 30 seconds.
Low latency is a critical component in building good interactive user experiences that enrich the audience experience. It allows the streamer, the brand, and the community to connect with live audiences in a direct and personal way.
Observed latency can vary between users due to:
-
The geographic locations of the streamer and viewers.
-
Network type and speed.
-
Individual components in the streaming chain.
-
Streaming protocols and output formats.
For more information, see Reducing Latency in Amazon IVS Streaming Configuration.
Global Solution, Regional Control
Streaming and Viewing are Global
You can use Amazon IVS to stream to viewers worldwide:
-
When you stream, Amazon IVS automatically ingests video at a location near you.
-
Viewers can watch your live streams globally via the Amazon IVS content-delivery network.
Another way of saying this is that the "data plane" is global. The data plane refers to streaming/ingesting and viewing.
Control is Regional
While the Amazon IVS data plane is global, the "control plane" is regional. The control plane refers to the Amazon IVS console, API, and resources (channels, stream keys, playback key pairs, and recording configurations).
Another way of saying this is that Amazon IVS is a "regional AWS service." That is, Amazon IVS resources in each region are independent of similar resources in other regions. For example, a channel that you create in one region is independent of channels you create in other regions.
When you use resources (e.g., create a channel), you must specify the region in which it will be created. Subsequently, when you manage resources, you must do so from the same region where they were created.
If you use the ... | You specify the region by ... |
---|---|
Amazon IVS console | Using the Select a Region drop-down in the top right of the navigation bar. |
Amazon IVS API |
Using the appropriate service endpoint. See the Amazon IVS API Reference. (If you access the API through an SDK, set up the SDK’s |
AWS CLI | Either:
|
Remember, regardless of the region in which a channel was created, you can stream to Amazon IVS from anywhere, and viewers can watch from anywhere.
Your Channel’s Region
Your channel’s region is part of the ARN (Amazon Resource Name) that is assigned when you create the channel. When you create a channel:
-
The Amazon IVS console shows the ARN in the General configuration area of the page. Subsequently, the console always shows your region (location) on the top right.
-
The Amazon IVS API returns the ARN in the channel object’s
channelArn
field.