Amazon Kinesis Video Streams – 适用于可视应用程序的无服务器视频提取和存储

2019 年 11 月 01 日

Amazon Kinesis Video Streams – 适用于可视应用程序的无服务器视频提取和存储

手机、监控摄像机、婴儿监视器、无人机、网络摄像头、行车记录仪甚至卫星都可以产生高强度、高质量的视频流。家、办公室、工厂、城市、街道和高速公路现在都安装了大量的摄像机。它们将在洪水和其他自然灾害之后调查财产、提高公共安全,让您知道您的孩子安然无恙、通过连续的“失败”视频捕获一次性时刻 (个人爱好)、收集有助于识别和解决交通问题的数据等。

至少可以说,处理大量的视频数据是具有挑战性的。单个或几百万个传入流会突然到达。流包含宝贵的实时数据,无法延迟、暂停或搁置该数据以在更合适的时间处理。在您获得原始数据后,其他的挑战就会出现。可以想到的是存储和加密视频数据并为其编制索引。提取价值 – 深入探究内容、了解内容的含义并加快行动 – 是下一个重要步骤。

新的 Amazon Kinesis Video Streams
今天,我要向您介绍 Amazon Kinesis Video Streams,它是实时流式传输服务的 Amazon Kinesis 系列的最新成员。现在,您可以从数百万台摄像机设备中提取流视频 (或其他时间编码的数据),而不必设置或运行您自己的基础设施。Kinesis Video Streams 接受您的传入流、以加密形式持久存储这些流、创建基于时间的索引并支持创建可视应用程序。您可使用 Amazon Rekognition Video、 MXNet TensorFlow OpenCV 或您自己的自定义代码来处理传入流,这样做是为了支持我知道您将创造的出色的新机器人学、分析和使用器应用程序。

我们将为您管理所有基础设施。首先,您使用我们的创建器开发工具包 (设备端) 创建应用程序,然后通过选择的设备向我们发送视频。传入视频将通过安全的 TLS 连接到达,并在使用 AWS Key Management Service (KMS) 密钥加密后以时间索引形式存储。接下来,您通过视频流解析器库 (云端) 使用视频流并从中提取价值。

无论您从一台设备还是数百万台设备发送多少低分辨率或高分辨率的视频,Kinesis Video Streams 都将进行扩展以满足您的需求。我总是不厌其烦地说,您可以专注于您的应用程序和业务。Amazon Kinesis Video Streams 基于您熟悉的 AWS 部件而构建。它将视频存储在 S3 中以实现持久性和节省成本,使用 AWS Identity and Access Management (IAM) 进行访问控制,并且可通过 AWS 管理控制台 AWS 命令行界面 (CLI) 和一组 API 进行访问。

Amazon Kinesis Video Streams 概念
下面我们浏览几个概念,然后设置一个流。

创建器 – 创建器是一种将数据放入流中的数据源。它可能是婴儿监视器、无人机上的视频摄像头或一些更异乎寻常的设备:可能是温度传感器或卫星!Amazon Kinesis 视频创建器开发工具包提供了一组功能,可使建立连接和流式传输视频变得轻松。

– 利用流,您可传输实时视频数据,有选择性地存储视频数据并使视频数据能够实时使用或批量使用。流还可包含其他类型的时间编码的数据 (包括音频、雷达、激光雷达和传感器读数)。大多数情况下,创建器和流之间存在一对一映射。多个独立的应用程序可使用和处理来自单个流的数据。

片段和帧 – 片段是流中的一组有时限的帧。

使用器 – 使用器从流中获取数据 (片段或帧) 并处理、分析或显示数据。使用器可实时或事后运行,并基于视频流解析器库而构建。

使用 Amazon Kinesis Video Streams
如我之前提到,创建器和流之间存在一对一映射。大多数情况下,每个创建器实例将使用 Kinesis Video Streams API 创建一个唯一的流。但是,如果您想进行测试或演示,或者您需要固定数量的小型流,则可手动创建流。

为了手动创建流,我打开 Kinesis Video Streams 控制台并单击 Create Kinesis video stream

我输入我的流的名称并单击 Create stream

如果我要自定义我的流,我可取消选中 Use default settings (稍后可以更改大多数设置):

