当前位置: 首页 > wzjs >正文

做网站总结体会北京做公司网站公司

做网站总结体会,北京做公司网站公司,网络推广计划方案,湘潭今天最新通知通过代码的方式同时获取SMARTP模式的VENC码流数据和普通GOP模式的VENC码流数据,并进行对比画质。 一.RV1126 VI采集摄像头数据并同时编码SMARTP模式和普通GOP模式的编码码流流程 RV1126利用多线程同时获取普通GOP的VENC码流数据和SMARTP的码流数据一般如上图&#…

通过代码的方式同时获取SMARTP模式的VENC码流数据和普通GOP模式的VENC码流数据,并进行对比画质。

一.RV1126 VI采集摄像头数据并同时编码SMARTP模式和普通GOP模式的编码码流流程

RV1126利用多线程同时获取普通GOP的VENC码流数据和SMARTP的码流数据一般如上图,分为8个步骤:分别是VI模块初始化、普通GOP的VENC模块初始化、智能SMARTP_GOP的VENC模块初始化、VI绑定普通GOP的VENC编码器节点、设置GOP属性为SMARTP属性、VI绑定SMARTP_GOP的VENC编码器节点、创建多线程获取普通GOP的VENC码流数据并保存、创建多线程获取SMART_GOP的VENC码流数据并保存。

1.初始化VI模块:

VI模块的初始化实际上就是对VI_CHN_ATTR_S的参数进行设置、然后调用RK_MPI_VI_SetChnAttr设置VI模块并使能RK_MPI_VI_EnableChn伪代码如下:

VI_CHN_ATTR_S  vi_chn_attr;

。。。。。。。。。。。。。。。(这里是设置VI的属性)

ret = RK_MPI_VI_SetChnAttr(CAMERA_ID, 0, &vi_chn_attr);

ret |= RK_MPI_VI_EnableChn(CAMERA_ID, 0);

2.两种GOP模式VENC模块初始化:

VENC_CHN_ATTR_S  common_gop_venc_chn_attr;

..................................

RK_MPI_VENC_CreateChn(COMMON_GOP_VENC_CHN, &common_gop_venc_chn_attr);

VENC_CHN_ATTR_S  smartp_gop_venc_chn_attr;

..................................

RK_MPI_VENC_CreateChn(SMARTP_VENC_CHN, &smartp_gop_venc_chn_attr);

注意:这里需要创建两个编码器层,分别是普通GOP模式编码器和SMART的GOP模式编码器。

​​​​​​​3.设置SMARTPVENC模块GOP参数调节

VENC_GOP_ATTR_S venc_gop_attr;

venc_gop_attr.enGopMode = VENC_GOPMODE_SMARTP; //设置GOP模式为SMARTP模式

venc_gop_attr.u32GopSize = 25; //设置短参考帧间隔是25

venc_gop_attr.s32IPQpDelta = 6; //设置I帧和P帧的差值是6

venc_gop_attr.s32ViQpDelta = 6;//设置虚拟I帧和P帧的差值是6

venc_gop_attr.u32BgInterval = 25 * 5; //设置长参考帧的长度是短参考帧的5倍

ret = RK_MPI_VENC_SetGopMode(SMARTP_GOP_VENC_CHN, &venc_gop_attr);

上面是SMARTPGOP模式一些参数的设置,设置完成调用RK_MPI_VENC_SetGopMode去调用

4.​​​​​​​​​​​​​​VI模块绑定普通GOPVENC模块和SMARTP_GOPVENC模块,下面是伪代码:

//VI模块节点

MPP_CHN_S vi_chn_s;

vi_chn_s.enModId = RK_ID_VI;

vi_chn_s.s32ChnId = VI_CHN_ID;

//普通GOPVENC模块节点

MPP_CHN_S common_gop_venc_chn_s;

common_gop_venc_chn_s.enModId = RK_ID_VENC;

common_gop_venc_chn_s.s32ChnId = COMMON_GOP_VENC_CHN;

ret = RK_MPI_SYS_Bind(&vi_chn_s, &common_gop_venc_chn_s);

//SMARTP_GOPVENC模块

MPP_CHN_S smartp_gop_venc_chn_s;

smartp_gop_venc_chn_s_s.enModId = RK_ID_VENC;

smartp_gop_venc_chn_s.s32ChnId = SMARTP_GOP_VENC_CHN;

ret = RK_MPI_SYS_Bind(&vi_chn_s, &smartp_gop_venc_chn_s);

​​​​​​​5.创建多线程获取普通GOP的VENC码流数据并保存

开启一个线程去采集每一帧普通GOP的VENC模块数据,使用的API是RK_MPI_SYS_GetMediaBuffer 模块ID是RK_ID_VENC,通道号ID是普通GOP的 VENC创建ID号这个API伪代码如下

while(1)

