服务器基于ARM的家庭视频服务器的研究(计算机理论范文)

视频服务器  时间:2021-01-29  阅读:()

封面

《基于ARM的家庭视频服务器的研究》Word格式可编辑可修改

精心整理放心阅读欢迎下载

文档信息

基于ARM的家庭视频服务器的研究

摘要针对家庭网关的最重要功能远程监控功能本文设计了一个基于ARM平台的嵌入式家庭网关服务器平台。平台中集成了boa服务器和家庭网络服务器及视频服务器于一体通过通用网关接口程序CGI实现了远程用户和家庭内部网络的动态交互。本文中研究的数据信息主要是摄像头视频信息采用了将视频信息通过ActiveX控件解码发送的方式在HTTP浏览器上直接播放的方式来实现远程传输(本文不论述信息家电的远程控制部分) 。 关键字ARM boa服务器 CGI  视频传输 ActiveX引言 随着科学技术的不断进步和发展人们对生活质量也提出了更高的要求。家庭网络作为一个新生体越来越近的开始走进人们的生活它将家庭单元作为一个节点加入了网络的大家庭其中作为连接家庭内部与Internet的桥梁的家庭网关起了举足轻重的作用。嵌入式网关的主要功能如下 远程控制客户通过Internet上连接的任意一台PC机的浏览器都可以访问家庭网络的服务器家庭网络中的设备状态将以H TML文件的方式显示在客户端的浏览器中客户通过对H TML页面上相应设备的点击以实现对家庭网络中设备的远程控制操作的结果同样以HTML页面的方式刷新客户端的浏览器。 远程监视客户通过Internet上连接的任意一台PC机的浏览器都可以访问家庭网络的服务器在HTML页面上通过点击控件按钮来实现视频工具的自动下载和所要求视频文件的自动播放从而可以显示多个摄像头中的视频信息。 远程维护 当HomeNetServer的后台数据库需要维护或者家庭网络中设备

的HTML描述文件有了更新甚至系统的网络管理系统需要升级为新版本时管理员都可以通过Internet远程对家庭网络中的服务器做维护和更新。 基于这些基本要求和嵌入式系统自身资源有限的特点系统选择了S3C4510芯片并对其进行外围电路扩展如图1 图1外围扩展电路方框图 其中 Flash/ROM用于存储家庭网关中的嵌入式操作系统、 HTTP服务器、 CGI网关程序、家庭网络服务器以及各种服务所需的文件系统。整个家庭网关软件平台存储在Flash中系统启动时将从Flash中运行Bootloader解压操作系统并将其移入SDRAM中。 Ethernet S3C4510内部集成了网络控制接口并提供专用于网络通信的DMA通道。通过Ethernet模块 S3C4510实现与Internet的连接。 Ethernet模块完成芯片与网络的隔离和数据的收发。 System S3C4510所需的其他外围电路包括 电源电路、外部时钟50MHZ电路、开关及复位电路和JTAG调试接口电路等。嵌入式操作系统选择的是uClinux操作系统 uClinux是专门针对没有MMU的处理器而设计的系统多采用Romf s文件系统 Romf s是一种相对简单、 占用空间较少的文件系统。而在UCL I NUX下主要有三个WEB服务器 httpd、 thttpd和boa httpd是最简单的WBE服务器功能简单不支持认证和CGI thttpd和boa均支持认证和CGI功能丰富其中boa1是一个单任务的http服务器源代码开放性能较高 占用系统资源较少 boa服务器在收到请求时不启动多个服务进程处理多个请求在一个进程内处理所有服务请求。对于CGI程序将生成新的进程来处理考虑到嵌入式系统自身资源有限和家庭网关的进程数量有限系统选择了在uCLinux系统中的boa服务器。由于目前的uCLi nux还不支持ASP、 PHP等动态网页技术所以在