我的流已准备就绪,可立即使用。该控制台将在我开始流式传输视频后立即显示视频:

Kinesis 团队与我分享了此屏幕;我没有时间实地考察。这能让我成为猎豹吗?

针对 Amazon Kinesis Video Streams 进行开发
下一步是使用创建器开发工具包来构建创建器应用程序。该应用程序在设备上或场外运行,负责创建流并通过调用 PutMedia 函数将片段流 (通常,每个片段流表示 2 到 10 秒时间的视频) 发布到 流。

使用器端将调用 GetMediaGetMediaFromFragmentList 函数来访问流中的 Matroska (MKV) 容器格式的内容,并使用包含的视频流解析器库提取所需内容。 GetMedia 旨在用于延迟非常低的持续流式传输; GetMediaFromFragment 列表是面向批处理的,并且允许有选择性地处理。

现在提供
Amazon Kinesis Video Streams 已在美国东部 (弗吉尼亚北部)、美国西部 (俄勒冈)、欧洲 (爱尔兰)、欧洲 (法兰克福) 和亚太地区 (东京) 区域提供,您可立即使用它开始构建您自己的可视应用程序。

定价基于三个因素:产生的视频量、使用的视频量和存储的视频量。

本文转载自 AWS 技术博客。

原文链接:
https://amazonaws-china.com/cn/blogs/china/amazon-kinesis-video-streams-serverless-video-ingestion-and-storage-for-vision-enabled-apps/

2019 年 11 月 01 日 08:00 92

评论

发布
暂无评论
发现更多内容

“新基建”与“双循环”的二重奏:2020服贸会靠什么推动经济复苏

脑极体

架构师训练营作业(大数据与机器学习)

qihuajun

Flink通过官网创建自己的工程-20

小知识点

scala 大数据 flink

What's new in Dubbo-go v1.5.1

apache/dubbo-go

golang dubbo 服务端

阿里P8Java架构师呕心沥血整理出来的[史上最全Java面试题精选集锦]

Java成神之路

Java 编程 程序员 面试

市值做市机器人,操盘做市系统搭建

13823153121

工作好多年有可能还未真正了解接口和抽象类

架构师修行之路

接口 抽象

商业通识 : 商业从哪里来?

Walker

得到 个人成长 商业 学习笔记

indexOf原理,Java,javascript,python实现

叫练

算法

甲方日常10

大橘子

工作 随笔杂谈 日常

智能联网汽车

石印掌纹

关于二进制的补码,反码,正负数表示以及Java代码测试

Zexho

Java 补码 位运算 反码 计算机知识

Java服务,内存OOM问题如何快速定位?

老大哥

Java 程序员 后端

没想到 Hash 冲突还能这么玩,你的服务中招了吗?

老大哥

Java 程序员 后端

第13周 作业

Jaye

筹备半年时间,四面阿里终于如愿拿到P7级offer【Java岗】。

Java成神之路

Java 编程 程序员 面试

架构师训练营 - 第 8周命题作业

红了哟

第十三周作业

olderwei

极客大学架构师训练营

【真实面试经历】我和阿里面试官的一次“邂逅”

老大哥

面试官为什么会问你,如何设计一个高并发系统?

老大哥

Java 程序员 后端

架构师训练营第十三周作业

张明森

架构师训练营第13周作业

王友

[翻译]The Go scheduler[Go调度]

卓丁

golang golang调度 Go scheduler

[翻译]Go Concurrency Patterns[Go 并发模式]

卓丁

golang Rob Pike Go Concurrency Patterns Concurrency

用技术的“信条”,开启AI to B的产业位移

脑极体

架构师第十三周作业

傻傻的帅

架构师

我的大厂面试经历

老大哥

Java 程序员 后端

Java架构师JVM启动流程和内存结构,程序员必看!

老大哥

Java 程序员 后端

从用户输入手机验证码开始

架构师修行之路

阿里P8忠告:这些技术,哪怕不用微服务架构,你也应该会

小Q

Docker 架构 微服务 springboot SpringCloud

大厂面试题:集群部署时的分布式 session 如何实现? 面试官心理分析

老大哥

Java 程序员 后端

Amazon Kinesis Video Streams – 适用于可视应用程序的无服务器视频提取和存储-InfoQ