加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Gm8126 capture/encoding pipeline设计开发

发布时间:2020-12-13 19:55:45 所属栏目:百科 来源:网络整理
导读:Gm8126capture/encodingpipeline 设计要点: 1、流 1 : 1080P 流,占用 ch1 ,底层按支持最大 resolution 来配置 buffer 。配置好 main-bs,sub1-bs,sub2-bs,scaler1,scaler2,scaler3 ,得到 6 个 pipeline ,由此可以支持: 1080P,1280x1024,1820x960,720P,

Gm8126capture/encodingpipeline设计要点:

1、流11080P流,占用ch1,底层按支持最大resolution来配置buffer。配置好main-bs,sub1-bs,sub2-bs,scaler1,scaler2,scaler3,得到6pipeline,由此可以支持:1080P,1280x1024,1820x960,720P,VGA,QVAG。根据上层(MediaServer)配置的resolution,在某一时刻,选择一条pipeline投入运行。

2、流2720P流,占用ch2,底层按支持最大resolution来配置buffer。配置好main-bs,scaler3,得到6pipeline,由此可以支持:720P,QVAGQQVGA720x480720x576。根据上层(MediaServer)配置的resolution,在某一时刻,选择一条pipeline投入运行。

3、ch0,作为VI专用。Main-bs固定配置为320x240H.264,给motiondetection用,避免流1或流2切换为mjpeg时,不支持motion侦测。Sub1-bs给为rawdatapipeline,作为auto-focus使用。Sub2-bs保留。

4、Ch3,固定配置为D1,给BNCout专用,同时,sub1-bs作为rawdata使用,可以用作tamperingsub2-bs保留。

经过测试,达到了上述设计目标。对gm8126capture/encoder用法总结如下:

1dvr_graph作为最底层的支撑(GM没有给sourcecode)

gDvr_comm_fd=open("/dev/dvr_common",O_RDWR);

这个只能有一个句柄,因此,流1,流2VI处理,snapshot都只能放在同一个进程。

2、一路capturech,无论main-bs,sub2-bs,只有一个句柄。

pVideoSetting->enc_fd=open("/dev/dvr_enc",O_RDWR);

3、main-bs必须优先使用,然后才可以用sub1-bs,sub2-bs

4、同一路capturech上面,不能同时启动两路rawdata.

5、每一路capturech上面,允许最大使用三个scalerMain-bs,sub2-bsscaler的关系是:如果设置为不支持的resolution时,就会去查找scaler来完成sizedown得到。

对此有问题的朋友可以找我。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读