位置: 编程技术 - 正文
推荐整理分享Android使用FFmpeg实现定时录像(Android使用领域是什么),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:Android使用recycleview实现网格布局,Android使用领域,Android使用FFmpeg,Android使用FFmpeg压缩函数,Android使用手册 - Live2DViewerEX文档,Android使用FFmpeg,Android使用FFmpeg,android使用ffmpeg插件,内容如对您有帮助,希望把文章链接给更多的朋友!
1、需求分析
在Android下实现定时的录像,首先可以在网络摄像机设置页面实现,在某个时刻录像,但是这种情况福想的视频不是保持在摄像机本地就是上传到摄像机厂家提供的服务器上并不是适应所有的需求。
其次,可以在Android下借助FFmpeg实现保存摄像机的视频流,对于定时功能可以在Android程序中实现。
2、具体实现
(1)定时
定时录像则需要在每一天的某个时刻或者某些时刻进行录像,这样可一借助Android的闹钟机制实现。
Android的闹钟实现上基于AlarmManager这个类的,其中有两个主要的方法:
AlarmManager manager = (AlarmManager)getSystemService(ALARM_SERVICE);
第一个方法是简单的注册一个闹铃,第二个方法是设置重复闹铃,就是隔一段时间响一次。
这里使用第二种方法,其具体实现为:
解释下setRepeat的第一个参数:AlarmManager.RTC,硬件闹钟,不唤醒手机(也可能是其它设备)休眠;当手机休眠时不发射闹钟。AlarmManager.RTC_WAKEUP,硬件闹钟,当闹钟发躰时唤醒手机休眠;AlarmManager.ELAPSED_REALTIME,真实时间流逝闹钟,不唤醒手机休眠;当手机休眠时不发射闹钟。AlarmManager.ELAPSED_REALTIME_WAKEUP,真实时间流逝闹钟,当闹钟发躰时唤醒手机休眠;RTC闹钟和ELAPSED_REALTIME最大的差别就是前者可以通过修改手机时间触发闹钟事件,后者要通过真实时间的流逝,即使在休眠状态,时间也会被计算
闹铃注册完了之后发送广播,我们还要接受广播:
还需要在AndroidManifest.xml注册:android:process=":remote",代表在应用程序里,当需要该service时,会自动创建新的进程。而如果是android:process="remote",没有“:”分号的,则创建全局进程,不同的应用程序共享该进程。(2)录像
录像的实现是在android下调用FFmpeg执行命令行命令实现的,思路是:
定时启动后,每隔一段时间调用脚本执行录像命令,将录像保存到SD卡下,但是由于SD卡容量有限,所以当保存的数目到达一定量时就删除文件,录像的命名是以摄像机名字加上日期而成的。脚本如下:
3、截图
4、源码下载:
Android运行时候端口被占用 错误提醒:Theconnectiontoadbisdown,andasevereerrorhasoccured.情况一:尝试以下步骤:运行关闭的Eclipse转到在命令提示符在AndroidSDK平台工具目录键入adbkill-server(E
Android四大组件之~~ContentProvider 声明:转载请注明出处:
如何自定义ActionProvider 自定义一个MyActionProvider类,继承v4包下的ActionProvider(使用兼容Theme)重写hasSubMenu(),返回true重写onPrepareSubMenu()方法,设置submenu的title、icon、点击事件pa
标签: Android使用领域是什么
本文链接地址:https://www.jiuchutong.com/biancheng/379710.html 转载请保留说明!上一篇:【Android】保存Fragment切换状态 FragmentPagerAdapter(android保存文件到本地)
下一篇:Android运行时候端口被占用(android在手机上运行)
友情链接: 武汉网站建设