【Hi3566V100】海思 DVR 在回放状态实现同时录像功能

一、前言

       本篇博文为大家带来 Hi3566V100 SDK的业务状态介绍,并且可以在回放状态中实现录像功能的步骤,使用的 SDK 版本是 Hi3562V100_MobileCam_SDK_V2.0.0.2。

 

 

二、业务状态

2.1 业务状态简介

       行车的典型业务状态有以下四种:

图 2.1 典型业务状态

循环录像模式(NORM_REC)

− 循环录像模式进行普通的循环录像,是行车中最常用的模式。

− 正常开机即会进入循环录像模式,此模式下可以进行VO 预览、启动紧急录像、打开setting。

拍照模式(PHOTO)

正常开机根据保存的参数可以进入拍照模式,此模式下可以进行VO 预览、拍照、打开setting。

回放模式(PLAYBACK)

通过按键或者触摸操作,可以进入回放模式,退出回放,则进入循环录像模式。

停车监控模式(PARKING_REC)

− 打开停车监控功能且设备掉电后,如果发生碰撞,设备开机进入停车监控模式,启动紧急录像;

− 停车监控期间,若没有发生车子点火,则设备重新关机,若发生了车子点火,则切换到循环录像模式。

       所以说,按照 SDK 的业务状态,循环录像模式和回放模式是分开的,在进行回放的时候我们是不能进行录像的。

 

 

2.2 切换模式

       业务状态的基本实现主要包含实现以下五个函数,如果我们发送一个切换模式的消息给系统处理,那么系统就会调用原状态的 exit() 函数,然后调用目标状态的 enter() 函数。

图 2.2 基本状态的实现

 

 

三、回放模式实现录像

3.1 回放通路与录像通路

       回放的一般通路是:File-VDEC-VPSS-VO

       MIPI 摄像头录像的一般通路是:MIPI-VCAP-VPSS-VENC

       只要确保这两条通路是通的,就能实现一回放一边录像。但是,如果使用了双摄的话,问题就来了,在 reference 中,VPSS 限制了只能创建 2 个,

但是看上面的通路,回放和录像都使用到了 VPSS,所以此时我们就至少需要创建 3 个 VPSS 来工作。所以首先就要修改 reference 中 VPSS 创建数量的上限,

在 reference/common/media/include/hi_media_comm_define.h 做如下修改:

图3.1 修改 VPSS 上限

       然后在配置文件 config_product_mediamode_cam0_comm_record.ini 中增加 VPSS.1 的配置:

图 3.2 增加一个 VPSS

       在 config_product_mediamode_cam0_record_1080p30.ini 文件中配置 VPSS.1 各通道的分辨率和帧率,我们这里使用的是第一个通道,所以配 VPSS.1.VPORT.1 就好了:



图 3.3 配置 VPSS 分辨率和帧率

       最后在 config_product_workmode_playback.ini 文件中配置 VO 要绑定的 VPSS 通道号:

图 3.4 配置 VO 绑定通道

       这样子我们就成功创建了一个在回放模式时绑定到 VO 的 VPSS,VDEC 也会在播放器中自动绑定到这个通道,不需要我们手动去绑定。

 

 

3.2 切换模式的修改

       我们需要修改的是 playback 模式的 enter 和 record 模式 的 exit 函数。对于 playback 模式的 enter 函数,它会重新把 MediaMode 设置为 playback 的MediaMode,

这样会导致录像中断掉,所以在这里不能修改 MediaMode,但是可以修改 VO,因为录像的通路跟 VO 是无关的,可以在这里调用 PDT_STATEMNG_StartVo 函数将 VO 绑定到刚才设置好的 VPSS2.PORT1 通道。

图 3.5 修改 playback enter 函数

       对于 record 模式的 exit 函数,它会停止录像任务,我们只需要不停止录像任务即可:

图 3.6 修改 record exit 函数

 

四、结果验证

由于我们这边的开发板没有带屏,所以不能回放视频,但是可以在进入回放模式后依然进行录像:

图 4.1 LOG 显示

    可以看出进入回放模式后录像任务并没有停止。

 

 

参考资料:

【1】《HiMobileCam V2.0 参考设计开发指南.pdf》

【2】《Camera 中间件开发参考.pdf》

 

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论