uCLi nux下通过CG I2技术连接WEB页和本地程序提供动态和交互的特性。图2系统总体设计框图1配置boa服务器 CGI程序不是放在服务器上就能顺利运行如果要想使其在服务器上顺利的运行并准确的处理用户的请求则须对所使用的服务器进行必要的设置。的配置文件:在中对进行了配置这些配置多使用默认值本系统中将Document Root指定的WEB服务器的根修改为/boas. 在对内核进行配置时选择boa程序和cgi. 将cgi_generic文件夹下的cgi.c和makefi le覆盖到程序包中的/uscgi_generic/。 将boa文件夹下的hash.c覆盖到程序包中的/usboarc。 将rc文件覆盖到程序包中的/vendoMiectek/4510。 本系统中的ucLinux系统中的文件使用的是ROMFS和运行于RAM的EXT2。为了可通过FTP等工具更新网页 rc文件在/boas下创建文件夹cgi_bin然后将index.html制到/boas下将CGI程序复制到/boas/cgi-_bin下。至此建立了boa运行的基本环境使用〝>boa c/boas/&〞命令就可以运行boa. 2系统设计描述 在嵌入式网关的设计中 网关程序与家庭网络的HTTP服务器和家庭网络内部服务器位于同一物理设备基于S3C4510的硬件平台之上负责连接HTTP服务器与后台数据库完成HTTP服务器与HomeNetServer之间的信息交互。 在家庭网关的设计中根据功能描述 网关应能提供远程监视、远程控制、远程维护功能。 网关内部工作流程如下 ●若客户发送的HTTP请求经过HTTP服务器接收和解析后得知要求的是设备状态信息时 HTTP服务器从存储设备状态信息的静态文件中取出设备状态并封装为HTTP响应消息发送回客户端。 ●若客户发送的HTTP请求经过HTTP服务器接收和解析后得知请求的消息是对设备的设置操作 则通CGI函数

将消息内容转换为家庭网络协议传递给家庭网络服务器 由家庭网络服务器对家庭内部设备的管理和控制并将处理结果以消息形式传递给CGI程序并封装为HTTP响应消息的形式发送回客户端。 ●若客户发送的HTTP请求经过HTTP服务器接收和解析后得知请求的页面是提供实时视频服务时 HTTP服务器将调用CGI函数向视频数据处理模块发送消息通过视频数据处理模块来控制视频压缩卡完成视频数据的采集压缩和发送等功能。 ●若客户发送的HTTP请求经过HTTP服务器接收和解析后得知请求的消息包含对云台设备及镜头的控制命令时 HTTP服务器通过CGI函数向云镜解码器直接发送控制指令以实现对云台和镜头的控制。 图3家庭网关软件结构框图3实时视频传输部分设计转贴于 基于HTTP的boa服务器负责接收和响应客户端的HTTP请求 当请求的是视频信息时此请求通过CGI函数向视频数据处理模块发送消息从而向视频设备发送事件以允许实时视频发送任务进入运行队列。 视频数据处理模块主要包括视频图像的实时捕捉借助MPEG-4视频压缩卡完成 、动态存储和实时播放 图像的实时播放可以和图像的实时捕捉存储同时进行。 初始化视频压缩卡 M878Object*pObject=NULL For(int i=0i InitData()  m_obArray.Add(pObject)  } 数据采集 for(i=0 iSetParamToDevi ce()  设定参数} 停止设备 当不再使用设备时调用ViUnInit()关闭视频压缩采集卡并卸载系统资源。 数据发送模块 Out Mpe gBu ff(i

OnMpeg4Wri te)  Voi d CALLBACK OnMpge4Wr ite(DWORD dwCardBYTE *pbuf f DWORD dwS i ze BOOLi sKeyFrom) { if(dwCard>=g_dwDev ic e) return

g_VS trm Inf odwCar d+=dwS i ze/26

MTAWrit eVi deo((BYTE)dwCard pbuff (LONG)dwSi ze i sKeyFrm) }发送模块负责向地址表中的地址发送经过编码处理的实时视频数据并修改地址表中的信息。地址表用来保存请求实时视频服务的用户的IP地址视频发送任务根据地址表中的地址来发送视频包。 数据接收模块 该模块主要完成视频数据的接收、解码和显示工作。用户通过浏览器实现对远程设备的监控服务器返回的信息通过浏览器显示。浏览器可以使用微软公司的Internet Exploer或Netscape公司的Netscape Navigator等。对于普通的文本及HTML文件支持的G IF、 JPEG等格式的图片普通浏览器都可以显示。但对于实时视频数据首先与HTTP链接不同不是使用流套接字而是使用数据报套接字接收然后还需解码和显示这些工作浏览器都无法完成。为使用户能通过浏览器观看视频本系统采用在WEB页面中嵌入ActiveX控件 由ActiveX控件完成视频数据的接收、解码和显示工作。而ActiveXInternet技术的一个重要方面是安全的下载和安装ActiveX控件和需要的支持文件。 Microsoft Internet Explore通过在HTML文档中使用Internet Component Download方法自动下载并安装ActiveX控件3。 1客户端控件的嵌入 在WEB服务器的HTML文件中嵌入ActiveX属性针对客户端使用最多的IE浏览器 HTML代码可使用的MFCControl控件如下 VideoPageID= 〝Mpge4Control 〞

