
3.3 多媒体Java 框架层
Android应用程序调用驱动,其实是调用多媒体Java 框架层为应用程序所提供的硬件服务接口。该接口封装在Java框架层,以服务库的形式存在。因此,在多媒体Java框架层代码mediaRecorder.java中,需要加载名称为media_jni的动态链接库。
3.4 Android应用程序层监控软件实现
本系统利用MediaRecorder类实现视频录制,同时调用该类内置的H.264编码模块进行编码操作,然后通过Packetizer打包器类进行RTP打包,设置网络接口,经由SOCKET发送,PC机接收,并通过VLC播放器解码播放。
初始化Video时,需要对MediaRecorder进行相关的设置,具体代码如下:
mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA); //设置视频源为CAMERA
mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); //设置输出格式为3GP
mMediaRecorder.setVideoFrameRate(videoRate);
//设置每秒的帧数为24帧
mMediaRecorder.setVideoSize(videoWidth, videoHeight);
//设置视频大小为720*480
mMediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H.264); //设置视频编码方式为H.264
mMediaRecorder.setPreviewDisplay(mSurfaceHolder.getSurface()); //设置预览显示
mMediaRecorder.setMaxDuration(0); //最大期限
mMediaRecorder.setMaxFileSize(Integer.MAX_VALUE);
//文件大小
mMediaRecorder.setOutputFile(sender.getFileDescriptor());
//设置将H.264编码压缩的3GP码流通过LocalSocket发送出去
在使用RTP传输H.264的时候,设置H.264的解码参数SPS(Sequence Parameter Sets )和PPS(Picture Parameter Set)。以本系统Mini210s开发板为例,SPS为67,4D,40,1E,E9,81,68,7B,42,00,00,03,00,FA,00,00,2E,D5,1E,2C,5A,70;PPS为 68,CE,32,C8。
综上所述,Java应用程序层的start()方法可以通过 JNI 调用本地共享库MediaRecorder.cpp中的start();本地库通过代理对象跨进程调用到MediaPlayerService中的MediaRecorderClient。MediaRecorderClient中会创建出StagefrightRecorder,在StagefrightRecorder中完成视频录制、编码器设置任务,开启MediaWriter的start方法进行H.264编码。之后Stagefright即可使用Android封装的OpenMax接口,调用多媒体的H.264编码驱动,完成硬件编码操作。
4 实验结果
测试环境选择友善之臂的Mini210s开发板(操作系统:Android 2.3.1)作为服务视频采集端,PC机作为用户视频接收端。两种设备利用TP?LINK无线路由器通过WiFi建立连接。在该模式下,系统可清晰流畅的传送和播放720×480分辨率的视频,帧率可达30 f/s。
5 结 论
在ARM移动视频系统的分析研究的基础上,以高性能的S5PV210芯片开发板为硬件平台,编写了应用实验程序,实现了高清视频信号的采集、压缩编码、网络传输和上位机的流畅播放。文中的突出亮点在于综合了流行的Android操作系统、高性能的S5PV210芯片和热门的流媒体技术,详细分析了Android多媒体框架与底层驱动的接口关系,并设计编写了开发板软件和上位机高清视频监控软件。目前可实现720P,30帧的视频流播放。实验表明,系统运行可靠,实时性好。本方案可应用于各种视频监控、特别是移动视频监控领域等。
参考文献
[1] 李昂,宋海声,苏小芸.基于Android的视频监控系统设计与实现[J].计算机技术与应用,2012,38(7):138?139.
[2] 李琴,陈立定,任志刚.基于Android智能手机远程视频监控系统的设计[J].电视技术,2012,36(7):134?136.
[3] 朱小军,翟朝成,张志斌.基于Android手机的远程视频监控系统的设计与实现[J].自动化与仪器仪表,2013(2):149?151.
[4] 张雅楠,杨璐,郑丽敏,等.基于 Android 手机的远程视频监控系统的设计与开发[J].计算机应用,2013,33(z1):283?286.
[5] 魏崇毓,张菲菲.基于 Android 平台的视频监控系统设计[J].计算机工程,2012,38(14):214?216.
[6] 李红京.基于H.264视频压缩技术的网络视频传输系统设计[J].河北工业科技,2011,28(4):236?239.
(www.fabiaoba.com),是一个专门从事期刊推广期刊发表、投稿辅导、发表期刊的网站。
本站提供如何投稿辅导、发表期刊,寻求论文刊登合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级论文刊登/国家级论文刊登/
CSSCI核心/医学投稿辅导/职称投稿辅导。
投稿邮箱:fabiaoba365@126.com
在线咨询:
275774677、
1003180928
在线咨询:
610071587、
1003160816
联系电话:13775259981
主管单位:山东省教育厅 主办单位:山东省教委 国内刊号:CN 37-1025/G4 国际刊号:IS...
主管单位:湖北省国资委 主办单位:湖北省经济干部管理学院 出版地:湖北省武汉市 国...
主管单位:国家民族事务委员会 主办单位:西北民族大学 出版地:甘肃省兰州市 国际标...
期刊简介: 《种子科技》(月刊)创刊于1983年,曾用刊名:(种子通讯)是中国种子协...
期刊简介: 主管单位:吉林省社会保险事业管理局 主办单位:吉林省人力资源和社会保障...
期刊简介: 《高等工程教育研究》是我国第一份、也是唯一一份面向工程教育研究的全国...
近来发现有些作者论文投稿存在大量剽窃、抄袭行为,“发表吧”对此类存在大量剽窃、抄袭的论文已经停止编辑、推荐。同时我们也提醒您,当您向“发表吧”投稿时请您一定要保证论文的原创性、唯一性,这既是对您自己负责,更是对他人的尊敬。
此类投稿的论文如果发表之后,对您今后的人生和事业将造成很大的麻烦,后果不堪设想,请您一定要慎重,三思而后行。
如因版权问题引起争议或任何其他原因,“发表吧”不承担任何法律责任,侵权法律责任概由剽窃、抄袭者本人承担。