diff --git a/examples/app.css b/examples/app.css index 6780e63..4bdf9d5 100644 --- a/examples/app.css +++ b/examples/app.css @@ -31,3 +31,7 @@ pre .warn { height: 500px; overflow: auto; } + +#subheader { + margin-top: 30px; +} diff --git a/examples/app.js b/examples/app.js index 8d0ff69..fae0b2a 100644 --- a/examples/app.js +++ b/examples/app.js @@ -100,6 +100,7 @@ function getFormValues() { forceSTUN: $('#forceSTUN').is(':checked'), forceTURN: $('#forceTURN').is(':checked'), accessKeyId: $('#accessKeyId').val(), + useDualStackEndpoints: $('#useDualStackEndpoints').is(':checked'), endpoint: $('#endpoint').val() || null, secretAccessKey: $('#secretAccessKey').val(), sessionToken: $('#sessionToken').val() || null, @@ -533,6 +534,7 @@ const fields = [ {field: 'accessKeyId', type: 'text'}, {field: 'secretAccessKey', type: 'text'}, {field: 'sessionToken', type: 'text'}, + {field: 'useDualStackEndpoints', type: 'checkbox'}, {field: 'endpoint', type: 'text'}, {field: 'sendVideo', type: 'checkbox'}, {field: 'sendAudio', type: 'checkbox'}, diff --git a/examples/createSignalingChannel.js b/examples/createSignalingChannel.js index 789c785..eaeb686 100644 --- a/examples/createSignalingChannel.js +++ b/examples/createSignalingChannel.js @@ -18,6 +18,7 @@ async function createSignalingChannel(formValues) { }, endpoint: formValues.endpoint, logger: formValues.logAwsSdkCalls ? console : undefined, + useDualstackEndpoint: formValues.useDualStackEndpoints, }); // Create signaling channel diff --git a/examples/createStream.js b/examples/createStream.js index a13012d..750c0d1 100644 --- a/examples/createStream.js +++ b/examples/createStream.js @@ -20,6 +20,7 @@ async function createStream(formValues) { region: formValues.region, endpoint: formValues.endpoint, logger: formValues.logAwsSdkCalls ? console : undefined, + useDualstackEndpoint: formValues.useDualStackEndpoints, }); const createStreamResponse = await kinesisVideoClient diff --git a/examples/describeMediaStorageConfiguration.js b/examples/describeMediaStorageConfiguration.js index 68448e7..f7cccd9 100644 --- a/examples/describeMediaStorageConfiguration.js +++ b/examples/describeMediaStorageConfiguration.js @@ -19,6 +19,7 @@ async function describeMediaStorageConfiguration(formValues) { }, endpoint: formValues.endpoint, logger: formValues.logAwsSdkCalls ? console : undefined, + useDualstackEndpoint: formValues.useDualStackEndpoints, }); const mediaStorageConfiguration = await kinesisVideoClient.send(new AWS.KinesisVideo.DescribeMediaStorageConfigurationCommand({ ChannelName: formValues.channelName })); diff --git a/examples/index.html b/examples/index.html index b152d32..837a5c3 100644 --- a/examples/index.html +++ b/examples/index.html @@ -25,14 +25,34 @@

KVS WebRTC Test Page

-

KVS Endpoint

+

KVS Endpoint

+
+ + + + +
+ + +
+ + + + + + + + +
-

AWS Credentials

+

AWS Credentials

@@ -45,7 +65,7 @@

AWS Credentials

-

Signaling Channel

+

Signaling Channel

@@ -63,7 +83,7 @@

Signaling Channel

">
-

Tracks

+

Tracks

Control which media types are transmitted to the remote client. For WebRTC Ingestion and Storage master, both audio and video must be sent, and viewers cannot not send video and optional audio.

@@ -83,7 +103,7 @@

Tracks

">
-
WebRTC Ingestion and Storage +
WebRTC Ingestion and Storage

