基于Android手机的音视频监控软件的设计与实现毕设论文.docx
- 文档编号:7616071
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:43
- 大小:1.44MB
基于Android手机的音视频监控软件的设计与实现毕设论文.docx
《基于Android手机的音视频监控软件的设计与实现毕设论文.docx》由会员分享,可在线阅读,更多相关《基于Android手机的音视频监控软件的设计与实现毕设论文.docx(43页珍藏版)》请在冰豆网上搜索。
基于Android手机的音视频监控软件的设计与实现毕设论文
基于Android手机的音视频监控软件的设计与实现
学院
计算机学院
专业
计算机科学与技术(物联网工程)
摘要
社会在发展,科技在发展,安全防工作已经不仅仅是人类的工作。
人类利用自己的聪明才智创造出各种协助安全防工作的物品。
其中,视频监控系统已是安防工作里不可缺少的一部分。
现在,社会治安形势依然严峻,随处可见监控器的身影,如马路、学校等公共场所。
然而,有些场合如私家车,住宅没有安装监控,而有时候又需要监控,此时,我们可以利用安卓手机来达到目的。
如今安卓系统的手机越来越普遍且价格越来越低,在WiFi联网的条件下,可以在安卓手机上设计并实现简单的音视频软件监控软件,从而达到监控的目的。
本次毕业设计是基于安卓手机的音视频监控软件的设计和实现。
软件实现的主要功能包括:
采用安卓多媒体技术实现语音与图像录制功能,语音与图像播放功能,播放控制拥有播放、暂停、快进、快退,可设计成定时录制功能,屏幕大小可以缩放,拖动进度条可以显示当前播放的时间和最大播放时间,最后利用UDP/IP编程实现对音频以与图像传输。
本软件设计在安卓平台上进行的。
操作系统、用户界面、应用程序是安卓系统的主要组成部分,其具备一些优良的特点即应用程序无界限、应用程序平等、开放性以与应用程序开发快速方便。
安卓开发基于java技术,而Java语言为一种全功能平台编程语言,如今深受大家欢迎。
安卓开发环境以AndroidSDK和Eclipse为核心。
现在最流行的安卓开发模式是以java上主流的开发工具Eclipse作为基础通过集成ADT插件,来更好的支持安卓程序开发和调试工作。
关键词:
音视频监控软件;安卓;java
Abstract
Thesocietyisdeveloping,thescienceandtechnologyisdeveloping,worksafetyaremuchmorethanhuman.Peopleusetheirwisdomtocreatetheitemsofvariouskindsofassistsecuritywork.Amongthem,thevideomonitoringsystemhasbecomeanindispensablepartofsecuritywork.Now,thesocialsecuritysituationisstillgrim,everywherethefigureofthemonitor,suchastheroad,schoolandotherpublicplaces.However,therearesomeoccasionssuchasprivatecar,thehouseisnotinstalledtomonitor,andsometimesneedtomonitor,atthispoint,wecanusetheandroidmobilephonetoachieveagoal.NowAndroidmobilephonesmoreandmorepopularandmoreandmorelowprice,undertheconditionofWiFinetwork,canbedesignedandimplementedontheandroidmobilephonesimpleaudioandvideosoftwaremonitoringsoftware,soastoachievethepurposeofmonitoring.Thisgraduationdesignisbasedontheandroidmobilephoneaudioandvideomonitoringsoftwaredesignandimplementation.Softwareimplementationofmainfunctionsinclude:
voiceandimagerecordingfunctionisrealizedbyusingtheandroidmultimediatechnology,voiceandimagedisplayfunctions,Playbackcontrolwithplay,pause,fastforward,rewind,designatimerrecordingfunction,thescreensizecanzoom,dragtheprogresscandisplaythecurrentplaybacktimeandmaximumplayingtime.Finally,theUDP/IPprogrammingvoiceandimagetransmission.
Thesoftwaredesignintheandroidplatform.Theandroidsystemismainlycomposedoftheoperatingsystem,userinterfaceandapplications.Itsopenness,equalityofapplication,theapplicationwithoutboundaries,thecharacteristicsofquickandconvenientapplicationdevelopment.AndroiddevelopmentbasedonJavatechnology,andtheJavalanguageafullyfunctionalplatformprogramminglanguageandpopularwithpeople.TheAndroiddevelopmentenvironmentwiththeAndroidSDKandEclipseasthecore.NowthemostpopularandroiddevelopmentmodeisbasedontheEclipsedevelopmenttoolsasJavaonthemainstreambyintegratingtheADTplugin,tobettersupporttheandroidprogramdevelopmentanddebugging.
Keywords:
audioandvideomonitoringsoftware;android;Java
1绪论
无论什么时代,治安问题都是人们不可逃避的问题,是人们关注的问题。
而随着时代的发展,治安已经不仅仅只靠人的力量,科技的作用日益凸显,监控器成为协助人类治安管理必不可少的一件物品。
现在,社会治安形势依然严峻,随处可见监控器的身影,如马路、学校、机场等公共场所。
但是随着社会经济的发展,人们经济以与生活水平的提高,安全防意识的逐渐增强,对家里以与私家车的监控的需求也迫切起来。
此时,由于安卓手机的快速发展其价位越来越低廉,普遍受到人们的青睐。
手机的功能也不仅仅只是接受短信以与打那么简单,如手机定位,网络社交、娱乐、导航等功能。
因此,在需要临时监控的情况下,基于安卓系统我们可以安装简单的音视频监控软件,从而达到监控作用。
倘若发生不法事件,通过查看监控视就能帮助警方破案,尽快找到真凶。
同时通过无线传输,将监控音视频资料传输到工作人员的手机上,方便而迅速,使办案人员可以尽快了解案件情况,增快破案进度。
可以说基于安卓手机的音视频监控软件对于我们的生活将起到非常重要的作用。
1.1开发背景与目的
安全防工作在任何时候都不容疏忽,安防工作做不好,不仅可能影响到财产安全,更甚者会影响到我们的生命安全,因此防于未然是非常重要的。
不过人们也深知安防的重要性,于是发明了一系列工具协助人类做好安防工作。
其中,视频监控在安全方向有着非常重要的地位,它可以直观的采集信息,清楚真实还原发生过的场景,因为这样而应用于交通、民用安全等各个领域的情况非常普遍。
对于普通家庭来说然而传统的视频监控系统存在一定的缺陷,安装监控器会破坏家庭装修,且个人空间被侵犯的感觉,再加上安装时间长,就普通家庭而言存在很多不便。
再加上目标大,很容易让入侵者发现然后躲过监控,从而达不到监控目的。
随着网络、计算机、手机开发技术发展,普通用户即使在私家车或住宅没有安装监控器,但需要临时监控,我们可以在安卓手机上安装音视频监控软件。
在手机安装监控软件,价格低,而且可以放在隐蔽的角落不被发现,从而可以更好的监控。
1.2开发工具简介
此次软件设计采用的开发环境为安卓应用开发环境。
对于某种开发平台或语言而言,其是否成功要看他是否可以提供优秀、高级、易用的开发环境。
现在流行的安卓应用和开发与其开发体系是密不可分的。
操作平台
安卓开发体系支持windows、MacOsX和Linux操作系统作为开发平台,从而为程序员和开发组织工作者提供了非常高的灵活性,让他们可以按照自己喜欢的工作方式去工作。
编程语言和平台
安卓开发基于java语言,而java是目前最流行的全功能跨平台编程语言,经过多年的发展,已经产生了众多的程序员,并且还保留了大量丰富的支持资源和文件。
这为保证开发具有普遍性的特点提供重要基础。
集成开发工具
以开发工具Eclipse为基础是目前最流行的安卓开发模式,通过集成ADT插件来更好的支持安卓程序开发和调试工作。
过去手机应用经常会有一些自己特别的地方以与晦涩难懂的地方,而这个集成的开发工具和流程可以屏蔽这些问题。
1.3相关技术知识
本次软件开发所涉与相关技术知识主要包含开发语言的语言、数据库技术、视频播放技术、视频录制技术、UDP/IP技术五个方面。
1.3.1开发语言
安卓操作系统是在Linux基础上开发的一个移动的操作系统,然而在Linux上编程的语言是C/C++,那么在安卓上使用的编程语言主要有两种方式:
一是有基于ADK的Java编程,二是基于NDK的C编程。
本次毕设软件设计是在安卓应用上的开发,几乎全都采取Java语言开发。
1.3.2开发数据库
在数据存储和处理这两个部分,安卓系统为开发者提供了一个集成了轻型的关系型数据库系统—sqlite3。
由于SQLite是最新版本与主流版本是3.7,所以通常称为SQLite3.由于他的库和执行文件非常精巧,使用C语言编写,运行资源占用高效,因此他可以在任意的软硬件执行和安装。
它严格遵守ACID应用规,并且为小型数据库管理系统,那么ACID又什么是呢?
ACID即为(atomicityconsistencyisolationdurability)原子性、一致性、独立性、持久性。
而这四个特性又分别具有其意义如下:
原子性:
一个事务是可以包含很多的操作和步骤的,在所有事务里,他不会在某个中间环节结束。
倘若一个事务在正在执行的过程中出现了不对的地方,他便会回到最初的状态。
一致性:
在事务执行后,在这个系统的信息一致的。
隔离性:
两个事务的执行是互不干扰的。
持久性:
在事务执行结束之后,对数据库做的一些更新和改变可以长期地保存在数据库当中,除此之外,而且还是完整无缺的。
SQLite的设计目标是在嵌入式系统实现SQL语言、支持ACID、成为多平台的关系型数据库。
它支持SQL语言并且只需要较少的存就可以得到不错的性能。
他基于SQLite语言,但又和普通的数据不同,SQLite没有独立的服务器进程他直接访问磁盘文件,在单一的数据库文件中实现了多个数据库、视图、索引和触发器。
到目前为止,他是最好的选择之一在类似的产品中。
1.3.3视频播放技术
在安卓系统中,我们最常用的也是最简单的视频技术就是Mediaplayer接口,通过这个接口就可以去播放用户指定的音频以与视频文件了。
Mediaplayer功能强大,此外,VidioView也能用来播放视频,VidioView类是对Mediaplayer类的封装,他能从不同来源读取图像,计算并且维护视频的画面尺度以使其适应无论是哪一个布局管理器,并给予如缩放、着色等显示选项。
虽然VidioView比Mediaplayer简单易用,但是从应用程序开发角度讲,他的定制性差,明显不敌Mediaplayer。
其实,Mediaplayer播放音频也是较为简单的,只是播放视频的时候要协同SurfaceView工作。
1.3.4视频录制技术
在安卓系统中,我们通过调用MediaRcorder类来录制视频。
安卓的MediaRcorder有两个记录功能,他们就是:
Audio以与video。
在安卓界面Music以与Video是调用MediaRecorder来实现的。
MediaRecorder在底层是在OpenCore(PacketVideo)库的基础上实现的,如果想建立一个MediaRecorder程序,上层就应该要包括进程间的通讯等部分的容,而要实现进程之间通讯,就不能忽视安卓基本库里面的Binder机制,他是进程间通讯的基础。
一个MediaRecorder在运行的状态时,能大体分为Client以与Server这两个局部,它们运行在两个不一样的进程当中,互相之间通过运用Binder机制去实现IPC通讯。
1.3.5UDP/IP协议
安卓作为Linux和Java技术为基础的系统平台,对网络的支持力强大,在SDK中,完全实现了Java的相关网络应用类,其中,包括了可以基于socket技术的网络应用。
Socket是一种抽象层对象,根据不同底层协议有很多不同类型的socket。
流套接字使用TCP作为连接协议,他能给予一个值得信任的字节流传输,数据报套接字则使用UDP协议,可以给予一个尽力而为的数据报传输服务。
UDP协议为userDategramProtocol的英文缩写,翻译过来也就是用户数据包协议,为OSI也就是开放式系统互联参考模型中一种没有连接的传输层协议,而且位置处在IP协议上层。
在不以按顺序到达为条件的传输中主要应用的是UDP协议,在应用层实现分组传输次序的检验和排列顺序。
由于其不给予数据包分组、组装以与不可以对数据包进行排列顺序序的不足,换句话说,报文虽然被传送了,但是我们不知道所传送的报文是不是真的准确的到了目的地。
所以,其传送服务简单且不可靠,也正因为这样,所以使用UDP协议其传输速率以与效率较高。
它会把网络数据流量压缩成为数据包形式,而典型的数据包其实就是二进制的传输单位。
UDP为那些必须要在计算机之间传送数据的应用提供支撑,这些应用主要有包含了客户/服务器模式的网络应用、网络视频会议系统等。
1.4可行性分析
本段将对该软件的实际可行性做具体分析,即对软件的主要容以与使用条件做出相应的分析。
比如软件的安装条件,使用环境、开发环境、资金投入以与软件从技术经济、操作方面进行研究和分析比较。
调查研究所设计基于安卓的音视频监控软件是否有实用性,是否有存在的价值,该设计完成后能否给人们带来方便,能否让人们用于安全防工作中,达到监控的目的。
1.4.1技术可行性
本设计是基于安卓手机的软件设计,在智能手机终端这一方面,安卓操作系统在最近几年里备受关注,因为他的系统的开放性以与无偿性,使开发人员能随时地取到源码,这对于运行商以与开发人员来说相当重要。
除此之外又有国际一线手机开发商的参与,使安卓操作系统发展更为迅速。
本次设计主要经过调用安卓开发环境下MediaRecorder()类进行视频监控录制,再经过调用MediaPlayer()类来完成视频播放工作。
视频播放期间同时完成播放、暂停、快进、快退、屏幕缩放等功能,其所录制的监控文件采用MPEG4格式。
再根据视频传输特点即传输时延小、传输流量大、一定程度上可以允许传输出现错误以与数据丢失,而UDP协议又具有实时性、效率高的特点,所以我们能通过运用UDP/IP协议来达到监控所录制视频传输的目的。
1.4.2经济可行性
视频监控器似乎已经变为我们生活的一部分,不管是走在道路,抑或是在一些商场中,你总会看到他的踪迹。
如果在家安装一个视频监控器,你需要准备的物品有摄像机以与摄像机电源、摄像机路数、采集卡、硬盘、显示设备且还需要布线。
经过查阅资料以与询问起码需要800多。
但是对于普通的家庭用户来说,并不需要每天随时的监控,在家里安装监控器不仅破坏家庭环境,而且安装时间长,花费高。
然而开源性的安卓平台打破了之前的操作系统要付出高额费用的模式,这样,就让智能手机的成本降低了很多。
所以安卓环境移动的智能手机如今价格低廉,你只要花费200左右就可以买到一部安卓智能手机。
除此之外你还需要一SD卡存储录制的视频,经过调查只需要30元左右可以买到一16G的SD卡,这样就可以满足监控需要了。
如果想长期保存监控视频可以将监控录制的视频保存到电脑里,不过对于家庭监控来说,如果当时并无异样,当天监控视频也就无需保存了。
再加上其具有开放源代码的特性,这就让手机具有更多个性化发展。
在手机上安装一个视频监控软件就能达到监控特殊环境的目的,协助人们做好安全防工作。
所以从经济可行性方面来说,本设计是完全可行的。
1.4.3操作可行性
本软件设计界面简单简洁,操作过程直观、自然、简单,只要通过触摸点击即可实现其功能,不需要安装其他的辅助设备,可以给用户良好的用户体验。
将安有音视频监控软件的安卓手机放置于需要监控的空间,选择好监控角度,按照软件界面提示即可按照自己需求设置录像或定时录像,并且还能事后通过无线传输得到我们所需要的监控录像。
所以,本软件设计在操作上是可行的。
2需求分析
2.1开发背景需求分析
视频监控系统从产生发展至如今,实际上其时间并不长,差不多也就只有二十几年。
其发展可以分为三个阶段:
模拟视频监控系统、半数字视频监控系统、全数字网络视频监控系统[1]。
模拟视频监控系统:
这个系统依赖摄像机电缆、录像器和监视器等专用的设备,有多少个摄像机就会有多少个监视器,少技术含量。
在视频监控技术的这一领域里,存在一个”一对一“的时间段,这个时间段就是闭路监控系统成长的最初级阶段。
半数字视频监控系统:
同样也叫做DVR监控系统,它完全跳出了第一阶段监控系统的框架而特立独行起来。
他把居于主控端的全部设备集成为一件设备,并且以高性能的多媒体设备做为核心设备,结构则选择模块化式。
并且他有非常友好的人机交互界面以与网络的多级分控作用。
全数字网络视频监控系统:
他主要是由网络摄像机以与其监控管理平台一起来构成的。
网络摄像机他有自己特立的IP地址以与嵌入式操作系统,其很好地完成了真正的三网合一,三网指的是视频、音频、数据。
全数字视频监控使跨区域监控成为可能,且图像非常清晰且可靠稳定。
那么从图像存储检索方面来说的话,他又具有方便、容易、安全、能异地存储和多机备份的良好的特点[1]。
视频监控系统正迈向前端一体化、视频数字化、监控网络化、系统集成化的道路并前进着[2]。
安防工作不是只有在公共场合才有,现在人们生活节拍的日益加快,其个人对安全感的需求越来越强,所以人们对家庭监控以与安防的要求也变得日益成熟。
手机视频监控系统操作不仅便捷,易于随身携带以与方便隐藏监控且价格低廉。
可以说家庭监控市场的发展潜力是相当大的,特别3G技术的日益成熟的发展,对于普通家庭用户来说,手机音视频监控可以满足人们安全防的需要。
2.2功能需求分析
本次毕设是在安卓手机上实现音视频监控录制以与音视频传输的功能。
所以首先该软件需要实现录制功能,并且将所录制的视频存储到存储器中。
作为监控器录制了视频,自然要呈现出来,因此要实现音视频的播放。
为了将视频更好呈现出来,播放控制必须设有一些基础的功能也就是播放、暂停、快进、快退这些功能。
为了给用户在视觉上有更多的,丰富多彩的体验,设置屏幕背景可以改变并且其尺度能缩放。
设置一进度条可显示当时的播放时间以与最大播放时间,这对于安全防工作是非常主要的。
最后,通过UDP/IP技术完成对监控所录制的音视频的传输功能。
以一个手机作为服务端即数据导出端,另一端作为客户端即数据接收端,然后使用UDP协议实现对视频的传输。
2.3技术性能需求分析
本次毕业设计实现音视频监控功能,其是在基于安卓开发环境下开发,使用MediaRecord类,并通过调用安卓手机的摄像头实现摄像的功能,实现音视频的监控。
手机要实现音视频监控的功能,其手机摄像分辨率在480P就可以达到标清的标准,鉴于家庭面积的以与私家车大小所以可以实现基本监控的功能。
视频录制帧率为15每秒,可以使播放的监控视频流畅。
将录制好的视频通过UDP/IP协议,可以实现对录制好的视频无线传输。
根据查阅资料,目前WiFi最大网络吞吐量理论值可以达到802.11ax,1Gbit/s,所以,在WiFi联网条件下,传输一个监控视频所需的时间还是可观的。
3概要设计
3.1系统结构设计
本次毕设所设计软件采用的是MVC构建模式,这是一种软件设计的典。
ModelViewController,也就是模型、视图、控制器的缩写,他组织代码的方法为业务逻辑、数据、界面显示分离这三种。
把业务逻辑汇聚同一部件中,当要改进以与自定义定制界面与和用户交互的时候,我们没有必要再次编写业务逻辑。
MVC在一个逻辑的图形化用户界面的结构里,MVC主要用来映射输入、输出功能以与处理,MVC也是因此发展起来的。
MVC把应用程序的输入、处理和输出功能强行分散,因此就得到三个核心部件也就是模型、视图、控制器。
模型是处理应用程序数据逻辑的地方,一般是用来在数据库中存取以与读取数据;视图是用来处理数据显示的部分,其一般根据模型的数据来创造;控制器处理用户交互部分,一般用来从在视图中读取出数据,控制用户输入,并且给模型发送数据。
3.2系统功能模块设计
本设计实现主要功能模块可分为四个模块,分别为音视频录制模块、文件查找监控视频播放模块、无线传输模块。
其功能模块图如图3.1所示:
图3.1系统主要功能结构图
3.2.1音视频监控录制模块
音视频模块除了包含音视频录制外,还兼备定时录制的功能,你可以设定任一时间让其自动开始录制或是设置一个时间段开始录制,其具体功能流程图如图3.2所示:
图3.2音视频监控录制流程图
3.2.2文件查找模块
录制得到相应的MP4文件,通过在“我的文件”里查找,浏览文件从SD卡文件中找到Recvideo文件,从而找到所监控的音视频文件。
具体流程如图3.3:
图3.3文件查找功能流程图
3.2.3监控音视频播放模块
视频播放模块也就是实现监控软件对所录制的视频的播放,且播放控制可以实现播放、暂停、快退、快进的工作。
视频播放的界面,拖动进度条可以看到当前播放时间以与播放最大时间,并且可以对屏幕进行缩放,具体功能流程图如图3.4所示:
图3.4播放模块流程图
3.2.4数据传输模块
无线传输模块实现在基于安卓手机所监控音视频与手机之间的传输,服务端手机向客户端手机申请导出数据,等待客户端响应,直到传输完毕,则传输结束具体情况如图3.5所示:
图3.5数据传输流程
4详细设计
一个软件的要成功设计去完成他所要求的功能,是多个模块共同协作的结果,那么下面介绍本次软件设计的各个模块的详细设计。
4.1音视频监控录制模块
本次软件设计实现音视频采集录制功能的需要使用MediaRecor
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Android 手机 视频 监控 软件 设计 实现 论文