带网络输入的 Amazon Kinesis Video Streams 适用于RTCSDK网络 JavaScript 应用程序 - Kinesis Video Streams

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

带网络输入的 Amazon Kinesis Video Streams 适用于RTCSDK网络 JavaScript 应用程序

你可以在中找到适用于 RTC SDK We JavaScript b 应用程序的 Kinesis Video Streams with Web 及其相应的示例GitHub

安装 SDK

是否以及如何安装带有 RTC SDK Web 的 Kinesis Video Streams 取决于代码是在模块 JavaScript 中执行还是在浏览器脚本Node.js中执行。

NodeJS module

在 Node.js 中安装带有 RTC SDK Web JavaScript 的 Kinesis Video Streams 的首选方法是使用 Node.js 包管理器 npm

该软件包托管在 https://www.npmjs.com/package/amazon-kinesis-video-streams-w ebrtc。

要将其安装到您的Node.js项目SDK中,请使用终端导航到与项目相同的目录package.json

键入以下内容:

npm install amazon-kinesis-video-streams-webrtc

你可以像典型的 Node.js 模块一样导入这些SDK类:

// JavaScript const SignalingClient = require('amazon-kinesis-video-streams-webrtc').SignalingClient; // TypeScript import { SignalingClient } from 'amazon-kinesis-video-streams-webrtc';
Browser

您无需安装即可在浏览器脚本中使用它。SDK您可以直接从中加载托管SDK包 AWS 在你的HTML页面中有一个脚本。

要在浏览器SDK中使用,请在HTML页面中添加以下脚本元素:

<script src="https://unpkg.com/amazon-kinesis-video-streams-webrtc/dist/kvs-webrtc.min.js"></script>

页面SDK加载完毕后,即可从全局变量KVSWebRTC(或window.KVSWebRTC)中获得。SDK

例如,window.KVSWebRTC.SignalingClient

网络RTC JavaScript SDK文档

这些SDK方法的文档位于 GitHub 自述文件的 “文档” 下。

在 “用法” 部分中,提供了有关将其SDK与之集成的其他信息 AWS SDK用于 JavaScript 构建基于 Web 的查看器应用程序。

有关完整应用程序(包括主角色和查看者角色)的示例,请参阅examples目录。

使用示例应用程序

带有 RTC Web 的 Kinesis Video Streams 还托管了一个示例应用程序,您可以使用该应用程序创建新的信令信道或连接到现有频道并将其用作主频道或查看器。

带有 RTC Web 的 Kinesis Video Streams 示例应用程序位于GitHub

示例应用程序的代码位于examples目录中。

peer-to-peer 从示例应用程序流式传输到 AWS Management Console

  1. 打开 Kinesis Video Streams RTC with Web 示例应用程序并完成以下操作:

    • AWS 区域。 例如,us-west-2

    • 这些区域有: AWS 您的IAM用户或角色的访问密钥和密钥。如果您使用的是长期使用会话令牌,请将会话令牌留空 AWS 证书。

    • 要连接的信令通道的名称。

      如果要连接到新的信令信道,请选择 C reate Channel 以使用框中提供的值创建一个信令信道。

      注意

      对于当前账户和地区,您的信令频道名称必须是唯一的。您可以使用字母、数字、下划线 (_) 和连字符 (-),但不能使用空格。

    • 是发送音频、视频还是两者。

    • Web RTC 摄取和存储。展开节点并选择以下选项之一:

      • 选择 “自动确定摄取模式”。

      • 确保未选择 “自动确定摄取模式”,并将手动覆盖设置为。OFF

        注意

        自动确定摄取模式让应用程序调用DescribeMediaStorageConfigurationAPI以确定要在哪种模式下运行(P eer-to-peer 或 Web RTC 摄取)。这个额外的API调用会增加少量启动时间。

        如果您事先知道该信令通道正在哪种模式下运行,请使用手动覆盖来跳过此API呼叫。

    • ICE候选人一代。保留STUN/TURN选中状态并保持Trickle ICE启用状态。

  2. 选择 Start Master 以连接到信令信道。

    如果需要,允许访问您的摄像头和/或麦克风。

  3. 在中打开 Kinesis Video Streams 控制台 AWS Management Console.

    确保选择了正确的区域。

  4. 在左侧导航栏中,选择信令频道

    在上面选择信令通道的名称。如果需要,请使用搜索栏。

  5. 展开 “媒体播放查看器” 部分。

  6. 选择视频播放器上的播放按钮。这会以 Web RTC 会话的身份加入viewer

    在演示页面上发送的媒体应显示在 AWS Management Console.