WIDTH=100HEIGHT=51CLASSID=CLSID:A119846-2E75-11D0-BDB2-000000000000〞

CODEBASE=http:vi deodisplay/MFCControl.ocx>#Veion=1  0 0 1>其中ID标志控件命名提供访问控件的HTML代码。 CLASS ID标志是唯

一的UU I D给控件赋值的指令告诉I E哪个对象被装载。在HTML页面实现控件的自动下载使用标志的CODEBASE属性该属性告诉IE要下载和安装的控件版本和找到和下载控件及其支持文件的地址。

2客户端控件的注册 控件编写完成后需要在客户端注册关于控件的信息记录在注册表中。客户端从服务器端接收到嵌有控件的HTML页面后将根据OBJ ECT标签中的信息通过注册表使用对应的空间完成接收解码和显示。 4远程控制部分设计 在远程控制部分设计中根据性能最优化和实时性考虑将控制部分分为两部分云台控制部分主要是通过串口进行通信信息家电远程控制通过内部家庭网络协议对相应设备进行控制控制信号的物理载体是家庭网络内部总线。 由于篇幅有限本文仅讨论前者 。 云台控制模块设计 该模块是个相对独立的模块负责控制云台的上下左右旋转以及镜头的焦距和光圈的调整。当服务器接受到的请求中含有对云台设备以及镜头的控制命令时将通过CGI函数向云台解码器发送控制指令以实现对云台镜头的控制。在室内采用CDA2000室内万能解码器4直接通过-232串行口与嵌入式网关通信云台控制电压24V、220V可选镜头控制电压可在5V-12V之间无级调节。图4云台控制系统硬件连接框图 在云镜控制模块中解码器起着核心的地位设计云镜控制模块主要解决的问题是将各项操作如上下旋转镜头调焦等操作进行编码但本系统采用的解码器封装了底层硬件程序的编写 因此所做的工作是利用解码器开发商提供的协议通过232串行口向解码器发送指令。 Li nux对串口的操作是通过设备文件进行访问的只需打开相应的串口文件然后通过调用设备相关函数来打开串口 open()  设置串口参数(tcgetattr() 

cfsetispeed()  cfsetospeed()) 设置输入输出模式

optio.c_Iflag和optio.c_Of lag 恢复串口属性关闭串口

