rockchip 瑞芯微 SDK 一些解释_瑞芯微sdk-程序员宅基地

技术标签: linux SDK  RV1126  rockchip  linux驱动开发  

本文基于RV1126/RV1109 linux SDK

1、Rockchip提供的主要软件包

部分模块代码目录路径 模块功能描述
external/recovery recovery
external/rkwifibt Wi-Fi和BT
external/libdrm DRM接口
external/rk_pcba_test external/rk_pcba_test
external/isp2-ipc 图像信号处理服务端
external/mpp 编解码代码
external/rkmedia Rockchip多媒体封装接口
external/rkupdate Rockchip升级代码
external/camera_engine_rkaiq 图像处理算法模块
external/rknpu NPU驱动
external/rockface 人脸识别代码
external/CallFunIpc 应用进程间通信代码
external/common_algorithm 音视频通用算法库
external/rknn-toolkit 模型转换、推理和性能评估的开发套件
app/libIPCProtocol 基于dbus,提供进程间通信的函数接口
app/mediaserver 提供多媒体服务的主应用
app/ipc-daemon 系统守护服务
app/dbserver 数据库服务
app/netserver 网络服务
app/storage_manager 存储管理服务
app/ipcweb-backend web后端
app/librkdb 数据库接口
app/ipcweb-ng web前端,采用Angular 8框架

2、RK平台中的几个概念和他们之间的关系

概念 说明
rkmedia RK平台上将音视频编解码缩放,网络推流本地录像,AI识别等集成在一起的一个库
easymedia 就是上面的rkmedia编译生成的库,可以认为是一个东西
mpp RK平台上的硬件编解码组件
RGA RK平台上独有的一个组件,用来进行2D图像的格式转换,缩放,合成等,底层由硬件IP实现
RKNN RK平台上NPU相关组件和工具,底层由硬件IP NPU支持,可用来加载用户指定的模型,并高速运算
ISP 负责处理sensor出来的原始图像
ISPP 负责处理对图像进行降噪等处理
AIQ 负责从sensor搬运数据到ISP,从ISP搬运数据到ISPP等,还负责从ISP读取统计数据并进行曝光控制策略等

3、摄像头视频数据的流程

在这里插入图片描述

  1. 粗略的讲就是AIQ负责图像质量相关的控制,用户想要改变图像质量相关的话需要调用这里的接口,否则可以不用管,
    RKMEDIA调取MPP、RGA、RKNN等给出的接口,封装成更高级更方便的接口供用户使用,用户并不一定非要使用这库,
    如果自己的程序逻辑不是很复杂的话可以直接调用MPP、RGA等提供的接口来实现;

  2. 经过ISP,ISPP处理后的图像依然是通过V4L2接口获取,关于更详细的介绍请看SDK下docs目录下相关章节介绍。

4、设备分区

分区 对应文件 说明
loader rockdev/Miniloader 由u-boot下rkbin等文件合成,一级引导,负责初始化DDR等,一般不需要改变
parameter rockdev/parameter.txt 从device/rockchip/rv1126_rv1109拷贝过来或者软链接过来,这里面主要保存着CMDLINE参数,包含分区信息,rootfs挂载信息等,传给内核,如果需要改变分区布局的话,可以修改这个文件
u-boot rockdev/u-boot.bin 由u-boot目录拷贝而来或者软链接过来
boot/kenel rockdev/boot.img 由kernel目录下zboot.img软链接过来
misc rockdev/misc.img 记录系统状态辅助完成升级流程等,非必须
recovery rockdev/recovery.img 负责系统升级等,非必须
rootfs rockdev/rootfs.img 由buildroot下面软链接过来,根文件系统
oem rockdev/oem.img 来自buildroot或者device/rockchip,主要放有些RK原厂的库,脚本和可执行文件
userdata rockdev/userdata.img 用来存放用户数据,非必须

5、RV1126/RV1109 Linux SDK 快速入门

芯片的框图如下所示
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6、SDK 目录说明

buildroot:定制根文件系统。
app:存放上层应用程序。
external:相关库,包括音频、视频等。
kernel:kernel代码。
device/rockchip:存放每个平台的一些编译和打包固件的脚本和预备文件。
docs:存放开发指导文件、平台支持列表、工具使用文档、Linux 开发指南等。
prebuilts:存放交叉编译工具链。
rkbin:存放固件和工具。
rockdev:存放编译输出固件。
tools:存放一些常用工具。
u-boot:U-Boot代码。

7、SDK软件框图

