IPC SDK User Guide
Hardware Configuration Recommendations for Development Environment
64-bit CPU
Ubuntu 20.04 system
8GB RAM
40GB free space for compilation
Software Configuration
SDK Acquisition
Send an email to support@neardi.com to obtain the relevant development materials.
After downloading, check the MD5 code before extracting to see if it matches the one in 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
Extract:
tar zxvf LKD3588-SDK-Linux-IPC-V1.0.tar.gz
Initialize:
cd LKD3588-SDK-Linux-IPC-V1.0
git reset --hard
Switch branch:
branch | explain |
---|---|
lz16000003 | Neardi master branch |
git checkout lz16000003
Compiling the SDK
Select Configuration
./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
Full Automatic Compilation
Full automatic compilation will execute all builds.
./build.sh
Partial Compilation
Compile u-boot
./build.sh clean uboot
./build.sh uboot
Generates image files: output/image/download.bin, output/image/idblock.img, and output/image/uboot.img
Compile kernel
/build.sh clean kernel
./build.sh kernel
Generates image file: output/image/boot.img
Compile rootfs
./build.sh clean rootfs
./build.sh rootfs
After compilation, use the ./build.sh firmware command to package it into rootfs.img Generates image file: output/image/rootfs.img
Compile media
./build.sh clean media
./build.sh media
Storage directory for generated files: output/out/media_out
For more compilation options,
LKD3588-IPC-Software Development Documentation/LKD3588-IPC-Linux Original Development Documentation/Rockchip_Quick_Start_Linux_IPC_SDK_CN.pdf
Flashing the Image
The SDK provides a Windows flashing tool <SDK>/Tools/windows/SocToolKit/SocToolKit.exe
Running the Demo
Network Configuration
ifconfig enP2p33s0 up
udhcpc -i enP2p33s0
Execution result:
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
Copy OV13855 Camera Files
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
Run 3A Server
By default, the IPC APP is already running. Before running the IPC, manually run the 3A server. Therefore, kill the IPC APP first:
ps | grep rkipc
395 root 3482m S rkipc -a /oem/usr/share/iqfiles
622 root 2396 S grep rkipc
kill -9 395
Note that 395 here is the IPC process number, which needs to be changed according to the actual display result.
Start the 3A service
rkaiq_3A_server &
Execution result:
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...
Restart IPC APP
rkipc -a /oem/usr/share/iqfiles/ &
Execution result:
# [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
Access IPC Video Stream
Install VLC on PC
Open Network Stream
Using IQ Tools
Refer to <SDK>LKD3588-SDK-Linux-IPC-V1.0/tools/windows/ISP_AIQ_Tool/AIQTool-v2.0.f-20220826/Doc