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

RV1126的OSD模块讲解

一、RV1126的OSD结构体模块

        在RV1126开发OSD模块的时候,一般要使用下面的结构体分别是OSD_REGION_INFO_SBITMAP_S。(俩个结构体)

        OSD_REGION_INFO_S主要作用是是在编码图像里面划分一个OSD区域,相当于在编码图像中空出一块空间给OSD图层来用,BITMAP_S的作用是向OSD图层以位图的形式把具体的内容显示出来(实现具体的功能),下面是OSD_REGION_INFO和Bitmap的关系:

        从上面这张图可以看出来,BITMAP_S包含在OSD_REGION_INFO里面,BITMAP_S是OSD_REGION_INFO的具体内容。

1.1.OSD_REGION_INFO_S结构体(选定区域)

1.1.1、enRegionId:OSD区域的索引值,取值范围是[0,7],具体ID的枚举组成看图region_id。0-7层叠加是由优先级逐步上升,优先级越高OSD的层数就位于更高的图层,RV1126里面总共提供8个区域进行OSD区域的描述。如图region_id_venc是区域索引ID:REGION_ID_0到REGION_ID_7的图示,对于RV1126来说REGION_ID相当于同时可以描绘8个OSD区域在VENC编码数据里面。

1.1.2、​​​​​​​u32PosX:OSD图层的X轴坐标,X轴的坐标轴必须要16位对齐(换言之:X轴的值要被16整除才行)即x,y要满足下图这个坐标形式;

1.1.3、u32PosY:OSD图层的Y轴坐标,Y轴的坐标轴必须要16位对齐(换言之:Y轴的值要被16整除才行

1.1.4、u8Enable:OSD区域是否使能,基本上填写使能,默认是1u8Inverse:是否反色,0是不要反色,1反色

1.1.5、u32Height:OSD图层区域的高度,高度必须16位对齐,一般而言osd_info的高度和bitmap的长度一致

1.1.6、u32WidthOSD图层区域的长度,长度必须16位对齐,一般而言osd_info的长度和bitmap的长度一致

1.2.​​​​​​​BITMAP_S结构体(填充内容)

1.2.1、enPixelFormat:Bitmap位图支持的像素,下面是支持的像素,目前RV1126的OSD只支持ARGB_8888的像素。注意:RV1126的OSD图像目前只支持ARGB8888格式绘制。

注:采用四个通道;所以是四个8

ARGB指的是在RGB模式上,增加一个Alpha通道;8888表示的是每个通道用8位来表示,每个通道0-255之间的一个值,每个像素点的大小是8+8+8+8=32位表示。(其中A表示的是透明度);

1.2.2、u32Width:Bitmap的宽度,一般而言跟OSD_INFO宽度一致

1.2.3、u32Height:Bitmap的高度,一般而言跟OSD_INFO高度一致

1.2.4、pData:位图的地址数据,也就是Bitmap的具体信息

二、RV1126的OSD模块API讲解

第一个参数:编码通道号,VENC_CHN。

第二个参数:OSD_REGION_INFO_S结构体指针,OSD区域的信息。

第三个参数:BITMAP_S结构体指针,Bitmap的信息和数据。

http://www.dtcms.com/a/357494.html

相关文章:

  • ArcPy 断点续跑脚本:深度性能优化指南
  • 币安创始人赵长鹏:香港需要更广泛的加密货币产品来与美国和阿联酋竞争
  • Origin绘制四元相图
  • 3-5〔OSCP ◈ 研记〕❘ WEB应用攻击▸WEB应用枚举A
  • 数据存储与SQLite数据库
  • 3 反向传播
  • C++ 线程安全初始化机制详解与实践
  • Android 打包适配15 版本(api 35)问题处理
  • 数字人 + 矩阵聚合系统源码搭建与定制化开发
  • 内网部署数据本地化,不限时的视频会议软件-BeeWorks Meet
  • 数据结构:归并排序 (Iterative Merge Sort)
  • JavaScript 基础核心知识点总结:从使用方式到核心语法
  • 不止于价格,DigitalOcean、AWS和Linode该选谁?
  • 蘑兔音乐:音乐创作板块的槿汐姑姑
  • 抗干扰、高冗余、快部署:KAXA工业无线方案赋能注塑车间稳定联网
  • OpenCV的轮廓检测
  • 手写MyBatis第41弹:MyBatis动态代理黑魔法:MapperProxy如何智能处理增删改的返回值?
  • 【完整源码+数据集+部署教程】胚胎发育阶段检测系统源码和数据集:改进yolo11-SCConv
  • 如何从 iCloud 存储中删除消息的 4 种方法
  • ubuntu24.04 QT中配置opencv4.12
  • 引力场能量为负,物质能量为正,这是在存在物质的空间中说的,如果是空无一物的空间呢,引力场能量还是负吗(或者说引力场还存在吗)
  • 2025年09月计算机二级Java选择题每日一练——第十一期
  • Vue3 kkfileview 的使用
  • Hal aidl 模板
  • Django开发规范:构建可维护的AWS资源管理应用
  • 第八章 惊喜01 测试筹备会
  • 【Flask】测试平台开发,产品管理实现编辑功能-第六篇
  • 对接连连支付(七)-- 退款查询
  • CSS设置滚动条显示时机及样式
  • R 语言 + 卒中 Meta 分析(续):机器学习 Meta 与结构方程 Meta 完整实现