多画面画面 - Kinesis Video Streams
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

多画面画面

Amazon Kinesis Video Streams Multivewer 是一款基于云的 WebRTC 解决方案,它允许多位观众通过一台摄像设备同时加入实时视频直播会话。此功能通过在云端处理视频流来解决边缘设备的带宽和计算限制,而不是要求摄像机向每位观看者发送单独的视频流。

概述

传统的 peer-to-peer WebRTC连接要求相机设备单独向每位观看者发送视频,这可能会使带宽或计算容量有限的设备很快不堪重负。Multiviewer 通过使用基于云的 “混音器” 来解决这个问题,该混音器:

  • 接收来自摄像设备的单个视频流

  • 处理直播并将其转发给多个观众

  • 处理多人对话的音频混音

  • 保留边缘设备的计算和带宽容量

Multiviewer 对于以下用例特别有价值:

  • 智能家居安全:多个家庭成员可以同时查看摄像头画面,而不会降低性能

  • 企业安全:安全团队可以同时监控 Feed

  • 汽车监控:车队经理和控制员可以同时查看车辆摄像头

  • 机器人和无人机:多个操作员可以监控自主系统

  • 教育/监考:多名监考员可以观察考试环节

  • 远程医疗:医疗团队可以参与远程会诊

要求和资源

要使用 Multiviewer,你需要以下资源:

  • Kinesis Video Streams Streams Streams Streams Stream:视频和音频内容的摄取和存储目的地

  • WebRTC 信令通道:允许使用 KVS We bRTC 软件开发工具包连接到设备

  • 媒体存储配置:使用 UpdateMediaStorageConfiguration API 链接直播和频道

重要

多画面查看器目前仅在与WebRTC摄取结合使用时才可用。主播或观看者都可以启动 WebRTC 摄取会话,视频和音频轨道同时存储在 Kinesis Video Streams 视频流中,同时分发给多个观众。

设备要求:

  • 相机设备必须支持 KVS WebRTC 软件开发工具包

  • 查看器应用程序必须使用 KVS WebRTC 软件开发工具包

  • 所有参与者都连接到同一个信令信道

曲目要求:

  • 主参与者:WebRTC摄取需要音频和视频轨道

  • 观众参与者:可以发送可选音轨或根本不发送任何曲目。观看者无法发送视频曲目

设置多画面画面

按照以下步骤为您的应用程序配置 Multiviewer:

  1. 创建必需的资源

    使用控制台、CLI 或创建 Kinesis Video Streams 直播和 WebRTC 信令通道。 SDKs有关详细说明,请参阅和。

  2. 链接资源

    使用 UpdateMediaStorageConfiguration API 关联您的直播和频道。此配置启用多画面查看器功能。有关实现的详细信息,请参阅。

  3. 配置相机应用程序

    使用 KVS WebRTC 软件开发工具包实现相机应用程序以调用 API。 JoinStorageSession 这将启动其他观看者可以加入的摄取会话。

  4. 配置查看器应用程序

    使用 KVS WebRTC 软件开发工具包实现查看器应用程序以调用 API。 JoinStorageSessionAsViewer 多个观众可以同时加入同一个会话。

与摄取集成

Multiviewer 是在2023年推出的WebRTC摄取功能的基础上构建的。这种集成有以下几个好处:

  • 自动录制:所有多画面画面会话都会自动录制到 Kinesis Video Streams 中,供日后播放和分析

  • 云处理:视频处理在云端进行,从而减少了边缘设备的计算负载

  • 可扩展架构:基于云的方法可以处理多个并发的多画面会话

  • 一致的体验:无论网络条件如何,观众都能获得相同的高质量直播

带摄取功能的典型多画面查看器会话的工作流程是:

  1. 相机设备呼叫开始 JoinStorageSession 向云端摄取视频

  2. 视频流经过处理并存储在配置的 Kinesis Video Streams 流中

  3. 多台观看者设备呼叫 JoinStorageSessionAsViewer 加入会话

  4. Cloud mixer 将视频流分发给所有连接的观众

  5. 所有参与者的音频均经过适当混合和分发

API 操作

多画面查看器使用与 WebRTC Ingestion 相同的 API 操作。关键 APIs 包括:

有关详细的 API 用法示例,请参阅

最佳实践

在实现 Multiviewer 时,请遵循以下最佳实践:

  • 针对边缘设备进行优化:专门在需要超过 2-3 个并发查看器时使用 Multiviewer,因为这通常是边缘设备限制显而易见的地方

  • 监控 Session Health:实施监控以跟踪会话质量和查看者连接

  • 处理连接失败:实现相机和查看器连接的重试逻辑

  • 音频管理:考虑默认将观众静音,以防止大型会话中出现音频反馈

  • 资源清理:确保在观众离开会话时正确清理WebRTC连接