Amazon Chime SDK Documentation

WebRTC Media

Audio and video

Integrate the Amazon Chime SDK for JavaScript, iOS, or Android into your applications to enable audio and video on WebRTC-enabled browsers and mobile operating systems. 

Video simulcast

With simulcast enabled, clients upload multiple video streams from the same video source using different resolutions and bitrates. Clients displaying remote video tiles choose which stream to subscribe to based on downlink bandwidth, number of video streams shared, and by prioritizing content share over webcam video streams.

Content sharing

Share pre-recorded audio and video, or a screen or application window with remote participants without the need to download or install an extension. The Amazon Chime SDKs include embeddable screen viewing controls designed to provide the ability to zoom in and out or pan on the shared content. Callbacks track who is sharing and when the source of the sharing changes.

Active speaker

Track the active speakers through a periodic callback with a list of attendees sorted from most to least active. Use this information to help enrich the application user experience, for example with active talker labels, video tile highlighting or prioritization, and top talker information.

Volume notifications and mute controls

Use notification callbacks to provide volume levels of attendees who are actively contributing audio for the session. Mute and unmute microphone actions and notifications are available to indicate the mute status for each attendee.

Device controller

Use the Device Controller module to manage the available audio input, audio output, and video input. This is designed to help you control permissions, preview, and selection of the devices used during the media session.

Optimized experience

Manage audio and video performance with both pre-built and customizable bandwidth policies designed to control video bandwidth adaptation and video stream pausing. Builders can override these policies to get a more customized experience. 

Interactive Audience

Deliver content over WebRTC to  audience members. This can be used for large meetings, webinars and lectures where audience members may want to interact with the presenters. Audience members can transition to and from the primary session, without any WebRTC reconnection, to interact with presenters.

Attendee proximity

Pick the best AWS region to host each WebRTC media session based on where the attendees are joining from. 

TURN support

WebRTC sessions include integrated Traverse Using Relay around NAT (TURN) service for corporate firewall and NAT transversal.

Public Switched Telephone Network (PSTN) Audio

Serverless Voice Applications

Build voice self-service applications, outbound voice notifications, and meeting join authentication.

Inbound Calling

Add Direct Inward Dial (DID/DDI) or toll-free telephone numbers to your voice applications. Route calls to an Amazon Chime SDK meeting, on-premises phone system, or any phone number.

Outbound Calling

Using an API, your application can be designed to make calls to landline or mobile numbers in over 100 countries with low rates.

Phone Numbers for voice applications and meetings

Create or port your personalized dial-in numbers for the Amazon Chime SDK - based telephony applications and meetings. You can also bring your own carrier and phone numbers and connect to your existing carrier using Amazon Chime Voice Connector (Session Initiation Protocol) SIP Trunking.

Call Recording

Add call recording and post-call transcription to your voice applications. Using an API, you can record call audio and store the recording files in your own Amazon Simple Storage Solution (Amazon S3) bucket.

SIP Trunking

SIP Trunking Setup

Amazon Chime Voice Connector supports standards-based Session Initiation Protocol (SIP); it is designed to be compatible with SIP-based Private Branch Exchanges (PBXs), call centers, and Session Border Controllers (SBCs). With Amazon Chime Voice Connector, you can start using your SIP trunks quickly using the Amazon Chime console or AWS SDK.

T.38 Fax Support

Send and receive faxes from traditional fax machines connected to your phone system or via your SIP-enabled fax server.

Implement Call Recording and Analytics

Capture real-time audio from SIP trunking and SIP-based media recording (SIPREC). 

Proxy Phone Sessions

Help enable communications between two users via PSTN, without sharing personal phone numbers. Amazon Chime SDK proxy phone sessions is designed to support two-way voice or text communications sessions.

Phone Number Management and Porting

Manage your phone number inventory, order new numbers, and review pending transactions using the Amazon Chime console, AWS SDK, and AWS Command Line Interface (AWS CLI). Keep your existing phone numbers by having us port them from your previous service provider. 

Security and Authentication

You can use encryption to secure calls between your phone system and AWS. Amazon Chime Voice Connector supports TLS to encrypt SIP signaling and SRTP to encrypt media streams. You can optionally enable SIP digest authentication to authenticate outbound calls from your phone system.