peer-to-peer 从示例应用程序流式传输到示例应用程序

  1. 打开 Kinesis Video Streams RTC with Web 示例应用程序并填写以下信息:

    • AWS 区域。 例如,us-west-2

    • 这些区域有: AWS 您的IAM用户或角色的访问密钥和密钥。如果您使用的是长期使用会话令牌,请将会话令牌留空 AWS 证书。

    • 要连接的信令通道的名称。

      如果要连接到新的信令信道,请选择 C reate Channel 以使用框中提供的值创建一个信令信道。

      注意

      对于当前账户和地区,您的信令频道名称必须是唯一的。您可以使用字母、数字、下划线 (_) 和连字符 (-),但不能使用空格。

    • 是发送音频、视频还是两者。

    • Web RTC 摄取和存储。展开节点并选择以下选项之一:

      • 选择 “自动确定摄取模式”。

      • 确保未选择 “自动确定摄取模式”,并将手动覆盖设置为。OFF

        注意

        自动确定摄取模式让应用程序调用DescribeMediaStorageConfigurationAPI以确定要在哪种模式下运行(P eer-to-peer 或 Web RTC 摄取)。这个额外的API调用会增加少量启动时间。

        如果您事先知道该信令通道正在哪种模式下运行,请使用手动覆盖来跳过此API呼叫。

    • ICE候选人一代。保留STUN/TURN选中状态并保持Trickle ICE启用状态。

  2. 选择 Start Mastermaster角色身份连接到信令通道。

    如果需要,允许访问您的摄像头和/或麦克风。

  3. 打开另一个浏览器选项卡,然后打开 Kinesis Video Streams with RTC Web 示例应用程序。应加载上次运行的所有信息。

  4. 向下滚动并选择 “启动查看器”,以viewer角色身份连接到信令频道。

    您应该会看到master和之间正在交换媒体viewer

peer-to-peer 使用 Web RTC Ingestion 从示例页面流式传输到示例页面

  1. 从浏览器提取媒体按照操作连接主参与者并确保其已连接到存储会话。

  2. 按照操作将观众添加到摄取会话中添加观看者参与者。

    查看者参与者将连接存储会话并从中接收媒体。他们可以将可选音频发送回存储会话。

    存储会话负责混合从主参与者和查看者参与者那里收到的媒体,然后将其发送到相应的目的地。

  3. 你可以通过 Kinesis Video Streams 播放来查看和消费摄取的媒体。

编辑示例应用程序

要出于开发目的编辑SDK和示例应用程序,请按照以下说明进行操作。

先决条件

NodeJS 版本 16+

注意

我们建议从 https://nodejs.org/en/download 下载最新的长期支持 (LTS) 版本。

编辑示例应用程序
  1. 下载 Kinesis Video Streams RTC SDK with Web JavaScript

    在终端中键入以下内容:

    git clone https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-js.git
  2. 导航到包含 package.json 文件的目录。该文件位于存储库的根目录中。

    在终端中键入以下内容:

    cd amazon-kinesis-video-streams-webrtc-sdk-js
  3. 安装依赖项。

    在终端中键入以下 npm CLI 命令:

    npm install
  4. 启动 Web 服务器以开始提供网页。

    在终端中键入以下 npm CLI 命令:

    npm run develop
  5. 在浏览器中,访问 http://localhost:3001/

    您可以通过编辑examples目录中的文件来编辑网页。