文章图片
文章图片
安防视频云存业务特点与面临挑战
传统视频数据因为缺乏元数据索引,因此在无法确定精确的事件发生时间时,无法快速有效的定位视频信息,需要大量人力对存量视频信息进行检索。由此引入巨大的人力成本,并需要更多时间完成视频检索。
此外,传统安防视频具有以下特点:
- 使用RTMP/RTSP协议实现视频流收流。
- 需要海量、可靠的视频存储。
- 仅在有事件发生,并需要了解现实情况时才进行回看。
- 回看框架需要确保7*24可用,在需要时可以快速访问从而实现回看功能。
- 需要在云端或本地部署额外的软/硬件资源,实现视频流接收,引入额外成本。
- 传统的本地视频存储受限于单一副本,存在单点故障导致的视频丢失风险。固定的本地存储容量,使得增加摄像头数量时需要配套考虑存储设施容量规划和部署方案,使得项目周期变长,项目规划更加复杂。
- 回看框架访问频率不高,但7*24可用意味着即使没有回看需求的时间段内,仍然需要支付对应的系统运行成本。
文章图片
想要了解更多亚马逊云科技最新技术发布和实践创新,敬请关注在上海、北京、深圳三地举办的2021亚马逊云科技中国峰会!点击图片报名吧~
解决方案架构与主要功能模块 系统架构图:
文章图片
主要功能模块:
- IPC C SDK
利用SDK直接将视频上传至Amazon S3存储桶,从而摆脱本地或云端视频流转存所需的资源,实现云存成本与存储视频累计时长相关。
- Amazon S3视频存储桶
同时,利用Amazon S3每个前缀提供3500 PUT和5500 GET请求的性能,利用前缀命名规则,实现云存空间性能自动扩展,从而实现使用统一的框架支持从几个到数以百万计的IPC设备。
- 对视频抽帧并调用AI接口和DynamoDB元数据存储
- AI服务
https://www.amazonaws.cn/solu...
由于AI服务部分内容较多,限于篇幅,该解决方案另行刊文作详细介绍。敬请期待。
- 无服务器架构构建回放平台
IPC-C-SDK 用户可以从Github下载SDK代码并编译到自己的IPC之中:
https://github.com/aws-sample...
IPC-C-SDK内部工作逻辑如下:
文章图片
IPC-C-SDK从IPC内部视频、音频编码器获得视频、音频流,并通过增加TS、PAT、PMT、PES头,形成TS格式音视频流,并存储于IPC SoC内存缓存区中。
当内存缓存区中的音视频流达到一定阈值后,IPC-C-SDK会自动通过内置Amazon S3客户端,将视频内容以对象形式推送到Amazon S3存储桶中。
得益于IPC-C-SDK,视频分片得以直接存储到Amazon S3中,而无需其他音视频码流处理设备或资源。从而使得成本得以有效降低到仅需要Amazon S3存储和API调用成本的程度。实现了成本的最优化。
IPC-C-SDK使用亚马逊云科技IAM进行权限管理。支持AK+SK和AK+SK+Token的身份验证模式。实际生产环境中,推荐使用Amazon IoT进行设备管理,配合IoT Credential Provider服务,实现物联网设备证书换临时IAM身份信息。该方案提供最佳的云上数据安全性,支持按照设备证书ID管理设备权限,从而确保IPC云存视频的安全性。其参考架构如下:
文章图片
用户可以参考以下文档:
https://docs.aws.amazon.com/i...
Amazon S3视频存储桶 Amazon S3视频存储桶提供高达99.999999999%的数据持久性。意味着如果以3秒分片保存到Amazon S3,每10000年才会丢失一个3秒的视频分片。从而确保存储视频的安全性。
此外,在视频云存时,推荐使用以下格式进行存储:
S3://{桶名称}/{设备证书ID}
/{年}/{月}/{日}/{时}/{分}/{秒}.ts
该格式可以提供以下优势:
- 确保数据存储和访问安全
- 性能自动扩展
视频抽帧并调用AI接口将结果存储到DynamoDB中 当视频分片上传到Amazon S3存储桶中后,用户可以选择使用AI技术对视频内容进行分析。例如:检测视频中出现的人脸和相应位置,并将结果保存到DynamoDB中,供后续查询使用。
视频数据在上传到Amazon S3后,会触发Amazon S3事件通知。通过云端Lambda函数,可以实现抽取视频关键帧,并转换为JPEG格式,发送给AI接口进行分析。
AI分析的结果会以JSON格式,返回给Lambda函数,Lambda函数将分析结果信息存储到DynamoDB数据库中,供回看平台检索使用。
无服务器架构构建视频回看平台 得益于以TS格式保存的视频分片,云存视频分片可以实现任意时间段内分片连接成整体视频进行回看。因此无需在云端进行二次转码操作。从而降低系统成本。
无服务器的视频回看平台使用开源Video.js框架,提供两种回看模式:
- 近实时回看(延迟6-20秒,取决于网络和客户端配置情况)
- 指定时间段回看
指定时间段回看支持通过检索DynamoDB中存储的视频元数据,获取所需回看的时间段范围,将结果返回给客户端进行回看。
您可以通过以下链接在亚马逊云科技的环境中一键部署回看框架。框架中的回看应用带有示例视频供您参考。
https://console.aws.amazon.co...
文章图片
7月21-7月22号,上海世博中心,2021亚马逊云科技中国峰会——上海站强势登陆!没有报名的你,还不赶快点击上方卡片,速速报名!成功报名参会的Builders也要记得准时参会哦~
本篇作者
李挚
亚马逊云科技 解决方案架构师
徐高伟
亚马逊云科技 创新解决方案架构师
陈海云
亚马逊云科技 UI / UX开发人员
李智勤
亚马逊云科技 物联网原型架构师
【构建安防视频云存,和传统安防视频业务的烦恼说再见!】
推荐阅读
- 基于Amazon ECS Fargate构建Apache Superset
- Apache Atlas 数据血缘
- 面向未来,我们来聊一聊什么是现代化数据架构
- Amazon DynamoDB 在智能湖仓架构中的实践
- Amazon Redshift 表设计优化 – 优化已有数据表中的列大小
- 呼叫医生云! Amazon HealthLake 正式推出
- 在Amazon SageMaker中灵活使用多种存储服务