IPC SDK使用教程
开发环境硬件配置建议
64 位 CPU
Ubuntu20.04系统
8GB 内存
40GB 空闲空间用来编译
软件配置
SDK获取
发送邮件至 support@neardi.com 获取相关开发资料
下载完成后,在解压前先查看 MD5 码和LKD3588-SDK-Linux-IPC-V1.0.tar.gz.md5sum中是否一致:
$ md5sum LKD3588-SDK-Linux-IPC-V1.0.tar.gz
******************************** LKD3588-SDK-Linux-IPC-V1.0.tar.gz
解压:
tar zxvf LKD3588-SDK-Linux-IPC-V1.0.tar.gz
提取:
cd LKD3588-SDK-Linux-IPC-V1.0
git reset --hard
切换分支:
branch | explain |
---|---|
lz16000003 | Neardi master branch |
git checkout lz16000003
编译 SDK
选择配置
./build.sh lunch
You're building on Linux
Lunch menu...pick a combo:
0. BoardConfig-rk3588-neardi-linux-ipc-lkd3588-f1.mk
Which would you like? [0]: 0
全自动编译
全自动编译会执行所有编译。
./build.sh
部分编译
编译 u-boot
./build.sh clean uboot
./build.sh uboot
生成镜像文件:output/image/download.bin、output/image/idblock.img 和 output/image/uboot.img
编译 kernel
/build.sh clean kernel
./build.sh kernel
生成镜像文件:output/image/boot.img
编译 rootfs
./build.sh clean rootfs
./build.sh rootfs
编译后使用 ./build.sh firmware
命令打包成rootfs.img
生成镜像文件:output/image/rootfs.img
编译 media
./build.sh clean media
./build.sh media
生成文件的存放目录:output/out/media_out
更多编译
LKD3588-IPC-软件开发文档/LKD3588-IPC-Linux原厂开发文档/Rockchip_Quick_Start_Linux_IPC_SDK_CN.pdf
烧录镜像
SDK提供Windows烧写工具<SDK>/Tools/windows/SocToolKit/SocToolKit.exe
运行Demo
配置网络
ifconfig enP2p33s0 up
udhcpc -i enP2p33s0
执行结果
udhcpc: started, v1.27.2
udhcpc: sending discover
udhcpc: sending select for 192.168.1.237
udhcpc: lease of 192.168.1.237 obtained, lease time 86400
deleting routers
adding dns 192.168.1.1
拷贝OV13855 Camera 文件
adb push <SDK>/media/isp/release_camera_engine_rkaiq_rk3588_aarch64-rockchip1031-linux-gnu/isp_iqfiles/ov13855_CMK-OT2016-FV1_default.json /oem/usr/share/iqfiles
运行3A Server
默认情况下,IPC APP已经运行,在IPC运行之前需要手动运行3A server, 因此先kill掉IPC APP
ps | grep rkipc
395 root 3482m S rkipc -a /oem/usr/share/iqfiles
622 root 2396 S grep rkipc
kill -9 395
注意, 此处395是IPC进程号, 需要根据实际显示结果而改变。
启动3A服务
rkaiq_3A_server &
执行结果
Cound not find rkisp dev names, skipped /dev/media0
ERR: Bad media topology for: /dev/media0
Cound not find rkisp dev names, skipped /dev/media1
ERR: Bad media topology for: /dev/media1
DBG: get rkisp-isp-subdev devname: /dev/v4l-subdev3
DBG: get rkisp-input-params devname: /dev/video30
DBG: get rkisp-statistics devname: /dev/video29
DBG: get rkisp_mainpath devname: /dev/video22
rkaiq log level ff0
************************** VERSION INFOS **************************
version release date: 2022-09-20
AIQ: AIQ v3.0x9.1
IQ PARSER: Calib v1.4.8,magicCode:1170944
************************ VERSION INFOS END ************************
DBG: get rkisp-isp-subdev devname: /dev/v4l-subdev7
DBG: get rkisp-input-params devname: /dev/video39
DBG: get rkisp-statistics devname: /dev/video38
DBG: get rkisp_mainpath devname: /dev/video31
DBG: subscribe events from /dev/video30 success !
DBG: device manager start
DBG: rkisp_init engine succeed
DBG: /dev/media2: wait stream start event...
重启IPC APP
rkipc -a /oem/usr/share/iqfiles/ &
执行结果
# [rkipc.c][main]:main begin
[rkipc.c][main]:rkipc_ini_path_ is (null), rkipc_iq_file_path_ is /oem/usr/share/iqfiles/, rkipc_log_level is 3
[param.c][rk_param_init]:rk_param_init
[param.c][rk_param_init]:g_ini_path_ is /userdata/rkipc.ini
[param.c][rk_param_dump]:section_num is 35
[param.c][rk_param_dump]:section_name is audio.0
[param.c][rk_param_dump]:audio.0:enable = 1
......
[DEBUG rtsp_msg.c:865:rtsp_msg_parse_from_array]
TEARDOWN rtsp://192.168.1.237:554/live/0 RTSP/1.0
CSeq: 6
User-Agent: LibVLC/3.0.17.3 (LIVE555 Streaming Media v2016.11.28)
Session: 12345678
[DEBUG rtsp_demo.c:1048:rtsp_handle_TEARDOWN]
[DEBUG rtsp_msg.c:998:rtsp_msg_build_to_array]
RTSP/1.0 200 OK
CSeq: 6
Date: Fri Jan 1 12:19:35 2021
Session: 12345678
Server: rtsp_demo
获取IPC Video Streamer
PC安装VLC
打开网络流
IQ Tools使用
参阅<SDK>LKD3588-SDK-Linux-IPC-V1.0/tools/windows/ISP_AIQ_Tool/AIQTool-v2.0.f-20220826/Doc