在这里插入图片描述

8、部分模块的培训视频地址

多媒体RKMedia介绍
链接:https://pan.baidu.com/s/1Z4o2v2KL6eCKXgI2fMEcSA
提取码:vhk2

RK NPU开发套件介绍及Q&A
链接:https://pan.baidu.com/s/10w7R_q857uVEXq-88Pu-1g
提取码:c66l

RV1126&RV1109摄像头驱动调试介绍
链接:https://pan.baidu.com/s/1rva6ZDj1x-T1rNcxV354KA
提取码:z4uh

RV1126&RV1109 Linux SDK 快速开发指南
链接:https://pan.baidu.com/s/1iXwOdXH0jIR3iGQc0gluow
提取码:t9o0

RK ISP2 标定流程介绍
链接:https://pan.baidu.com/s/1tZloen4B4jIIl2w1R2hWfg
提取码:nrp3

RK ISP2 基础模块的标定方法及工具使用
链接:https://pan.baidu.com/s/1L0zSxInjqTyqDBesg4RL1w
提取码:8yc6

9、linux设备常用缩略语

缩略语 英文全称 解释
ARM Advanced RISC Machine 高级精简指令集计算机
CAN Controller Area Network 控制器局域网络
CEC Consumer Electronics Control 消费电子控制
CIF Camera Input Format 相机并行接口
CPU Central processing unit 中央处理器
CSI Camera Serial Interface 相机串行接口
DC/DC Direct current-Direct current converter 直流/直流变换器
DDR Double Data Rate 双倍速率同步动态随机存储器
DP DisplayPort 显示接口
DSI Display Serial Interface 显示串行接口
EBC E-book controller 电子书控制器
eDP Embedded DisplayPort 嵌入式数码音视讯传输接口
eMMC Embedded Multi Media Card 内嵌式多媒体存储卡
ESD Electro-Static discharge 静电释放
ESR Equivalent Series Resistance 等效电阻
Flash_VOL_SEL Flash voltage selection eMMC/Nand Flash IO电压选择
FSPI Flexible Serial Peripheral Interface 灵活串行外设接口
GPU Graphics Processing Unit 图形处理单元
HDMI High Definition Multimedia Interface 高清晰度多媒体接口
HPD Hot Plug Detect 热插拔检测
I2C Inter-Integrated Circuit 内部整合电路(两线式串行通讯总线)
I2S Inter-IC Sound 集成电路内置音频总线
ISP Image Signal Processing 图像信号处理
JTAG Joint Test Action Group 联合测试行为组织定义的一种国际标准测试协议( IEEE 1149.1兼容)
LDO Low Drop Out Linear Regulator 低压差线性稳压器
LCDC LCD Controller LCD 控制器并行接口
LCM LCD Module LCD显示模组
LVDS Low-Voltage Differential Signaling 低电压差分信号
MAC Media Access Control 以太网媒体接入控制器
MIPI Mobile Industry Processor Interface 移动产业处理器接口
NPU Neural network Processing Unit 神经网络处理器
PCB Printed Circuit Board 印制电路板
PCIe Peripheral Component Interconnect-express 外设组件互联标准
PCM Pulse Code Modulation 脉冲编码调制
PDM Pulse density modulation 脉冲密度调制
PLL Phase-locked loop 锁相环
PMIC Power Management IC 电源管理芯片
PMU Power Management Unit 电源管理单元
PWM Pulse width modulation 脉冲宽度调制
QSGMII Quad Serial Gigabit Media Independent Interface 四串行千兆媒体独立接口
RGB RGB color mode is a color standard in industry RGB色彩模式, 是工业界的一种颜色标准
GMAC Gigabit Media Access Controller 千兆媒体访问控制器
RGMII Reduced Gigabit Media Independent Interface 简化千兆媒体独立接口
RMII Reduced Media Independent Interface 简化媒体独立接口
SARADC successive approximation register Analog to digital converter 逐次逼近寄存器型模数转换器
SATA Serial Advanced Technology Attachment 串行高级技术附件
SCR Smart Card Reader 智能卡读卡器
SD Card Secure Digital Memory Card 安全数码卡
SDIO Secure Digital Input and Output Card 安全数字输入输出卡
SDMMC Secure Digital Multi Media Card 安全数字多媒体存储卡
SGMII Serial Gigabit Media Independent Interface 串行千兆媒体独立接口
SPDIF Sony/Philips Digital Interface Format SONY、 PHILIPS数字音频接口
SPI Serial Peripheral Interface 串行外设接口
SubLVDS Sub- Low-Voltage Differential Signaling 低摆幅差分信号技术
TF Card Micro SD Card(Trans-flash Card) 外置记忆卡
TSADC Temperature sensing A / D converter 温度感应模数转换器
UART Universal Asynchronous Receiver / Transmitter 通用异步收发传输器
VOP Video Output Processor 视频输出处理器
VPU Video Processing Unit 视频处理器
USB2.0 Universal Serial Bus 2.0 通用串行总线
USB3.0 Universal Serial Bus 3.0 通用串行总线