Connectivity

Amazon Chime Voice Connector is designed to support fault-tolerant, cross-region inbound and outbound call routing to and from your phone system. 

Network Access

You can access your Amazon Chime Voice Connector over AWS Direct Connect or your Internet connection. Using AWS Direct Connect, you can establish private connectivity between AWS and your data center, office, or colocation environment.

Messaging

Up to 100k Members per Channel

Organize users in channel sizes ranging from one-on-one conversations to broadcast channels with up to 100k members.

Power workflows with machine learning and cross-application messaging

Channel flows is designed to help enable you to process messages in channel processors (AWS Lambda functions) before they are delivered. Channel flows can be used to help remove certain data from messages before they are delivered. Channel flows can also be used to perform functions like aggregation of responses to a poll before sending results back to participants or sending messages to recipients via SMS or other messaging applications.

Public and Private Channels

Create public channels that users can find and join, or private channels that require members or moderators to add new members.

Message history

Message history can be made available to your users for durations you choose.

Message redaction

Allow moderators and users to redact messages so they are no longer accessible by users.

Edit messages

Enable users to edit any message they send.

Moderation tools

Using the Amazon Chime SDK, user channel moderators can redact inappropriate messages, kick users out of channels, and ban users to prevent them from rejoining.

Attachments

Include attachments stored in Amazon S3 or your choice of storage location as message metadata.

Message retention policies and deletion

Implement retention policies, if required. Automatically delete  messages after a retention period you choose, ranging from 1 day to 15 years. APIs are also available to delete individual messages and channels, permanently removing them from Amazon Chime.

Control messages

Use control messages, up to 30 bytes, for features like typing indicators, message effects, or presence.

React UI Components

Use React UI components for common messaging elements.

Search for conversations by members or unique ID such as an appointment ID or game ID.

Pre-fetch

Automatically pre-fetch information to help display a rich chat UI to users when clients load including surfacing channels that require the user’s attention.

Media Pipelines

Media capture

Capture the contents of your Amazon Chime SDK meeting and save them to an Amazon Simple Storage Service (Amazon S3) bucket of your choice. Media capture is designed to help allow you to capture meeting audio, video, and content share streams in five second segments and directly deliver them to your designated Amazon S3 bucket. 

Capture a single stream of the active speaker video along with the combined meeting audio, or  capture individual video tile streams with a separate combined meeting audio stream, or only the combined meeting audio. 

Machine Learning

Noise reduction with Amazon Voice Focus

Amazon Voice Focus uses deep learning and models of speech and hearing to help keep environmental noises like wind or running water from interfering with conversations. Amazon Voice Focus is designed to reduce background noises such as dogs barking as well as foreground noises like keyboard typing. 

Amazon Voice Focus for carriers

Amazon Voice Focus for carriers allows telecoms operators to natively offer the background noise reduction technology across their voice network. The feature is designed to work in real-time, with calls routed from the carrier network over a SIP trunk to AWS, before being routed back to the carrier network for onward transmission.

Echo reduction with double-talk improvement

Echo reduction technology uses machine learning designed to help keep acoustic echoes from recirculating while preserving the quality of the desired speech even in double-talk conditions.

Video background replacement or blur

Video background replacement or blur is designed to help users increase their visual privacy. Each user’s webcam video is processed on their device with machine learning to segment the background from the user. Background replacement inserts an image behind the user, replacing the detected background. Alternatively, the background can be blurred with a high-strength blur, or a low-strength blur to create a bokeh effect.

Amazon Voice Focus Amazon Machine Image (AMI)

Amazon Voice Focus AMI is an Amazon Linux 2 AMI (x86_64) with an embedded Amazon Voice Focus library along with an Amazon Voice Focus demo executable and example scripts. Amazon Voice Focus is designed to help reduce noise in real-time speech capture or archived speech recordings. 

Additional Information

For additional information about service controls, security features and functionalities, including, as applicable, information about storing, retrieving, modifying, restricting, and deleting data, please see https://docs.aws.amazon.com/index.html. This additional information does not form part of the Documentation for purposes of the AWS Customer Agreement available at http://aws.amazon.com/agreement, or other agreement between you and AWS governing your use of AWS’s services.