AWS.KinesisVideoWebRTCStorage — AWS SDK for JavaScript (original) (raw)

We recommend that you migrate to AWS SDK for JavaScript v3. For dates, additional details, and information on how to migrate, please refer to the linked announcement.

Inherits:

AWS.Service

Identifier:

kinesisvideowebrtcstorage

API Version:

2018-05-10

Defined in:

(unknown)

Overview

Constructs a service interface object. Each API operation is exposed as a function on service.

Service Description

Sending a Request Using KinesisVideoWebRTCStorage

var kinesisvideowebrtcstorage = new AWS.KinesisVideoWebRTCStorage();
kinesisvideowebrtcstorage.joinStorageSession(params, function (err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Locking the API Version

In order to ensure that the KinesisVideoWebRTCStorage object uses this specific API, you can construct the object by passing the apiVersion option to the constructor:

var kinesisvideowebrtcstorage = new AWS.KinesisVideoWebRTCStorage({apiVersion: '2018-05-10'});

You can also set the API version globally in AWS.config.apiVersions using the kinesisvideowebrtcstorage service identifier:

AWS.config.apiVersions = {
  kinesisvideowebrtcstorage: '2018-05-10',
  // other service API versions
};

var kinesisvideowebrtcstorage = new AWS.KinesisVideoWebRTCStorage();

Constructor Summarycollapse

Property Summarycollapse

Properties inherited from AWS.Service

apiVersions

Method Summarycollapse

Methods inherited from AWS.Service

makeRequest, makeUnauthenticatedRequest, waitFor, setupRequestListeners, defineService

Constructor Details

new AWS.KinesisVideoWebRTCStorage(options = {}) ⇒ Object

Constructs a service object. This object has one method for each API operation.

Property Details

endpointAWS.Endpoint

Returns an Endpoint object representing the endpoint URL for service requests.

Method Details

joinStorageSession(params = {}, callback) ⇒ AWS.Request

Note: Before using this API, you must call the GetSignalingChannelEndpoint API to request the WEBRTC endpoint. You then specify the endpoint and region in your JoinStorageSession API request.

Join the ongoing one way-video and/or multi-way audio WebRTC session as a video producing device for an input channel. If there’s no existing session for the channel, a new streaming session needs to be created, and the Amazon Resource Name (ARN) of the signaling channel must be provided.

Currently for the SINGLE_MASTER type, a video producing device is able to ingest both audio and video media into a stream. Only video producing devices can join the session and record media.

Both audio and video tracks are currently required for WebRTC ingestion.

Current requirements:

The resulting ingested video in the Kinesis video stream will have the following parameters: H.264 video and AAC audio.

Once a master participant has negotiated a connection through WebRTC, the ingested media session will be stored in the Kinesis video stream. Multiple viewers are then able to play back real-time media through our Playback APIs.

You can also use existing Kinesis Video Streams features like HLS or DASH playback, image generation via GetImages, and more with ingested WebRTC media.

Note: S3 image delivery and notifications are not currently supported.

Note: Assume that only one video producing device client can be associated with a session for the channel. If more than one client joins the session of a specific channel as a video producing device, the most recent client request takes precedence.

Additional information

joinStorageSessionAsViewer(params = {}, callback) ⇒ AWS.Request

Join the ongoing one way-video and/or multi-way audio WebRTC session as a viewer for an input channel. If there’s no existing session for the channel, create a new streaming session and provide the Amazon Resource Name (ARN) of the signaling channel (channelArn) and client id (clientId).

Currently for SINGLE_MASTER type, a video producing device is able to ingest both audio and video media into a stream, while viewers can only ingest audio. Both a video producing device and viewers can join a session first and wait for other participants. While participants are having peer to peer conversations through WebRTC, the ingested media session will be stored into the Kinesis Video Stream. Multiple viewers are able to playback real-time media.

Customers can also use existing Kinesis Video Streams features like HLS or DASH playback, Image generation, and more with ingested WebRTC media. If there’s an existing session with the same clientId that's found in the join session request, the new request takes precedence.