- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于Android智能手机的多媒体远程监控系统设计
摘要:多媒体远程监控是指通过网络实现对远程场景的音视频监控。本文主要介绍一种以Android智能手机为控制端,以个人电脑为服务器端,以摄像头与话筒为主的多媒体设备为被控端的三点一线的远程监控系统;控制端和服务器端的网络传输采用TCP协议,控制端和服务器端分别采用Android,Java实现。
关键字:Android智能手机,多媒体远程监控,Socket管理器,Java多媒体框架
中图分类号:
一.背景
远程监控是指本地计算机通过远程监控软件发送指令给远程计算机,从而控制远程的监控设备采集当地信息,并不断将信息返回给本地计算机的过程。
远程监控必须通过网络才能实现,位于本地的计算机是操纵指令的发出端,一般称为控制端或客户端,而非本地的计算机则通常叫做被控端或服务器端。因而现在的远程监控软件一般分为两部分:一部分是客户端程序(Client),另一部分是服务器端程序(Server),通常在使用前需要将客户端程序安装到控制端载体上,将服务器端程序安装在被控端载体上,通过客户端程序向服务器端程序发出访问信号,建立远程连接,然后通过这个远程连接双方传递信息,实现远程控制。
现今使用的远程控制软件大都基于以上原理。而本文将介绍一种以Android智能手机为控制端,以个人电脑为服务器端,同时将多媒体设备控制程序从服务器端程序分离出来形成独立程序的C/S+M(Media)架构的多媒体远程监控系统。
系统结构与实现
上文介绍了本文的背景,现在将从系统总体结构设计,服务器端设计,手机端设计,多媒体设备控制程序设计四个方面介绍一下本系统的结构与实现。下面先介绍一下系统总体结构设计。
1.系统总体结构设计
本系统采用的是一种在传统的C/S架构的基础上改进的C/S+M架构。Android智能手机为客户端(Client)即控制端,个人电脑为服务器端(Server);本系统的改进是将音视频设备程序从传统的服务器端程序分离出来独立为多媒体设备控制程序(Media)。这样改进的好处是增强了系统各模块的独立性,便于系统的移植和维护,同时也大大增加了代码的可重用性。下面先看一下本系统的总体架构图:
图2-1 系统总体架构图
如上图2-1所示,本系统分三个大模块,现在从总体上看个模块的运作,服务器端程序启动后,初始化服务器端程序,等待手机端访问。手机端程序启动后,向服务器端发出访问信号,服务器端收到信号核实信号后,双方建立连接。手机端向服务器端发出操作指令;服务器端收到指令后解析处理指令,然后将处理后的指令传给多媒体设备控制程序;多媒体设备控制程序根据收到的指令,初始化相关设备,执行相关操作指令,采集信息,然后将信息传给服务器端;服务器端将采集到的信息压缩处理发送给手机端;手机端将信息读取。从上面叙述中可大致看出本系统的结构。下面从每个模块分别介绍其结构与设计。
服务器端设计
服务器端程序将运行在个人电脑上,用Java实现。下面从服务器端程序的架构分析,各模块的功能描述,接口定义三方面具体介绍服务器端程序设计。然后重点介绍一下指令处理模块及其自定义的编解码协议。
现在先看一下服务器端程序框架:
图2-2 服务器端功能模块图
结合上图,在这逐项描述各个模块的功能:
(1)初始化模块:启动应用程序后第一个运行的模块。它负责初始化应用程序的运行状态,获取网络IP地址/端口,用户登入密码等。
(2)连接监听模块:程序初始化后,开始在指定端口进行TCP监听,等待远程连接。
(3)远程连接模块:负责进行实际的TCP连接和数据收发。当手机端发出访问信号,一旦服务器端核实接受,就分配新的Socket套接字完成TCP连接进行数据通信。
(4)指令处理模块:将接收到的操作指令,进行解析处理,分析出要操作的对象及对其相关操作。
(5)数据处理模块:负责将要传输的信息进行压缩并根据自定义的编解码协议封装处理,然后交给远程连接模块进行传输。
为了近一步理解各模块间的协作关系,下面描述一下服务器端程序主要功能模块问的接口定义:
模块名称
输入
输出
指令处理模块
数据流
操作的对象及对其相关操作
远程连接模块
数据流
数据流
数据处理模块
要传输的信息
经处理后可传输的数据流
表2-l 电脑端应用程序模块接口定义
介绍完各个模块的设计后,下面重点介绍一下指令处理模块及其自定义的编解码协议。
指令处理模块的主要功能是将接收到的操作指令,进行解析处理,分析出要操作的对象及对其相关操作。它是先将数据流转化成字符串,然后用indexOf()和substring()方法根据自定义的编解码协议,将字符串分割,提取字符串中的信息。现在先介绍一下自定义的编解码协议的主要内容。
本编解码协议
您可能关注的文档
最近下载
- Unit 6 Understanding ideas Longji Rice Terraces 课件-高中英语外研版(2019)必修第一册.pptx VIP
- 护理学导论(高职)教学教案.docx
- 2024年部编新改版语文六年级上册全册月考试题含答案(共4套).docx
- 饮用水和环境卫生公众健康宣教及风险沟通答案-2024年全国疾控系统“大学习”活动.docx VIP
- 新型冠状病毒、甲型和乙型流感病毒全预混冻干多重荧光PCR检测试剂盒及其检测方法发明专利.pdf VIP
- 基金会捐赠协议.doc VIP
- XX市智慧安居工程(一期)报警求助综合受理指挥分系详细设计方案.doc VIP
- 《乡土中国》 第11篇 《长老统治》.ppt
- [知识]职业生涯人物访谈(教师).pdf VIP
- 第六单元整本书阅读《西游记》课件 2024—2025学年统编版语文七年级上册.pptx VIP
文档评论(0)