下面随笔系列将对Hi3559AV100 RFCN实现细节进行解析,因为RFCN用到了VGS加框,因此本篇随笔将给出VGS视频图像子系统的具体说明,便于后面RFCN的细节实现说明。

  VGS 是视频图形子系统,全称为 Video Graphics Sub-System。支持对一幅输入图像进行处理,如进行缩放、像素格式转换、视频存储格式转换、压缩/解压、打 COVER、打 OSD、画线、旋转、动态范围转换等处理。

基本概念

  job

  VGS 管理 task 的结构,一个 job 里可以包含多个 task,VGS 保证 task 按照添加到job 的顺序执行,并且保证一个 job 里的所 task一次性提交硬件执行。用户可以在加载 VGS ko 时设置模块参数(max_vgs_job)来设置 VGS 支持的最大 job 数。job 数取值范围为[20, 400],Linux 默认为 128, Huawei LiteOS 默认值为 64。

  task

  对一幅图像完成具体的一个或多个操作,比如打 OSD、缩放或像素格式转换等。用户可以在加载 VGS ko 时设置模块参数(max_vgs_task)来设置 VGS 支持的最大 task 数。task 数取值范围为[20, 800],Linux 默认为 200, Huawei LiteOS 默认值为 100。

  node

  VGS 硬件的最小执行单位,一个 task 对应一个或多个 node。node 中包含硬件工作需要的信息,比如源图像地址,目标图像地址,操作类型等,并按照硬件要求的形式组织。用户可以在加载 VGS ko 时设置模块参数(max_vgs_node)来设置VGS 支持的最大 node 数。node 数取值范围为[20, 800],Linux 默认为 200, Huawei LiteOS 默认值为 100。

  bVgsHdrSupport

  HDR 模块参数,取值范围[0, 1],0 为关闭(默认关闭 HDR),HDR 关闭时 VGS只支持 SDR8 和 SDR10。用户可以在加载 VGS ko 时设置模块参数(bVgsHdrSupport)来设置 VGS 是否支持 HDR。此模块参数仅用于Hi3559AV100。

  vgs_en[VGS_IP_NUM]

  VGS 硬件开关,用户可以在加载 VGS ko 时设置模块参数(vgs_en)来设置 VGSIP 开启或关闭。默认所 IP 都开启。当 VGS_IP_NUM 为 2 时,只支持开启或关闭 VGS1,插 ko 后 VGS0 始终打开;当 VGS_IP_NUM 为 1 时,该参数无效,插ko 后 VGS0 始终打开。

  HANDLE

  任务句柄,标识一个 job。

功能介绍

  VGS 的功能主要缩放、打 OSD、打 COVER、画线、像素格式转换、视频存储格式转换、压缩/解压、旋转、低功耗策略、动态范围转换。

RFCN实现VGS涉及相关函数

  在画框函数实现下:SAMPLE_COMM_SVP_NNIE_FillRect,涉及如下VGS函数。

1 //启动一个 job。
2
3 HI_MPI_VGS_BeginJob(&VgsHandle);
4
5 //往一个已经启动的 job 里添加打 COVER task。 task属性必须满足VGS的能力。
6 s32Ret = HI_MPI_VGS_AddCoverTask(VgsHandle, &stVgsTask, &stVgsAddCover);
7
8 //提交一个 job。
9 s32Ret = HI_MPI_VGS_EndJob(VgsHandle);