close() 等即可。 图5串行通信流程5结论 本系统的特点是基于嵌入式微处理器有限的系统资源之上为客户提供视频服务。本系统采用的是〝boa服务器+CGI+家庭网络服务器〞的模式来实现对信息家电的控制但由于篇幅有限不做论述。鉴于实时视频服务的特殊性采用了〝boa服务器+CGI+视频接收和控制模块(视频服务器) 〞的模式实现对视频数据的捕获、采集、发送等操作并通过串行口通信方式对云台和镜头进行直接的控制视频的接收问题一直以来是研究的重点本系统采用的是在WEB页面中嵌入Ac t iv eX控件的方式 由ActiveX控件完成视频数据的接收、解码和显示工作。而这样做的好处是不需对客户端做任何设置就可以完成控件的自动下载和视频文件的实时播放。参考文献1张大波等编著.嵌入式系统原理、设计及应用第二版 2005. 1机械工业出版社M2李现勇等编著.Visual C++串口通信技术与工程实践第二版 2004.7人民邮电出版社M 3李驹光等.ARM应用系统开发详解——基于S3C4510B的系统设计 2003. 12清华大学出版社M4李善平等.Linux与嵌入式系统第二版 2006. 10清华大学出版社M5刘峥嵘等.嵌入式Linux应用开发详解第一版 2004.7机械工业出版社M

“基于ARM的家庭视频服务器的研究”文档源于网络本人编辑整理。本着保护作者知识产权的原则仅供学习交流请勿商用。如有侵犯作者权益请作者留言或者发站内信息联系本人我将尽快删除。谢谢您的阅读与下载

Virmach款低价VPS可选可以选择多个机房,新增多款低价便宜VPS主机7.2美元起

Virmach商家我们是不是比较熟悉?速度一般,但是人家价格低,而且机房是比较多的。早年的时候有帮助一个有做外贸也许需要多个机房且便宜服务商的时候接触到这个商家,有曾经帮助够买过上百台这样的低价机器。这里需要提醒的,便宜但是速度一般,尤其是中文业务速度确实不快,如果是外贸业务,那肯定是没有问题。这几天,我们有看到Virmach推出了夏季优惠促销,VPS首年8折,最低年付仅7.2美元,多机房可选,如...

UCloud云服务器香港临时补货,(Intel)CN2 GIA优化线路,上车绝佳时机

至今为止介绍了很多UCLOUD云服务器的促销活动,UCLOUD业者以前看不到我们的个人用户,即使有促销活动,续费也很少。现在新用户的折扣力很大,包括旧用户在内也有一部分折扣。结果,我们的用户是他们的生存动力。没有共享他们的信息的理由是比较受欢迎的香港云服务器CN2GIA线路产品缺货。这不是刚才看到邮件注意和刘先生的通知,而是补充UCLOUD香港云服务器、INTELCPU配置的服务器。如果我们需要他...

美国200G美国高防服务器16G,800元

美国高防服务器提速啦专业提供美国高防服务器,美国高防服务器租用,美国抗攻击服务器,高防御美国服务器租用等。我们的海外高防服务器带给您坚不可摧的DDoS防护,保障您的业务不受攻击影响。HostEase美国高防服务器位于加州和洛杉矶数据中心,均为国内访问速度最快最稳定的美国抗攻击机房,带给您快速的访问体验。我们的高防服务器配有最高层级的DDoS防护系统,每款抗攻击服务器均拥有免费DDoS防护额度,让您...

视频服务器为你推荐
聚酯纤维和棉哪个好纯棉和聚酯纤维的最佳比例扣扣空间登录如何设置QQ空间快速登陆牡丹江教育云空间登录云端学习如何登录?空间登录qq手机QQ能不能直接登录空间而不用上QQdns服务器地址DNS服务地址首选dns服务器地址首选DNS服务器是什么意思360云盘360云盘和百度云盘哪个更好360云盘下载速度慢怎么办360云盘为什么下载速度如此慢?最便宜的车最便宜的车是多少钱?最便宜的跑车中国最便宜的跑车多少钱?
什么是域名 日本动态vps 中国域名网 独享100m 免费静态空间 网页背景图片 世界测速 如何安装服务器系统 监控服务器 工信部网站备案查询 cdn服务 ipower asp.net虚拟主机 低价 vim命令 免费php空间申请 lighttpdwindows 彩虹云点播官网 美国凤凰城旅游 更多