Class: Aws::KinesisVideoWebRTCStorage::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::KinesisVideoWebRTCStorage::Client
- Includes:
- ClientStubs
- Defined in:
- gems/aws-sdk-kinesisvideowebrtcstorage/lib/aws-sdk-kinesisvideowebrtcstorage/client.rb
Overview
An API client for KinesisVideoWebRTCStorage. To construct a client, you need to configure a :region
and :credentials
.
client = Aws::KinesisVideoWebRTCStorage::Client.new(
region: region_name,
credentials: credentials,
# ...
)
For details on configuring region and credentials see the developer guide.
See #initialize for a full list of supported configuration options.
Instance Attribute Summary
Attributes inherited from Seahorse::Client::Base
API Operations collapse
-
#join_storage_session(params = {}) ⇒ Struct
Before using this API, you must call the GetSignalingChannelEndpoint
API to request the WEBRTC endpoint. -
#join_storage_session_as_viewer(params = {}) ⇒ Struct
Join the ongoing one way-video and/or multi-way audio WebRTC session as a viewer for an input channel.
Instance Method Summary collapse
-
#initialize(options) ⇒ Client
constructor
A new instance of Client.
Methods included from ClientStubs
#api_requests, #stub_data, #stub_responses
Methods inherited from Seahorse::Client::Base
add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins
Methods included from Seahorse::Client::HandlerBuilder
#handle, #handle_request, #handle_response
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
444 445 446 |
# File 'gems/aws-sdk-kinesisvideowebrtcstorage/lib/aws-sdk-kinesisvideowebrtcstorage/client.rb', line 444 def initialize(*args) super end |
Instance Method Details
#join_storage_session(params = {}) ⇒ Struct
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:
Video track: H.264
Audio track: Opus
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.
Additional information
Idempotent - This API is not idempotent.
Retry behavior - This is counted as a new API call.
Concurrent calls - Concurrent calls are allowed. An offer is sent once per each call.
526 527 528 529 |
# File 'gems/aws-sdk-kinesisvideowebrtcstorage/lib/aws-sdk-kinesisvideowebrtcstorage/client.rb', line 526 def join_storage_session(params = {}, = {}) req = build_request(:join_storage_session, params) req.send_request() end |
#join_storage_session_as_viewer(params = {}) ⇒ Struct
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.
570 571 572 573 |
# File 'gems/aws-sdk-kinesisvideowebrtcstorage/lib/aws-sdk-kinesisvideowebrtcstorage/client.rb', line 570 def join_storage_session_as_viewer(params = {}, = {}) req = build_request(:join_storage_session_as_viewer, params) req.send_request() end |