10、摄像头相关名称

名词 解释
3A 指自动聚焦(AF),自动曝光(AE)和自动白平衡(AWB)算法,或者由RK提供的3A算法动态链接库
Async Sub Device 指在Media Controller结构下的异步注册的V4L2子设备,如Sensor、MIPI DPHY
Bayer Raw 也写成Raw Bayer,指设备(Sensor或ISP)输出的如RGGB、BGGR、GBRG、GRBG等帧格式
Camera 泛指由Rockchip芯片中的VIP或ISP及其连接的Sensor,以及他们驱动共同组成的完整系统
CIF 指RK芯片中的VIP模块,用以接收Sensor数据并保存到Memory中,仅转存数据,无ISP功能
DVP 一种并行数据传输接口,即Digital Video Port
Entity 指Media Controller框架下的各节点
FCC、FourCC 指Four Character(FCC) codes,是Linux Kernel中用4个字符表示的图像格式
HSYNC 指DVP接口的行同步信号
ISP Image Signal Processing,用以接收并处理图像。本文中既指硬件本身,也泛指ISP驱动
IOMMU Input-Output Memory Management Unit,指Rockchip系列芯片中的IOMMU模块,用于将物理上分散的内存页映射成CIF、ISP可见的连续内存。本文中既指硬件本身,也泛指IOMMU驱动
IQ Image Quality,指为Bayer Raw Camera调试的IQ xml,用于 3A tunning
Media Controller Linux kernel的一种媒体框架,主要用于拓扑结构的管理
MIPI-DPHY 指MIPI-DPHY协议,或Rockchip芯片中符合MIPI-DPHY协议的控制器
MP 即Main Path,指Rockchip ISP驱动的一个输出节点,可输出高分辨率图像,一般用来拍照,抓取Raw图
PCLK 指Sensor输出Pixel Clock
Pipelin 本文指Media Controller的各个Entity相互连接形成的链路
RKCIF 指CIF的驱动名称
RKISP1 指ISP驱动的名称
SP 即Self Path,指Rockchip ISP驱动的一个输出节点,最高只能输出1080p分辨率
Userspace 即Linux 用户空间(相对于Linux内核空间)
V4L2 即Video4Linux2,Linux kernel的视频处理模块
VIP 在Rockchip芯片中,即Video Input Processor,曾作为CIF的别名
VSYNC 指DVP接口的场同步信号

11、RK3568 常用系统软件

软件版本 支持的功能
nginx 1.12.2 高性能的 Web 应用和服务
ffmpeg 4.1.3 多媒体处理工具
Qt5 5.15.2 支持 qml, QWidget, QWebEngine, QChart 等支持 sqlite, mysql 驱动等
gstreamer 1.20 多媒体框架
opencv 4.4.5 计算机视觉库
python 3.8.6 高级编程语言,方便开发
weston 10.0.0 基于 wayland 框架, 窗口管理器和合成器
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_37787043/article/details/123446521

智能推荐

打开excel提示损坏的映像的解决办法_excelexe损坏的映像-程序员宅基地

文章浏览阅读6.2k次。打开excel提示损坏的映像的解决办法根据提示找到相应的目录,将提示的dll文件选定,右键属性,依次点击安全,编辑,在其中勾选读取和执行为允许(默认为允许),将读取勾选为拒绝(默认问允许),然后依次点击确定,应用完成后重新打开excel,若还是提示损坏的文件,则按照上面的方法将提示的dll文件依次做相同设置,一般只有两三个,设置完成后,即可顺利打开excel。(亲测有效)..._excelexe损坏的映像

赋值运算符重载函数被继承了吗?_基类的赋值运算符重载函数能不能够被继承?-程序员宅基地

