Page 1 of 1

KO

Posted: 2024-05-29 10:01
by hou
├── isp.ko ---- isp模块,对应/dev/mpi/rkisp-vir0节点
├── valloc.ko --- buffer管理器,对应/dev/mpi/valloc节点
├── venc.ko --- 编码器模块,对应/dev/mpi/venc
├── vmpi.ko --- 媒体框架, 对应 /dev/mpi/vmpi
├── vpss.ko --- vpss模块,对应 /dev/mpi/vpss
├── vrga.ko --- rga模块,对应 /dev/mpi/vrga
├── vrgn.ko --- rgn模块,对应 /dev/mpi/vrgn
├── vsys.ko --- 系统模块,对应 /dev/mpi/vsys
└── vvi.ko --- vi模块, 对应 /dev/mpi/vvi
你好,demo中的代码好多函数没有开放源码,以.a或.so形式提供。这样的话加载这些ko有什么作用?跟vi相关的demo是不是都需要加载这些ko?

Re: KO

Posted: 2024-05-29 11:50
by Crocodile
hou wrote: 2024-05-29 10:01 ├── isp.ko ---- isp模块,对应/dev/mpi/rkisp-vir0节点
├── valloc.ko --- buffer管理器,对应/dev/mpi/valloc节点
├── venc.ko --- 编码器模块,对应/dev/mpi/venc
├── vmpi.ko --- 媒体框架, 对应 /dev/mpi/vmpi
├── vpss.ko --- vpss模块,对应 /dev/mpi/vpss
├── vrga.ko --- rga模块,对应 /dev/mpi/vrga
├── vrgn.ko --- rgn模块,对应 /dev/mpi/vrgn
├── vsys.ko --- 系统模块,对应 /dev/mpi/vsys
└── vvi.ko --- vi模块, 对应 /dev/mpi/vvi
你好,demo中的代码好多函数没有开放源码,以.a或.so形式提供。这样的话加载这些ko有什么作用?跟vi相关的demo是不是都需要加载这些ko?
您好,目前比较主流的SOC在多媒体上的硬件加速都是使用专用IP核,控制相关往往都是加载驱动(insmod 这些ko)后使用ioctl与/dev下对应的节点进行交互,而.a 和 .so部分就是相关的交互代码,在库中抽象成api提供给客户使用,如果需要使用vi相关的demo加载这些驱动是必要的。

Re: KO

Posted: 2024-05-30 1:45
by hou
demo中的代码好多函数没有开放源码,以.a或.so形式提供。这些.a或.so文件必须存放在/oem/usr/lib路径下吗?存放在板上系统的/lib路径下可以吗?

Re: KO

Posted: 2024-05-30 2:07
by Crocodile
hou wrote: 2024-05-30 1:45 demo中的代码好多函数没有开放源码,以.a或.so形式提供。这些.a或.so文件必须存放在/oem/usr/lib路径下吗?存放在板上系统的/lib路径下可以吗?
/oem 中是为了区分自定义构建的部分(Rockchip特有)和其它从buildroot 构建的bin和lib设计的,如果移动应该放在/usr/lib下,实际操作也有可能遇到链接库错误的情况可以使用 export LD_LIBRARY_PATH=/usr/lib来解决