Home » 未分类 » 利用V4L2架构实现简单的视频监控

利用V4L2架构实现简单的视频监控

看看博客,忽然发现很久不更新文章了,最近都在忙着找工作什么的,现在又是感冒发烧,难过得很!
刚好今天实现了基本的客户端,就简单的说一下关于整个实现过程吧,废话不过多说~~

测试环境:acer 4752G ubuntu 12.04
工具:vi Qt4.7

首先要做一个视频监控,第一步就是要有一个摄像头(这是硬条件,没摄像头做个JB对吧),这里采用的是笔记本的自带摄像头。当然其它的也可以,不过要查寻一下基本的驱动架构和支持的图片格式。有的是jpeg的图片格式的,有的是yuyv的图片格式。确保摄像头是好的之后,接下来就是利用vi写一个服务器了,服务器主要工作就是等待客户端的链接,然后负责调度摄像头采集图片,不断的发往客户端就行了~~
以下是我测试用的代码,略微有点乱,注释什么的和打印信息测试什么的都没删掉,讲究用下吧。不想弄它了。。。以下是完整的代码实现。服务器采用系统编程这一块实现~~

这里是图片的haffman编码之类的东西,我也不怎么懂,网上找的。

接下来就是具体的关于摄像头那一块的实现,查询出基本的摄像头格式,然后相应的设置摄像头,实现数据的采集

实现了基本的摄像头这边的硬件初始化配置之后,接下来就是网络这一块,这里需要注意的一是:在我们建立服务器的时候,大概有以下几个步骤:
1、构架socket结构体
2、构件表达服务器的地址结构体
3、像地址结构体设置数据,初始化
4、绑定地址结构体和socket描述符
5、监听客户端的链接
6、准备接收客户端的信息服务
7、启动服务线程,回应请求数据服务,分离线程属性。

当写完以上这一块之后,便可以实现基本的服务器这边的架构了,这时我们可以通过浏览器来访问我们的服务器,通过http协议写我们的视屏流到我们的浏览器中,也就是基本的视频已经出来了。

很乱,看个大概就好,实在看不下去的就请拍砖。

This entry was posted in 未分类. Bookmark the permalink.