手把手教你做一个物联网视频监控项目(一) 介绍

春招实习十二面的面经



前言

最近想做一个安防相关的项目,所以需要储备视频监控方案的相关知识,冲韦东山老师的视频中学到了相关知识,很好地满足我的需求。特将学习的整个过程、笔记记录下来,本系列文章将会引用许多韦老师项目的内容,有兴趣的同学可以去看看韦老师的这个课程,原理讲得不深,但是单纯应用绝对够用
韦东山老师手把手带你从0开始自己做一个视频监控项目

一、文章系列内容介绍

本文章介绍有2种视频监控方案,一种可以运行在低性能的板子上,另一种是热门的流媒体方案
1.MJPG-streamer方案
本系列的第二篇文章会讲解:
MJPG-streamer的移植、使用、框架讲解,代码讲解等内容
2.流媒体方案
本系列的第三篇文章会讲解:
流媒体方案的实现之ffmpeg的移植、使用、内部流程、参数讲解等内容;
流媒体方案的实现之Nginx的移植、多场景使用等;
3.摄像头和声卡接口
摄像头V4L2接口、声卡ALSA接口的相关函数分析及介绍
4.内网穿透
原理、两种实现方法等内容

二、软硬件准备

硬件:a. 100ASK_IMX6ULL开发板 (或其他Linux开发板);b. USB摄像头
软件:a. Ubuntu(可以用虚拟机安装Ubuntu);b. Buildroot(Buildroot会自动下载其他软件: MJPG-streamer, ffmpeg, nginx);c. 内网穿透软件: 花生壳5.0

三、方案介绍

mjpg-streamer

如果只是想在客厅查看房间的情况,不需要什么复杂的协议,我们可以用这种方案。
作为程序员,我们需要写2个程序:

  1. 在连接摄像头的ARM板子上,实现一个服务器程序:它一边读取摄像头数据,一边等待客户端连接并发送数据。
  2. 在手机或电脑上,编写客户端程序,它会从ARM板上获得数据并显示出来。

这2个程序之间,并不需要实现复杂的协议,只需要约定数据格式并传输一帧帧的数据。
实际上,我们可以使用现成的程序:
mjpg-streamer,它可运行在ARM板上,在手机上使用浏览器直接观看视频
在这里插入图片描述

方案优点:
程序简单,所有源码一目了然,便于学习
对ARM板的性能要求不高,主频200MHz的ARM芯片也能实现
方案缺点:
只能实现局域网内的视频监控
要实现互联网视频监控,需要另外实现内网穿透
mjpg-streamer没有实现声音传输
mjpg-streamer项目已经不再维护,仅仅建议用于学习

流媒体方案

作为程序员,我们需要写3个程序:

  1. 在连接摄像头的ARM板子上,实现一个推送程序:它一边读取摄像头数据,一边把数据推送给服务器
  2. 在服务器上,实现“流媒体服务器”程序:它接收ARM板发来的数据,并把数据转换格式后发给手机等客户端
  3. 在手机等客户端上,实现拉取程序:它从服务器上拉取数据,并显示出来

实际上,我们可以把互联网功能去掉:
把“推送程序”、“流媒体服务器”程序,都在ARM板上运行;手机等客户端只能在同一个局域网里观看视频
或者也使用内网穿透技术实现互联网视频监控
在这里插入图片描述
我们并不需要从头实现这些功能:
推送程序:可以用ffmpeg
流媒体服务器程序:可以用Nginx
客户端程序:可以用VLC浏览器
为此,我们需要了解一些协议:
有很多流媒体协议
RTMP、HTTP-FLV、HLS等,后面流媒体方案中我们用到了前两种协议。
在这里插入图片描述
在这里插入图片描述流媒体服务:两端加一服
注意:
RTMP可以用在双端
HTTPFLV 、HLS 只能用在拉流端

参考资料

HTTP-FLV直播初探
https://www.cnblogs.com/saysmy/p/7851911.html
理解RTMP、HttpFlv和HLS的正确姿势
https://www.jianshu.com/p/32417d8ee5b6
韦老师视频监控项目
https://www.bilibili.com/video/BV1fD4y1S7hT?p=6

安装ESXi黑群晖NAS的教程如下: 1. 首先,确保你已经下载了ESXi安装包,并从[Rufus官方下载地址](https://rufus.ie/)下载并安装了Rufus软件。 2. 使用Rufus软件将ESXi安装包制作成一个安装优盘。这将用于在安装黑群晖之前安装ESXi操作系统。请按照[Rufus官方下载地址](https://rufus.ie/)上的说明进行操作。 3. 完成ESXi安装优盘的制作后,将优盘插入你想要安装黑群晖的计算机。 4. 启动计算机并进入BIOS界面。在BIOS中,将启动选项设置为从优盘启动。 5. 保存设置并重启计算机。计算机将从ESXi安装优盘启动。 6. 在ESXi安装界面中,按照屏幕上的指示进行安装。你需要选择适当的磁盘来安装ESXi操作系统。 7. 完成ESXi安装后,重新启动计算机,并确保计算机从安装好的ESXi操作系统启动。 8. 在ESXi操作系统中,通过访问ESXi的管理界面来配置网络和其他设置。请按照ESXi的官方文档或用户手册进行操作。 9. 下步是安装黑群晖。为此,请下载黑群晖的安装程序,并根据黑群晖的官方文档和教程进行安装。通常情况下,你需要将黑群晖的安装程序复制到ESXi操作系统上,并在ESXi的管理界面中创建一个虚拟机并分配适当的资源。 10. 完成黑群晖的安装后,你可以通过访问黑群晖的管理界面来配置和管理你的NAS系统。 请注意,以上是一个基本的安装教程概述,具体的步骤和操作可能因个人的硬件和软件配置而有所不同。建议在安装过程中参考ESXi和黑群晖的官方文档和用户手册以获得更准确和详细的指导。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值