全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式应用系统设计报告 PC Linux视频监控系统设计1、 课程设计的目的课程设计是嵌入式系统应用设计课程教学必不可缺的一个重要环节,可加深学生对该课程所学内容的进一步的理解与巩固,是将计算机课程与实际问题相联接的关键步骤。通过课程设计,能够提高学生分析问题、解决问题,从而运用所学知识解决实际问题的能力,因而必须给予足够的重视。二、设计目标PC Linux视频监控系统通过虚拟机redhat9将摄像头采集的视频信号进行压缩,同时进行入侵检测,再通过网络数据传送web服务器,客户端通过浏览器监控。三、相关背景知识随着计算机网络技术、视频压缩技术以及嵌入式技术在近些年来的迅速发展,网络视频监控系统进入快速发展期,市场上出现了很多网络视频监控产品,以满足人们对安全的各种要求。采用嵌入式Web技术的网络视频监控系统,目前正成为网络视频监控系统的一个重要发展方向。用户通过浏览器或其他专门的客户端软件,就可远程访问监控摄像机,实现对现场的远程视频监控。在系统设计中采用B/S结构,将视频采集功能模块和PC机客户端监控功能模块相分离,采用TCP协议对视频数据进行网络传输。视频采集,对目前Linux下USB摄像头驱动的两种接口标准Video for-Linux和Video for Linux Two分别进行了研究,分别实现了基于这两种标准的驱动下的图像采集,并在最终的系统中采用了基于Video for Linux标准的驱动程序,完成了图像采集功能。通过在嵌入式视频采集上建立嵌入式Web服务器,使用户通过Web页面查看图像视频。4、 课程设计环境操作系统:Vmware 虚拟机下Linux五、流程六、结果从浏览器中可看到视频,一下是截图:七、重点/疑难问题及解决方法PC端采用VMware+redhat9,由于本人安装VMware-Tool后设置不了共享文件夹,采用samba服务器,通过samba服务器实现文件夹共享,搭建samba服务器时遇到window平台打开不了共享文件夹问题,后来发现是配置文件有问题。解决办法是修改smb.conf文件。编译内核时遇到有内核版本号,但是2.4.36版本启动不了。解决方法是修改/etc/lilo.conf启动项。编译内核失败,不能进入系统,提示如下: audit(.326:0):initialized kernel panic not syncing: VFS:Unable to mount root fs on unknown-block(0,0) 或是:VFS:Cannot open root device hdxy or unknow-block(0,0) Please append a correct root= boot option kernel panic-not syncing: VFS:Unable to mount root fs on unknow-block(0,0) 这种故障现象, 解决方法:把08.05.11、 RAM disk support 09.27.07、 Compressed ROM file system support (cramfs) 这两项都要选上!八、遗留问题及思考架设thttpd服务器,按照资料架设,服务器不能成功启动,解决方法还在研究中。成功安装VMware-Tool,但是不能跟window共享文件夹,为什么redhat9就不能设置共享文件夹?九、代码分析 if (server_handle = socket (AF_INET, SOCK_STREAM, 0) = -1) exit_fatal (Error opening socket Abort !); if (setsockopt (server_handle, SOL_SOCKET, SO_REUSEADDR, &O_on, sizeof (int) = -1) exit_fatal (Setting reused address fail Abort !); initaddr (&servadr,NULL, port); if (bind (server_handle, (struct sockaddr *) &servadr, sizeof (struct sockaddr) = -1) exit_fatal (error bind socket);这部分代码主要是用于创建一个socket,设置服务地址,绑定端口。 if (listen (server_handle, MAXCONNECT) = -1) exit_fatal (Damned errors when listen Abort !); return server_handle;这部分代码主要是服务器用于监听客户端。while (videoIn.signalquit) sin_size = sizeof(struct sockaddr_in);if (new_sock = accept(serv_sock, (struct sockaddr *)&their_addr, &sin_size) = -1)continue;syslog(LOG_ERR,Got connection from %sn,inet_ntoa(their_addr.sin_addr);printf(Got connection from %sn,inet_ntoa(their_addr.sin_addr);pthread_create(&server_th, NULL, (void *)service, &new_sock); 这部分代码主要用于处理连接。Timer* tmr_mstimeout( ) register Timer* min = timers0; for ( h = 1; h HASH_SIZE; +h ) /timers在插入或删除元素时自然是要用心维护好顺序的,这里不打出来 if ( timersh min ) min = timersh; return min;不管用什么数据结构来组织,既然Timer是一个计时器,那么就总是需要从一堆Timer里面找出离某个时间最近的那个Timer的. 在thttp的实现中,因为与客户端的连接有很多,也就是accept()返回的connfd数量有很多,根据这个最近的Timer,就可以从这一堆connfd中select出已经ready(可读可写或异常)的那个connfd,然后对此co
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 红色中国风羊年生肖
- 2026年公务员招考申论创业带动就业扶持模拟试卷及答案
- 湖北省住宅工程质量常见问题-防治手册
- 机动车检测维修法规与技术规范(高级)考前速记清单
- 2026年保安员职业技能考试试卷试题及答案
- 2026秋苏少版小学音乐二年级上册(新教材)教学计划含教学进度表
- 2026年马鞍山市人民医院派遣制工作人员招聘笔试备考试题及答案
- 2026年秋季小学道德与法治六年级上册(新教材)教学计划
- 2026年预防接种门诊资质培训考核试题及答案
- 殡葬礼仪师创新实践评优考核试卷含答案
- 湖南长沙外国语学校2026-2027学年高一上学期第一次月考英语试卷(含答案无音频无听力原文)
- 2026中国农机配件市场发展现状及投资策略分析报告
- 2026-2031年中国互联网+文化行业市场调查研究及发展前景预测报告
- 广东2026公需课《加快培育发展新质生产力》题库及答案
- 特发性肺纤维化诊疗指南(2025版)
- 木材加工剩余物回收利用合同
- 药品注册岗位招聘笔试题(某大型国企)2025年试题集精析
- 联合利华(中国)秋招面试题及答案
- 克令吊司机培训课件
- 工地触电事故安全培训课件
- 2025年工会社会工作者招聘笔试模拟试题库及答案
评论
0/150
提交评论