Configure which stream to ingest and store media to. Call update media storage configuration with an empty Stream name to disable this feature.

@@ -137,7 +157,7 @@

Tracks

-

Video Resolution

+

Video Resolution

Set the desired video resolution and aspect ratio.

@@ -149,7 +169,7 @@

Video Resolution

-

NAT Traversal

+

NAT Traversal

Control settings for ICE candidate generation.

-

Amazon KVS WebRTC DQP

+

Amazon KVS WebRTC DQP

@@ -195,7 +215,7 @@

Amazon KVS WebRTC DQP

-

Amazon KVS WebRTC Profiling Timeline chart

+

Amazon KVS WebRTC Profiling Timeline chart

@@ -207,7 +227,7 @@

Amazon KVS WebRTC Profiling Timeline chart

-
Advanced +
Advanced

Filter settings for which ICE candidates are sent to and received from the peer.

@@ -345,7 +365,7 @@
Audio Codecs Allowed

-
+
diff --git a/examples/joinStorageSession.js b/examples/joinStorageSession.js index 75ed846..4f0d6a7 100644 --- a/examples/joinStorageSession.js +++ b/examples/joinStorageSession.js @@ -18,6 +18,7 @@ async function joinStorageSessionManually(formValues) { sessionToken: formValues.sessionToken, }, endpoint: formValues.endpoint, + useDualstackEndpoint: formValues.useDualStackEndpoints, }); // Step 1: Obtain the ARN of the Signaling Channel diff --git a/examples/joinStorageSessionAsViewer.js b/examples/joinStorageSessionAsViewer.js index dcba17e..2f9a644 100644 --- a/examples/joinStorageSessionAsViewer.js +++ b/examples/joinStorageSessionAsViewer.js @@ -18,6 +18,7 @@ async function joinStorageSessionAsViewerManually(formValues) { sessionToken: formValues.sessionToken, }, endpoint: formValues.endpoint, + useDualstackEndpoint: formValues.useDualStackEndpoints, }); // Step 1: Obtain the ARN of the Signaling Channel diff --git a/examples/listStorageChannels.js b/examples/listStorageChannels.js index 2290dc5..b02a9ad 100644 --- a/examples/listStorageChannels.js +++ b/examples/listStorageChannels.js @@ -19,6 +19,7 @@ async function listStorageChannels(formValues) { }, endpoint: formValues.endpoint, logger: formValues.logAwsSdkCalls ? console : undefined, + useDualstackEndpoint: formValues.useDualStackEndpoints, }); // Get all signaling channels diff --git a/examples/master.js b/examples/master.js index 29abb53..1b591ce 100644 --- a/examples/master.js +++ b/examples/master.js @@ -79,6 +79,7 @@ async function startMaster(localView, remoteView, formValues, onStatsReport, onR secretAccessKey: formValues.secretAccessKey, sessionToken: formValues.sessionToken, }, + useDualstackEndpoint: formValues.useDualStackEndpoints, }, formValues.endpoint, role, diff --git a/examples/updateMediaStorageConfiguration.js b/examples/updateMediaStorageConfiguration.js index 72b4c1d..5eb6d59 100644 --- a/examples/updateMediaStorageConfiguration.js +++ b/examples/updateMediaStorageConfiguration.js @@ -24,6 +24,7 @@ async function updateMediaStorageConfiguration(formValues) { sessionToken: formValues.sessionToken, }, endpoint: formValues.endpoint, + useDualstackEndpoint: formValues.useDualStackEndpoints, }); if (formValues.streamName) { diff --git a/examples/viewer.js b/examples/viewer.js index 60ad7a8..3860958 100644 --- a/examples/viewer.js +++ b/examples/viewer.js @@ -367,6 +367,7 @@ async function startViewer(localView, remoteView, formValues, onStatsReport, rem }, endpoint: formValues.endpoint, correctClockSkew: true, + useDualstackEndpoint: formValues.useDualStackEndpoints, }); // Get signaling channel ARN