基于Hi3559AV100 RFCN实现细节解析-(1)VGS初介绍的更多相关文章

  1. 基于Hi3559AV100 RFCN实现细节解析-(2)RFCN数据流分析

    下面随笔系列将对Hi3559AV100 RFCN实现细节进行解析,整个过程涉及到VI.VDEC.VPSS.VGS.VO.NNIE,其中涉及的内容,大家可以参考之前我写的博客: Hi3559AV100的 ...

  2. 基于Hi3559AV100 RFCN实现细节解析-(3)系统输入VI分析一 :

    下面随笔系列将对Hi3559AV100 RFCN实现细节进行解析,整个过程涉及到VI.VDEC.VPSS.VGS.VO.NNIE,其中涉及的内容,大家可以参考之前我写的博客: Hi3559AV100的 ...

  3. 基于Hi3559AV100 RFCN实现细节解析-(3)系统输入VI分析(HiISP)二 :

    下面随笔系列将对Hi3559AV100 RFCN实现细节进行解析,整个过程涉及到VI.VDEC.VPSS.VGS.VO.NNIE,其中涉及的内容,大家可以参考之前我写的博客: 基于Hi3559AV10 ...

  4. 基于底层的 XML 的解析方式详解

    在上一篇博客中,我们介绍了什么是 XML ,http://www.cnblogs.com/ysocean/p/6901008.html,那么这一篇博客我们介绍如何来解析 XML . 部分文档引用:ht ...

  5. Spring源码学习笔记之基于ClassPathXmlApplicationContext进行bean标签解析

    bean 标签在spring的配置文件中, 是非常重要的一个标签, 即便现在boot项目比较流行, 但是还是有必要理解bean标签的解析流程,有助于我们进行 基于注解配置, 也知道各个标签的作用,以及 ...

  6. canal 基于Mysql数据库增量日志解析

    canal 基于Mysql数据库增量日志解析  1.前言  最近太多事情 工作的事情,以及终身大事等等 耽误更新,由于最近做项目需要同步监听 未来电视 mysql的变更了解到公司会用canal做增量监 ...

  7. 基于Hi3559AV100的视频采集(VDEC-VPSS-VO)整体框图设计

    下面给出基于Hi3559AV100的视频采集整体设计,具体设计将在后续给出: 图形采集端整体设计 Hi3559AV100软件程序按结构划分可分为4层,第一层是硬件驱动层,第二层是操作系统层,第三层是媒 ...

  8. 解析HTML利器AngleSharp介绍

    解析HTML利器AngleSharp介绍 AngleSharp是基于.NET(C#)开发的专门为解析xHTML源码的DLL组件. 项目地址:https://github.com/FlorianRapp ...

  9. 基于OpenCV进行图像拼接原理解析和编码实现(提纲 代码和具体内容在课件中)

    一.背景 1.1概念定义 我们这里想要实现的图像拼接,既不是如题图1和2这样的"图片艺术拼接",也不是如图3这样的"显示拼接",而是实现类似"BaiD ...

随机推荐

  1. Hiho1422 Harmonic Matrix Counter (高斯消元)

    16年北京站A题 真的难啊.. 题意: 定义和谐矩阵 就是每个元素和上下左右的xor值=0 输出一个超大数 然后最多800个询问 求字典序第k小的和谐矩阵 x y位置上的数 题解: 首先这个超大数的范 ...

  2. Array Transformer UVA - 12003

    题目:传送门 题意: 给你n个数,要进行m次操作 对于每次操作(l,r,v,p)代表:在区间[l,r]中有x(这个x是需要你自己找出来的)个数小于v,你需要把序列的第p个位置的值改成u∗k/(r−l ...

  3. ucosIII学习笔记——钩子函数

    一开始听见钩子函数感觉很莫名其妙,更不知道它有何作用,这是第一篇博客,也是学习ucosIII操作系统的一个开始吧. 在系统中有开发者自己创建的任务也有系统内部任务 ,UCOSIII中有五个系统任务,分 ...

  4. 力扣992.K个不同整数的子数组-C语言实现

    题目 原题链接 给定一个正整数数组 A,如果 A 的某个子数组中不同整数的个数恰好为 K,则称 A 的这个连续.不一定独立的子数组为好子数组. (例如,[1,2,3,1,2] 中有 3 个不同的整数: ...

  5. Redis Cluster 分布式集群(上)

    Redis Cluster 介绍 Redis 集群是一个可以在多个Redis节点之间进行数据共享的设施(installation): Redis 集群不支持那些需要同时处理多个键的 Redis 命令, ...

  6. vue项目webpack打包后修改配置文件

    从webpack打包结构中我们知道,vue中有一个存放外部资源的文件夹static,它里面的文件是不会被打包编译的,所以我们就可以利用外部引入js的方式将我们的想要的数据在index.html中以js ...

  7. 强网杯 2019]随便注(堆叠注入,Prepare、execute、deallocate)

    然后就是今天学的新东西了,堆叠注入. 1';show databases; # 1';show tables; # 发现两个表1919810931114514.words 依次查询两张表的字段 1'; ...

  8. Ant-design-vue—— 表单输入框输入很卡问题

    参考:https://blog.csdn.net/weixin_43905402/article/details/106074435 我的问题:vue项目中使用ant-design-vue,表单中输入 ...

  9. image auto downloader

    image auto downloader icons killer / js crawler http only + same-origin OK "use strict"; / ...

  10. JavaScript 如何使用 setTimeout 实现 setInterval

    JavaScript 如何使用 setTimeout 实现 setInterval website multi content page setIntervalSimulator "use ...