Broadcasting to Amazon IVS - Amazon Interactive Video Service

Broadcasting to Amazon IVS

The Amazon Interactive Video Services (IVS) broadcast SDK is for developers who are building applications with Amazon IVS. This SDK is designed to leverage the Amazon IVS architecture and will see continual improvement and new features, alongside Amazon IVS. As a native broadcast SDK, it is designed to minimize the performance impact on your application and on the devices with which your users access your application.

Currently, the broadcast SDK is available only for Android and iOS applications.

Your application can leverage the key features of the Amazon IVS broadcast SDK:

  • High quality streaming — The broadcast SDK supports high quality streaming. Capture video from your camera and encode it at up to 1080p quality for a high quality viewing experience.

  • Automatic Bitrate Adjustments — Smartphone users are mobile, so their network conditions can change throughout the course of a broadcast. The Amazon IVS broadcast SDK automatically adjusts the video bitrate to accommodate changing network conditions.

  • Portrait and Landscape Support — No matter how your users hold their devices, the image appears right-side up and properly scaled. The broadcast SDK supports both portrait and landscape canvas size. It automatically manages the aspect ratio when the users rotate their device away from the configured orientation.

  • Secure Streaming — Your user’s broadcasts are encrypted using TLS, so they can keep their streams secure.

  • External Audio Devices — The Amazon IVS broadcast SDK supports audio jack, USB, and Bluetooth SCO external microphones.

Platform Requirenents

Native Platforms

Platform Supported Versions
Android 5.0 (Lollipop) and later
iOS

iOS 11 and later

If broadcasting is essential to your application, specify Metal as a requirement for downloading your app from the Apple App Store, using UIRequiredDeviceCapabilities.

Required Device Access

The broadcast SDK requires access to the device's cameras and microphones, both those built into the device and those connected through Bluetooth, USB, or audio jack.

Support

If you encounter a broadcast error or other issue with your stream, determine the unique playback session identifier via the broadcast API.

For this Amazon IVS Broadcast SDK: Use this:
Android

getSessionId function

iOS

sessionId property of IVSBroadcastSession

Web

getSessionId function

Share this broadcast session identifier with AWS support. With it, they can get information to help troubleshoot your issue.

Note: The broadcast SDK is continually improved. See Amazon IVS Release Notes for available versions and fixed issues. If appropriate, before contacting support, update your version of the broadcast SDK and see if that resolves your issue.

Versioning

The Amazon IVS broadcast SDKs use semantic versioning.

For this discussion, suppose:

  • The latest release is 4.1.3.

  • The latest release of the prior major version is 3.2.4.

  • The latest release of version 1.x is 1.5.6.

Backward-compatible new features are added as minor releases of the latest version. In this case, the next set of new features will be added as version 4.2.0.

Backward-compatible, minor bug fixes are added as patch releases of the latest version. Here, the next set of minor bug fixes will be added as version 4.1.4.

Backward-compatible, major bug fixes are handled differently; these are added to several versions:

  • Patch release of the latest version. Here, this is version 4.1.4.

  • Patch release of the prior minor version. Here, this is version 3.2.5.

  • Patch release of the latest version 1.x release. Here, this is version 1.5.7.

Major bug fixes are defined by the Amazon IVS product team. Typical examples are critical security updates and selected other fixes necessary for customers.

Note: In the examples above, released versions increment without skipping any numbers (e.g., from 4.1.3 to 4.1.4). In reality, one or more patch numbers may remain internal and not be released, so the released version could increment from 4.1.3 to, say, 4.1.6.

Also, version 1.x will be supported until the end of 2021 or when 3.x is released, whichever happens later.