基于安卓平台的本地录像与同步推送的方法及执法记录仪技术

技术编号:14762362 阅读:107 留言:0更新日期:2017-03-03 16:21
本发明专利技术公开了一种基于安卓平台的本地录像与同步推送的方法及执法记录仪,采用在应用层直接获取麦克风采集输出的原始音频数据和摄像头采集输出的原始视频数据,自行进行预编译、编码和封装处理,由此可以规避麦克风在启用录像功能时因被MediaRecoder应用所独占,而导致其他应用获取不到音频信号的问题。在启用录像功能时,本发明专利技术通过自行获取原始音视频数据,并利用自行创建的音视频预处理模块、音视频编码器以及音视频分流器对获取到的音频数据和视频数据进行预编译、编码和分流处理,从而可以生成两路完全同步的音视频数据流,一路用于远程的实时传送,另一路用于本地保存,由此解决了本地录像与音视频流同步推送的问题。

【技术实现步骤摘要】

本专利技术属于警用执法设备
,具体地说,是针对基于Android平台开发的执法记录仪提出的一种录像本地保存与远程同步推送的实现方法。
技术介绍
执法记录仪又称警用执法记录仪或现场执法记录仪,集数码摄像、数码照相、对讲送话器功能于一身,能够在执法过程中进行动态、静态的现场情况数字化记录,便于公安干警在各种环境中执法使用。近年来,执法记录仪随着一些社会事件的发生而被越来越多的公安干警所使用。现有的执法记录仪在对执法现场进行录音、录像时,通过麦克风和摄像头采集到的音频数据和视频数据有三种处理方式:其一,先将现场采集到的音视频数据保存在本地,即保存在执法记录仪中,等回到单位后再同步到云端进行备份;其二,将现场采集到的音视频数据实时上传到指挥中心,使指挥中心可以同步观看到现场情况;其三,将现场采集到的音视频数据实时上传到指挥中心,指挥中心在同步观看现场情况的同时,利用NVR或者DVR录像机对接收到的音视频数据进行备份。也就是说,现有的执法记录仪要么将采集到的音视频数据保存在本地,要么直接推送到远程的指挥中心(本地不保存),无法实现本地保存与远程推送的同步进行。究其原因,是因为现有的执法记录仪基本上都是基于安卓Android平台开发的。在Android系统中,麦克风在同一时刻只能被Android系统的一个应用所占用,当使用MediaRecoder应用进行录像时,MediaRecoder应用会独占麦克风,并将麦克风采集到的音频数据进行本地保存。此时,由于麦克风已被MediaRecoder应用所占用,因此其他的应用将无法使用麦克风获取其输出的音频数据,因而也就无法将音频数据推送到远程的指挥中心,实现本地保存与远程推送同步进行的功能。
技术实现思路
本专利技术基于现有执法记录仪所存在的上述问题,提出了一种基于安卓平台的录像本地保存与远程同步推送的实现方法,规避了Android平台上麦克风的独占问题。为解决上述技术问题,本专利技术采用以下技术方案予以实现:一方面,本专利技术提出了一种基于安卓平台的本地录像与同步推送的方法,在启用录像功能时,在Android系统的应用层直接获取摄像头输出的原始视频数据和麦克风输出的原始音频数据;创建视频预处理模块和音频预处理模块,分别对获取到的所述原始视频数据和原始音频数据统一进行预编译;创建视频编码器和音频编码器,分别对预编译后的视频数据和音频数据进行编码;创建视频分流器和音频分流器,分别将编码后的视频数据和音频数据分成两路,将其中一路编码后的视频数据和其中一路编码后的音频数据传送至RTP通信模块进行打包封装,并向远程实时推送;将另外一路编码后的视频数据和另外一路编码后的音频数据发送至媒体混合器MediaMuxer进行音视频混合处理后,进行本地保存。优选的,所述原始视频数据可以通过摄像头的Preview接口回调获取;所述原始音频数据可以通过Android系统的AudioRecoder接口获取。由于音视频数据在分发前的预编译需要统一,如果按照Android系统常规的处理方式在native层做视频数据的预编译,那么在应用层还需做RTP前的预编译,导致数据处理不统一、繁琐。为了解决此问题,本专利技术在Android系统的应用层创建所述的视频预处理模块和所述的音频预处理模块,在Android系统的应用层完成对所述原始视频数据和原始音频数据的预编译,以统一数据来源,便于数据的统一处理。优选的,本专利技术优选在Android系统的应用层利用标准API的MediaCodec编码接口创建所述的视频编码器和音频编码器,在Android系统的应用层完成对所述预编译后的视频数据和音频数据的编码处理。优选的,本专利技术优选在Android系统的应用层创建所述的视频分流器和音频分流器,分别对编码后的视频数据和音频数据进行拷贝,以形成两路编码后的视频数据和两路编码后的音频数据,并进行分发。另一方面,本专利技术基于上述本地录像与同步推送的方法,还提出了一种执法记录仪,其系统软件基于Android平台开发设计,包括摄像头、麦克风、视频数据采集模块、音频数据采集模块、视频预处理模块、音频预处理模块、视频编码器、音频编码器、视频分流器、音频分流器、RTP通信模块和媒体混合器MediaMuxer;所述视频数据采集模块创建于Android系统的应用层,在启用录像功能时,采集所述摄像头生成的原始视频数据;所述音频数据采集模块创建于Android系统的应用层,在启用录像功能时,采集所述麦克风生成的原始音频数据;所述视频预处理模块对所述视频数据采集模块采集到的原始视频数据进行预编译;所述音频预处理模块对所述音频数据采集模块采集到的原始音频数据进行预编译;所述视频编码器对所述视频预处理模块编译输出的视频数据进行编码;所述音频编码器对所述音频预处理模块编译输出的音频数据进行编码;所述视频分流器将所述视频编码器编码输出的视频数据分成两路,一路发送至RTP通信模块,另一路发送至媒体混合器MediaMuxer;所述音频分流器将所述音频编码器编码输出的音频数据分成两路,一路发送至RTP通信模块,另一路发送至媒体混合器MediaMuxer;所述RTP通信模块将接收到的视频数据和音频数据进行打包封装,并向远程的指挥中心实时推送;所述媒体混合器MediaMuxer将接收到的视频数据和音频数据进行音视频混合处理,并保存在所述执法记录仪内部的存储器中。优选的,所述视频数据采集模块优选通过摄像头的Preview接口回调获取所述的原始视频数据;所述音频数据采集模块优选通过Android系统的AudioRecoder接口获取所述麦克风输出的原始音频数据。为了避免视频数据在不同层进行两次编译处理,本专利技术在Android系统的应用层创建所述的视频预处理模块和所述的音频预处理模块,在Android系统的应用层完成对所述原始视频数据和原始音频数据的预编译,以统一数据来源,便于数据的统一处理。优选的,所述视频编码器和音频编码器可以在Android系统的应用层利用标准API的MediaCodec编码接口创建,利用所述视频编码器和音频编码器在Android系统的应用层完成对预编译后的视频数据和音频数据的编码处理。优选的,所述视频分流器和音频分流器优选在Android系统的应用层创建,分别对所述编码后的视频数据和音频数据进行拷贝,以形成两路编码后的视频数据和两路编码后的音频数据,并进行分发。与现有技术相比,本专利技术的优点和积极效果是:本专利技术针对Android系统的麦克风和摄像头,采用在应用层单独创建音频数据采集模块和视频数据采集模块的方式,在应用层直接获取麦克风采集输出的原始音频数据和摄像头采集输出的原始视频数据,自行进行预编译、编码和封装处理,由此可以规避麦克风在启用录像功能时因被Android系统的MediaRecoder应用所独占,而导致其他应用获取不到音频信号的问题。在启用录像功能时,本专利技术通过自行获取原始音视频数据,并利用自行创建的音视频预处理模块、音视频编码器以及音视频分流器对获取到的音频数据和视频数据进行预编译、编码和分流处理,从而可以生成两路完全同步的音视频数据流,一路用于远程的实时传送,另一路用于本地保存,由此解决了本地录像与音视频流同步推送的问题。将其应用于执法记录仪中,本文档来自技高网
...
<a href="http://www.xjishu.com/zhuanli/62/201610896998.html" title="基于安卓平台的本地录像与同步推送的方法及执法记录仪原文来自X技术">基于安卓平台的本地录像与同步推送的方法及执法记录仪</a>