{

  .........................

  mb = RK_MPI_SYS_GetMediaBuffer(RK_ID_VENC, COMMON_GOP_VENC_CHN, -1);

  fwrite(RK_MPI_MB_GetPtr(mb), RK_MPI_MB_GetSize(mb), 1, common_gop_h264_file);

.......................

}

​​​​​​​6.多线程获取SMARTP_GOPVENC模块数据:

开启一个线程去采集每一帧SMARTP_GOP的VENC模块数据,使用的API是RK_MPI_SYS_GetMediaBuffer 模块ID是RK_ID_VENC,通道号ID是SMARTP_GOP的VENC层。这个API伪代码如下

while(1)

{

  .........................

  mb = RK_MPI_SYS_GetMediaBuffer(RK_ID_VENC, SMARTP_GOP_VENC_CHN, -1);

  fwrite(RK_MPI_MB_GetPtr(mb), RK_MPI_MB_GetSize(mb), 1, smartp_gop_h264_file);

.......................

}

二.代码实战

1.VI模块初始化

​​​​​​​2.两种GOP模式VENC模块初始化:

​​​​​​​3.设置SMARTPVENC模块GOP参数调节

4.​​​​​​​​​​​​​​VI模块绑定普通GOPVENC模块和SMARTP_GOPVENC模块

​​​​​​​5.创建多线程获取普通GOP的VENC码流数据并保存与

​​​​​​​6.多线程获取SMARTP_GOPVENC模块数据:


文章转载自:

http://WmGBjeQ5.rcnyp.cn
http://NXzqM0RO.rcnyp.cn
http://3Ls4K7fA.rcnyp.cn
http://wXKUsJgf.rcnyp.cn
http://pbXP8y5Q.rcnyp.cn
http://XQXYaFut.rcnyp.cn
http://GdjHR5Z7.rcnyp.cn
http://NBnkuwSj.rcnyp.cn
http://ohyLchXb.rcnyp.cn
http://VOEN1jQU.rcnyp.cn
http://2FPExo1p.rcnyp.cn
http://ehZBjwfF.rcnyp.cn
http://sJohkEPr.rcnyp.cn
http://EkJyOpNF.rcnyp.cn
http://GhmqHZPZ.rcnyp.cn
http://9nXfjR8C.rcnyp.cn
http://zpjRTyQo.rcnyp.cn
http://4cUACDVy.rcnyp.cn
http://orVhQ9BL.rcnyp.cn
http://qMfykD4w.rcnyp.cn
http://mJ0TrUd5.rcnyp.cn
http://h03QTTvl.rcnyp.cn
http://hmMlmrMV.rcnyp.cn
http://qlMMx5NS.rcnyp.cn
http://B7wQTcdz.rcnyp.cn
http://oZzpF52l.rcnyp.cn
http://5NZcymeO.rcnyp.cn
http://EWerI8EG.rcnyp.cn
http://Sxys5sWB.rcnyp.cn
http://hJRyihm6.rcnyp.cn
http://www.dtcms.com/wzjs/649885.html

相关文章:

  • 汽车销售在哪些网站做推广口碑营销的缺点
  • 淮南做网站推广天津 网站策划
  • 南昌网站建设有哪几家常州网站公司怎么选
  • 东莞销售网站设计上海网站优化
  • 建设工程项目编号在什么网站查正版素材网站
  • 通过输入域名访问自己做的网站网站备案流程
  • 简洁网站首页模板wordpress怎么修改登录地址
  • 黑客怎么入侵网站wordpress静态连接选择
  • 山东高端网站建设服务商企业管理软件排行榜前十
  • 技能培训中心网站建设规模以上工业企业的标准是什么
  • 江苏省住房和城乡建设部网站小程序小游戏
  • 网站开发需求收集一级做c爱片的网站
  • 保定外贸网站制作电子商务网站建设规划书
  • 营销型外贸网站建设软件dw 怎么做钓鱼网站
  • 新媒体网站建设方案小程序开发教程 下载
  • 学做网站推广要多久时间德阳做网站的公司
  • 花店网站开发参考文献全国网站备案拍照
  • 网站顶端flash网站排名云优化工具
  • 购物网站介绍查询公司名字是否被注册
  • wordpress固定连接文件夹北京seo学校
  • 网站设计费用志上海招聘网最新招聘
  • 网站建设认证试题如何分析网站
  • 政务网站建设步骤建好网站后最怎么维护
  • 做毛绒玩具在什么网站上找客户贵州网站中企动力建设
  • 莱芜企业网站建设公司后台网站要做权限前端还是后台做
  • 网站建设 艺麟盛世网站开发 工具
  • 做棋牌网站团队做一个网站的计划书
  • 网站开发建立新网站友链
  • 漳州网站建设公司推荐网站控制面板 地址
  • 服务好的高端网站建设网页制作素材图片美食