摘 要: 针对现有网络视频监控的局限性和相应Android软件开发的需求,给出一种基于Samsung S5PV210的ARM移动视频系统的实现方案。采用UML语言重点剖析并展示了Android多媒体框架与底层Linux驱动的关系。在此基础上,设计了系统总体架构和视频监控软件,实现了高清视频的采集和流畅地播放。应用试验表明,系统运行稳定、实时性好,具有很强的实用价值。
关键词: Android; Mini210s; 移动视频系统; 多媒体框架
中图分类号: TN919?34 文献标识码: A 文章编号: 1004?373X(2014)18?0009?02
Research on ARM mobile video system
LI Yu?cheng, SHI Wei?lin
(Automation Department, North China University of Technology, Beijing 100144, China)
Abstract: Aiming at the limitation of existing network video monitoring and the corresponding demand of Android software development, a specific implementation scheme of ARM mobile video system based on Samsung s5pv210 is presented in this paper. The relationship between Android multimedia framework and the underlying Linux driver is analyzed emphatically with UML language. On this basis, the system overall architecture and video surveillance software were designed. The HD video acquisition and smooth playback were realized. The experiment results showed that the system works stable, and has good real?time performance and high practicability.
Keywords: Android; mini210s; mobile video system; multimedia framework
0 引 言
移动视频监控作为一种关键技术被广泛的应用于各个领域和各种公共场所[1]。传统的视频监控系统需要安装网线,网络摄像头的安置地点不可移动,且操作系统以Linux开发为主。不能满足用户日益增长的多元化需求。目前Android的应用已经进入人类日常生活的密切领域,其优势完全打破了Linux仅适于工业场合应用的局限。本课题选取以Samsung S5PV210为核心的开发板,在Android系统环境下,进行视频采集、H.264编码、无线网络传输;上位机在Android系统下完成视频的接收、解码和播放。本文重点详述了Android多媒体框架各个层次与底层驱动关系,给出了高清视频监控[2]系统的开发实现过程。
1 系统总体设计
借鉴传统的C/S[3]设计模式,设计该ARM移动视频监控系统架构。
系统基于S5PV210为核心的开发板,在开发板上集成了视频采集模块、编码压缩模块以及视频传输模块。并有效结合了嵌入式技术和流媒体技术,将采集端和服务端所有工作都集中在ARM开发板上,然后在客户端,论文格式可以通过上位机电脑或者Android手机播放实时视频来进行相关的视频监控。
2 系统软件实现
如图1所示,系统软件分为两大部分。第一部分运行在ARM开发板上。首先通过板上自带的CMOS摄像头采集视频数据[4?5],进行H.264[6]编码压缩,然后对数据流进行RTP打包,通过网络将视频数据流发送出去;第二部分运行在上位机上,接收开发板发送过来的视频数据,用户根据需求解压缩播放显示,并存储视频。
3 Android多媒体框架与底层驱动的结合
本文重点研究MediaRecorder类的工作过程,详尽分析了Android多媒体框架与底层编码驱动的接口关系。然后,编写了相应的视频监控程序,通过实验来验证本文设计内容的正确性。
图1 系统软件框图
3.1 通过Android本地媒体库链接底层驱动
Java应用层中的MediaRecorder类对应于本地媒体库libmedia.so。MediaRecorder类利用start()方法开启视频录制、编码流程。然后,依次调用了Mediarecorder.cpp中start(),以及StagefrightRecorder中的start()方法。
3.2 Java本地调用部分
Android应用程序访问Android多媒体底层库需借助Java本地调用部分(JNI),当调用多媒体Java框架层mediaRecorder.java中的start()本地方法,实际上是调用(void *)android_media_MediaRecorder_start()。
(www.fabiaoba.com),是一个专门从事期刊推广期刊发表、投稿辅导、发表期刊的网站。
本站提供如何投稿辅导、发表期刊,寻求论文刊登合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级论文刊登/国家级论文刊登/
CSSCI核心/医学投稿辅导/职称投稿辅导。
投稿邮箱:fabiaoba365@126.com
在线咨询:
275774677、
1003180928
在线咨询:
610071587、
1003160816
联系电话:18796993035
期刊简介: 《文化产业》杂志以关注文化、关注产业为创刊宗旨,坚持用财经理性融合文...
主管单位:中华全国总工会 主办单位:中国工人报刊协会 出版地:北京 国际标准刊号:I...
主管单位:山西出版集团 主办单位:山西出版集团 出版地:山西省太原市 国际标准刊号...
主管单位:集美大学 主办单位:集美大学 国内统一刊号:35-1189/G8 国际标准刊号:100...
主管单位:湖北省教育厅 主办单位:湖北第二师范学院 出版地:湖北省武汉市 国际标准...
期刊介绍: 《吉林广播电视大学学报》是由吉林省教育厅主管、吉林广播电视大学主办的...
近来发现有些作者论文投稿存在大量剽窃、抄袭行为,“发表吧”对此类存在大量剽窃、抄袭的论文已经停止编辑、推荐。同时我们也提醒您,当您向“发表吧”投稿时请您一定要保证论文的原创性、唯一性,这既是对您自己负责,更是对他人的尊敬。
此类投稿的论文如果发表之后,对您今后的人生和事业将造成很大的麻烦,后果不堪设想,请您一定要慎重,三思而后行。
如因版权问题引起争议或任何其他原因,“发表吧”不承担任何法律责任,侵权法律责任概由剽窃、抄袭者本人承担。