【技术保护点】
一种基于安卓平台的本地录像与同步推送的方法,其特征在于,在启用录像功能时,在Android系统的应用层直接获取摄像头输出的原始视频数据和麦克风输出的原始音频数据;创建视频预处理模块和音频预处理模块,分别对获取到的所述原始视频数据和原始音频数据统一进行预编译;创建视频编码器和音频编码器,分别对预编译后的视频数据和音频数据进行编码;创建视频分流器和音频分流器,分别将编码后的视频数据和音频数据分成两路,将其中一路编码后的视频数据和其中一路编码后的音频数据传送至RTP通信模块进行打包封装,并向远程实时推送;将另外一路编码后的视频数据和另外一路编码后的音频数据发送至媒体混合器MediaMuxer进行音视频混合处理后,进行本地保存。

【技术特征摘要】
1.一种基于安卓平台的本地录像与同步推送的方法,其特征在于,在启用录像功能时,在Android系统的应用层直接获取摄像头输出的原始视频数据和麦克风输出的原始音频数据;创建视频预处理模块和音频预处理模块,分别对获取到的所述原始视频数据和原始音频数据统一进行预编译;创建视频编码器和音频编码器,分别对预编译后的视频数据和音频数据进行编码;创建视频分流器和音频分流器,分别将编码后的视频数据和音频数据分成两路,将其中一路编码后的视频数据和其中一路编码后的音频数据传送至RTP通信模块进行打包封装,并向远程实时推送;将另外一路编码后的视频数据和另外一路编码后的音频数据发送至媒体混合器MediaMuxer进行音视频混合处理后,进行本地保存。2.根据权利要求1所述的基于安卓平台的本地录像与同步推送的方法,其特征在于,所述原始视频数据是通过摄像头的Preview接口回调获取的;所述原始音频数据是通过Android系统的AudioRecoder接口获取的。3.根据权利要求1或2所述的基于安卓平台的本地录像与同步推送的方法,其特征在于,在Android系统的应用层创建所述的视频预处理模块和所述的音频预处理模块,在Android系统的应用层完成对所述原始视频数据和原始音频数据的预编译。4.根据权利要求3所述的基于安卓平台的本地录像与同步推送的方法,其特征在于,在Android系统的应用层利用标准API的MediaCodec编码接口创建所述的视频编码器和音频编码器,在Android系统的应用层完成对所述预编译后的视频数据和音频数据的编码处理。5.根据权利要求4所述的基于安卓平台的本地录像与同步推送的方法,其特征在于,在Android系统的应用层创建所述的视频分流器和音频分流器,分别对编码后的视频数据和音频数据进行拷贝,以形成两路编码后的视频数据和两路编码后的音频数据,并进行分发。6.一种执法记录仪,其系统软件基于Android平台开发设计,包括摄像头和麦克风,其特征在于,还包括:视频数据采集模块,其创建于Android系统的应用层,在启用录像功能时,采集所...

【专利技术属性】
技术研发人员:孙磊王宏斌
申请(专利权)人:青岛海信移动通信技术股份有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1