Unity3d C#获取海康摄像头直播视频流预览萤石截图实现
发布日期:2021-05-28 16:49:45 浏览次数:28 分类:精选文章

本文共 665 字,大约阅读时间需要 2 分钟。

前言

视频直播流的画面预览通常有两种实现方式:第一种是将视频流在场景中播放,截取一张图作为预览保存后停止播放;第二种是利用三方平台接口完成。我们的项目选择后者,采用萤石平台的方案进行实现。

实现流程

根据萤石平台的开放平台介绍,整个实现过程主要包含以下几个步骤:

实现过程

准备工作

首先需要将监控设备添加到平台中,这一步是整个流程的基础,完成这步后续操作才有可能进行。

获取相关信息

进入平台控制台,通过控制台获取appKey和secret等关键信息,并将这些信息以及设备编号保存备用。

litjson

下载并本地使用litjson进行传参和数据解析。

请求接口

在接口请求中使用UnityWebRequest进行处理,具体操作以之前的帖子为参考。

请求令牌

发送POST请求至地址:https://open.ys7.com/api/lapp/token/get,请求参数如图所示。

截图请求

发送POST请求至地址:https://open.ys7.com/api/lapp/device/capture,请求参数如图所示。

请求截图

发送GET请求至具体截图地址(如:https://img.ys7.com//group2/M00/74/22/CmGdBVjBVDCAaFNZAAD4cHwdlXA833.jpg),返回图片数据。

显示图片

将获取到的图片数据转换为texture2d,新建sprite并赋值给图片。

结语

整个流程耗时约2秒左右,截图可以正常显示在场景中。建议设置间隔几分钟更新一次预览图,以保持最新状态。

上一篇:Unity3d 发布Linux系统(ubuntu)程序并运行
下一篇:Unity3d C#解决transform.LookAt朝向前后翻转问题(含源码)

发表评论

最新留言

初次前来,多多关照!
[***.217.46.12]2025年04月29日 05时16分20秒