文章浏览阅读2k次。C++语法规定赋值运算符重载函数不能被继承。关于这一点我的理解是赋值运算符和构造、析构函数一样,都是为类量身定做的,继承没有意义,所以编译器屏蔽了这个继承。 最近在网上看到一篇文章(http://blog.csdn.net/pbmichael/article/details/1608250),认为“‘赋值运算符重载函数’不是不能被派生类继承,而是被派生类的默认‘赋值运算符重载函数’给_基类的赋值运算符重载函数能不能够被继承?

Qt Creator 窗体控件自适应窗口大小布局_qt creater qtreewidget 可缩放大小-程序员宅基地

文章浏览阅读1.7k次。常见的软件窗口大小改变(最大化、手动改变时)需要窗口的部件能够自适应布局,而在Qt的应用程序界面设计中,对于像我一样的初学者如何实现窗口自适应调整还是要绕点弯路的。网上百度了很多,多数说的很含糊,还有很多是用程序实现的,既然已经有Qt Creator那么高集成度的工具了,我还是倾向于直接在Qt Creator中通过可视化配置的方式完成,一是所见即所得,而是效率要高不少。Qt中如果想实现窗体内空_qt creater qtreewidget 可缩放大小

【Phytium】edk2 调试总结_phytium bios setup-程序员宅基地

文章浏览阅读190次。飞腾平台 EDK2 调试记录_phytium bios setup

基于 Flink 构建关联分析引擎的挑战和实践-程序员宅基地

文章浏览阅读965次,点赞2次,收藏2次。点击上方“zhisheng”,选择“设为星标”公众号(zhisheng)内回复:ffa可以获取到所有PPT 和视频随着云计算、大数据等新一代IT技术在各行业的深入应用,政企机构IT规..._关联分析引擎

【目标检测】统计YOLO实例分割标注Polygon多边形像素&BBox_yolo可以输出目标的像素个数吗-程序员宅基地

文章浏览阅读609次。统计YOLO实例分割格式各类别多边形像素数和目标框数量_yolo可以输出目标的像素个数吗

随便推点

Altium Designer 20(AD20)新手小白详细教程-程序员宅基地

文章浏览阅读3.9w次,点赞90次,收藏651次。关于AD20的基础操作,小白可以学一学,方便操作_ad20

QML 基本类型_qml表示double-程序员宅基地

文章浏览阅读148次。QML 有许多基本类型,例如整型int或字符串类型string,这和 QML 对象类型形成对比,QML 对象类型是指具有属性、信号、方法等的对象,与对象类型不同的是,基本类型不能用于声明 QML 对象,例如不能声明 int{}对象或size{}对象。与对象类型的属性不同,基本类型的属性不提供它们自己的属性更改信号。相反,对象类型的属性发出它们自己的属性更改信号,并且仅在将属性重新分配给不同的对象值时才调用对象类型属性的属性更改信号处理程序。在 Qt 的全局对象提供有用的功能,用于操作基本类型的值。_qml表示double

linux多线程卡死或崩溃log所有堆栈_linux va_start 多线程崩溃-程序员宅基地

文章浏览阅读1.1k次。多线程卡死或者崩溃的时候,bt直接显示的堆栈可能不是崩溃的那个,那么就 需要分析所有的堆栈,可以采用的方式就是把所有的堆栈log下来,这样可以使用文本分析器或者编写脚本去进行处理log所有的堆栈的方式如下:首先要进入gdb的界面然后一次输入如下指令:set logging file xxxx.txtset pagination offset logging file on..._linux va_start 多线程崩溃

QT的使用学习_学习qt-程序员宅基地

文章浏览阅读626次。进入下面的网站进行QT的ide的下载:(下载5.12.9版本使用,可以复制链接到迅雷,下载的比比较快)_学习qt

18个实时音视频开发中会用到开源项目_voice changer client demo-程序员宅基地

文章浏览阅读691次。实时音视频的开发学习有很多可以参考的开源项目。一个实时音视频应用共包括几个环节:采集、编码、前后处理、传输、解码、缓冲、渲染等很多环节。每一个细分环节,还有更细分的技术模块。比如,前后处理环节有美颜、滤镜、回声消除、噪声抑制等,采集有麦克风阵列等,编解码有VP8、VP9、H.264、H.265等。我们今天汇总了一些能帮助到正在学习或进行音视频开发的实时音视频开发者们的开源项目与几个也在为开源社区贡献力量的商业服务。这些项目分为几类:音视频编解码类、视频前后处理、服务端类等。_voice changer client demo

FastAPI使用异步Redis_fastapi redis-程序员宅基地

文章浏览阅读894次,点赞10次,收藏10次。【代码】FastAPI使用异步Redis。_fastapi redis