luckfox csi 카메라 테스트
step 1. 업데이트
USB-C에 겁나 깊이 들어가도록 꽂아야 인식을 한다.
귀찮으면 꽂고 BOOT 누른채로 RESET 눌러주면 시리얼로 포트에서는 다음과 같이 뜨고 있게 된다.
| DDR 306b9977f5 wesley.yao 23/12/21-09:28:37,fwver: v1.15 S5P1 4x f967 rgef1 DDRConf2 DDR3, BW=16 Col=10 Bk=8 CS0 Row=14 CS=1 Size=256MB 924MHz DDR bin out U-Boot SPL board init U-Boot SPL 2017.09 (Jun 09 2025 - 17:15:21) unknown raw ID 0 0 0 Trying to boot from MMC2 Card did not respond to voltage select! mmc_init: -95, time 20 Card did not respond to voltage select! mmc_init: -95, time 20 spl: mmc init failed with error: -95 Trying to boot from MMC1 Best phase range 0-270 (25 len) Successfully tuned phase to 135, used 4ms ENVF: Primary 0x00000000 - 0x00008000 ENVF: Primary 0x00000000 - 0x00008000 No misc partition Trying fit image at 0x440 sector ## Verified-boot: 0 ## Checking uboot 0x00200000 (lzma @0x00400000) ... sha256(6d468f8f8d...) + sha256(2939adcf1a...) + OK ## Checking fdt 0x00261190 ... sha256(9f596c5683...) + OK Total: 405.594/437.396 ms Jumping to U-Boot(0x00200000) U-Boot 2017.09 (Jun 09 2025 - 17:15:21 +0800) Model: Rockchip RV1106 EVB Board MPIDR: 0xf00 PreSerial: 2, raw, 0xff4c0000 DRAM: 256 MiB Sysmem: init Relocation Offset: 0fd80000 Relocation fdt: 0edf9f78 - 0edfede8 CR: M/C/I Using default environment mmc@ffa90000: 0, mmc@ffaa0000: 1 Best phase range 0-270 (25 len) Successfully tuned phase to 135, used 4ms ENVF: Primary 0x00000000 - 0x00008000 ENVF: Primary 0x00000000 - 0x00008000 Bootdev(atags): mmc 0 MMC0: HS200, 200Mhz PartType: ENV DM: v2 No misc partition boot mode: None RESC: 'boot', blk@0x00001ed1 resource: sha256+ FIT: no signed, no conf required DTB: rk-kernel.dtb HASH(c): OK Model: Luckfox Pico Ultra W Device 'gpio@ff380000': seq 0 is in use by 'gpio@ff380000' gpio: pin 1 (gpio 1) value is 1 download key pressed... no rockusb, entering download mode... RKUARTRKUARTRKUARTRKUARTRKUARTRKUARTRKUARTRKUART |
그러면 메뉴얼 대로 윈도우에서 업데이트 하며 끝 (윈도우에서 되서 귀찮으니 리눅스에서 안해봄..)
소비전력은 1.2W 정도 4.5V / 280mA 뜨는데 허브 쓰지 말고 직접 본체에 꽂아야 할 듯.
[링크 : https://wiki.luckfox.com/Luckfox-Pico-Ultra/Flash-image/]
step 2. luckfox-config 에서 csi 활성화
로그인 해서는 csi를 활성화 해주면 되는 것 같은데
[링크 : https://wiki.luckfox.com/Luckfox-Lyra/luckfox-config/]
| [root@luckfox root]# luckfox-config |



카메라가 인식되면 /userdata 아래에 rkipc.ini가 생긴다는데 그건 좀 뻥같고(!)
[링크 : https://wiki.luckfox.com/Luckfox-Pico-Ultra/CSI-Camera]
video0, video1, video2 가 csi 활성화 하면 생기는 것 같다.
| [root@luckfox root]# cd /userdata/ [root@luckfox userdata]# ls -al total 77 drwxr-xr-x 6 root root 1024 Jan 1 2021 . drwxr-xr-x 21 root root 4096 Jan 1 2021 .. -rw-r--r-- 1 root root 18 Jan 1 2021 ethaddr.txt -rw-r--r-- 1 1005 1005 38454 May 20 2025 image.bmp drwx------ 2 root root 12288 Jun 9 2025 lost+found -rw-r--r-- 1 root root 16542 Jan 1 2021 rkipc.ini drwxr-xr-x 2 root root 1024 Jan 1 2021 video0 drwxr-xr-x 2 root root 1024 Jan 1 2021 video1 drwxr-xr-x 2 root root 1024 Jan 1 2021 video2 -rw-r--r-- 1 root root 145 Jan 1 2021 wpa_supplicant.conf |
아래는 rkipc.ini 의 csi 설정별 내용.
| csi enable 시 | csi disable 시 |
| [root@luckfox userdata]# cat rkipc.ini [audio.0] enable = 0 card_name = hw:0,0 encode_type = G711A format = S16 sample_rate = 8000 channels = 1 frame_size = 1152 bit_rate = 16000 input = mic_in volume = 50 enable_aed = 0 enable_bcd = 0 enable_vqe = 1 vqe_cfg = /oem/usr/share/vqefiles/config_aivqe.json [video.source] enable_aiq = 1 enable_vo = 0 vo_dev_id = 3 ; 0 is hdmi, 3 is mipi enable_ivs = 1 enable_jpeg = 1 enable_venc_0 = 1 enable_venc_1 = 1 enable_venc_2 = 0 enable_npu = 0 npu_fps = 10 enable_rtsp = 1 enable_rtmp = 0 rotation = 0 ; available value:0 90 180 270 [video.0] buffer_size = 1492992 ; w * h / 2 buffer_count = 4 enable_refer_buffer_share = 1 stream_type = mainStream video_type = compositeStream max_width = 2304 max_height = 1296 width = 2304 height = 1296 rc_mode = CBR rc_quality = high src_frame_rate_den = 1 src_frame_rate_num = 25 dst_frame_rate_den = 1 dst_frame_rate_num = 25 target_rate = 0 mid_rate = 1024 max_rate = 2048 min_rate = 0 output_data_type = H.265 smart = close h264_profile = high gop = 50 smartp_viridrlen = 25 gop_mode = normalP stream_smooth = 50 enable_motion_deblur = 1 motion_deblur_strength = 3 enable_motion_static_switch = 0 frame_min_i_qp = 26 frame_min_qp = 28 frame_max_i_qp = 51 frame_max_qp = 51 scalinglist = 0 enable_debreath_effect = 0 debreath_effect_strength = 16 thrd_i = 0,0,0,0,3,3,5,5,8,8,8,15,15,20,25,25 thrd_p = 0,0,0,0,3,3,5,5,8,8,8,15,15,20,25,25 aq_step_i = -8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,7,8 aq_step_p = -8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,7,8 qbias_enable = 1 qbias_i = 171 qbias_p = 85 flt_str_i = 0 flt_str_p = 0 cu_dqp = 1 anti_ring = 2 anti_line = 2 lambds = 4 [video.1] input_buffer_count = 2 ; only wrap can use one buffer buffer_size = 202752 ; w * h / 2 buffer_count = 4 enable_refer_buffer_share = 1 stream_type = subStream video_type = compositeStream max_width = 704 max_height = 576 width = 704 height = 576 rc_mode = CBR rc_quality = high src_frame_rate_den = 1 src_frame_rate_num = 30 dst_frame_rate_den = 1 dst_frame_rate_num = 30 target_rate = 0 mid_rate = 256 max_rate = 512 min_rate = 0 output_data_type = H.265 smart = close h264_profile = high gop = 50 smartp_viridrlen = 25 gop_mode = normalP stream_smooth = 50 enable_motion_deblur = 1 motion_deblur_strength = 3 enable_motion_static_switch = 0 frame_min_i_qp = 26 frame_min_qp = 28 frame_max_i_qp = 51 frame_max_qp = 51 scalinglist = 0 enable_debreath_effect = 0 debreath_effect_strength = 16 cu_dqp = 1 anti_ring = 2 anti_line = 2 lambds = 4 [video.2] max_width = 960 max_height = 540 width = 960 height = 540 [ivs] smear = 0 weightp = 0 md = 1 od = 1 md_sensibility = 3 ;available: 1 2 3,max 3 [video.jpeg] width = 1920 height = 1080 jpeg_buffer_size = 1048576 ; 1024KB jpeg_qfactor = 70 enable_cycle_snapshot = 0 snapshot_interval_ms = 1000 [isp] scenario = normal ; normal or custom1 init_form_ini = 1 normal_scene = day custom1_scene = night ircut_open_gpio = 36 ircut_close_gpio = 35 ; isp.0 [isp.0.adjustment] contrast = 50 brightness = 50 saturation = 50 sharpness = 50 fps = 25 hue = 50 [isp.0.exposure] iris_type = auto exposure_mode = auto gain_mode = auto auto_iris_level = 5 auto_exposure_enabled = 1 audo_gain_enabled = 1 exposure_time = 1/6 exposure_gain = 1 [isp.0.night_to_day] night_to_day = day night_to_day_filter_level = 5 night_to_day_filter_time = 5 dawn_time = 07:00:00 dusk_time = 18:00:00 ircut_filter_action = day over_exposure_suppress = open over_exposure_suppress_type = auto fill_light_mode = IR brightness_adjustment_mode = auto light_brightness = 1 distance_level = 1 [isp.0.blc] blc_region = close blc_strength = 1 wdr = close wdr_level = 0 hdr = close hdr_level = 1 hlc = close hlc_level = 0 dark_boost_level = 0 position_x = 0 position_y = 0 blc_region_width = 120 blc_region_high = 92 [isp.0.white_blance] white_blance_style = autoWhiteBalance white_blance_red = 50 white_blance_green = 50 white_blance_blue = 50 [isp.0.enhancement] noise_reduce_mode = close denoise_level = 50 spatial_denoise_level = 50 temporal_denoise_level = 50 dehaze = close dehaze_level = 0 dis = close gray_scale_mode = [0-255] distortion_correction = close ldch_level = 0 [isp.0.video_adjustment] image_flip = close scene_mode = indoor power_line_frequency_mode = PAL(50HZ) [isp.0.auto_focus] af_mode = semi-auto zoom_level = 0 focus_level = 0 ; isp.1 [isp.1.adjustment] contrast = 50 brightness = 75 saturation = 50 sharpness = 50 fps = 25 hue = 50 [isp.1.exposure] iris_type = auto exposure_mode = auto gain_mode = auto auto_iris_level = 5 auto_exposure_enabled = 1 audo_gain_enabled = 1 exposure_time = 1/6 exposure_gain = 1 [isp.1.night_to_day] night_to_day = day night_to_day_filter_level = 5 night_to_day_filter_time = 5 dawn_time = 07:00:00 dusk_time = 18:00:00 ircut_filter_action = day over_exposure_suppress = open over_exposure_suppress_type = auto fill_light_mode = IR brightness_adjustment_mode = auto light_brightness = 1 distance_level = 1 [isp.1.blc] blc_region = close blc_strength = 1 wdr = close wdr_level = 0 hdr = close hdr_level = 1 hlc = close hlc_level = 0 dark_boost_level = 0 position_x = 0 position_y = 0 blc_region_width = 120 blc_region_high = 92 [isp.1.white_blance] white_blance_style = autoWhiteBalance white_blance_red = 50 white_blance_green = 50 white_blance_blue = 50 [isp.1.enhancement] noise_reduce_mode = close denoise_level = 50 spatial_denoise_level = 50 temporal_denoise_level = 50 dehaze = close dehaze_level = 0 dis = close gray_scale_mode = [0-255] distortion_correction = close ldch_level = 0 [isp.1.video_adjustment] image_flip = close scene_mode = indoor power_line_frequency_mode = PAL(50HZ) [isp.1.auto_focus] af_mode = semi-auto zoom_level = 0 focus_level = 0 [storage] mount_path = /userdata free_size_del_min = 500; MB free_size_del_max = 1000; MB num_limit_enable = 1; limit by file num [storage.0] enable = 0 folder_name = video0 file_format = mp4 ; flv,ts file_duration = 60 video_quota = 30 file_max_num = 300 [storage.1] enable = 0 folder_name = video1 file_format = mp4 ; flv,ts file_duration = 60 video_quota = 30 file_max_num = 300 [storage.2] enable = 0 folder_name = video2 file_format = mp4 ; flv,ts file_duration = 60 video_quota = 30 file_max_num = 300 [system.device_info] deivce_name = RK IP Camera telecontrol_id = 88 model = RK-003 serial_number = RK-003-A firmware_version = V0.2.6 build 202108 encoder_version = V1.0 build 202108 web_version = V2.12.2 build 202108 plugin_version = V1.0.0.0 channels_number = 1 hard_disks_number = 1 alarm_inputs_number = 0 alarm_outputs_number = 0 firmware_version_info = CP-3-B manufacturer = Rockchip hardware_id = c3d9b8674f4b94f6 user_num = 1 [capability.video] 0 = {"disabled":[{"name":"sStreamType","options":{"subStream":{"sSmart":"close"},"thirdStream":{"sSmart":"close"}},"type":"disabled/limit"},{"name":"sRCMode","options":{"CBR":{"sRCQuality":null}},"type":"disabled"},{"name":"sOutputDataType","options":{"H.265":{"sH264Profile":null}},"type":"disabled"},{"name":"unspport","options":{"iStreamSmooth":null,"sVideoType":null},"type":"disabled"}],"dynamic":{"sSmart":{"open":{"iMinRate":{"dynamicRange":{"max":"iMaxRate","maxRate":1,"min":"iMaxRate","minRate":0.125},"type":"dynamicRange"}}},"sStreamType":{"mainStream":{"iMaxRate":{"options":[256,512,1024,2048,3072,4096,6144],"type":"options"},"sResolution":{"options":["2304*1296","1920*1080","1280*720","960*540","640*360","320*240"],"type":"options"}},"subStream":{"iMaxRate" 1 = :{"options":[128,256,512],"type":"options"},"sResolution":{"options":["704*576","640*480","352*288","320*240"],"type":"options"}},"thirdStream":{"iMaxRate":{"options":[256,512],"type":"options"},"sResolution":{"options":["416*416"],"type":"options"}}}},"layout":{"encoder":["sStreamType","sVideoType","sResolution","sRCMode","sRCQuality","sFrameRate","sOutputDataType","sSmart","sH264Profile","sGOPMode","iMaxRate","iGOP","iStreamSmooth"]},"static":{"iGOP":{"range":{"max":400,"min":1},"type":"range"},"iStreamSmooth":{"range":{"max":100,"min":1,"step":1},"type":"range"},"sFrameRate":{"dynamicRange":{"max":"sFrameRateIn","maxRate":1},"options":["1/2","1","2","4","6","8","10","12","14","16","18","20","25","30"],"type":"options/dynamicRange"},"sH264Profile":{"options":["high","main","baseline"],"type":"options"},"sOutputDataType":{"options" 2 = :["H.264","H.265"],"type":"options"},"sRCMode":{"options":["CBR","VBR"],"type":"options"},"sRCQuality":{"options":["lowest","lower","low","medium","high","higher","highest"],"type":"options"},"sGOPMode":{"options":["normalP","smartP"],"type":"options"},"sSmart":{"options":["open","close"],"type":"options"},"sStreamType":{"options":["mainStream","subStream","thirdStream"],"type":"options"},"sVideoType":{"options":["videoStream","compositeStream"],"type":"options"}}} [capability.image_adjustment] 0 = {"layout":{"image_adjustment":["iBrightness","iContrast","iSaturation","iSharpness","iHue"]},"static":{"iBrightness":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iContrast":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iHue":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iSaturation":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iSharpness":{"range":{"max":100,"min":0,"step":1},"type":"range"}}} [capability.image_blc] 0 = {"disabled":[{"name":"sHLC","options":{"open":{"sBLCRegion":null}},"type":"disabled"},{"name":"sBLCRegion","options":{"open":{"iDarkBoostLevel":null,"iHLCLevel":null,"sHLC":null}},"type":"disabled"}],"dynamic":{"sBLCRegion":{"open":{"iBLCStrength":{"range":{"max":100,"min":0,"step":1},"type":"range"}}},"sHDR":{"HDR2":{"iHDRLevel":{"options":[1,2,3,4],"type":"options"}},"close":{"sBLCRegion":{"options":["close","open"],"type":"options"},"sHLC":{"options" 1 = :["close","open"],"type":"options"}}},"sHLC":{"open":{"iDarkBoostLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iHLCLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}}},"sWDR":{"open":{"iWDRLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}}}},"layout":{"image_blc":["sHDR","iHDRLevel","sBLCRegion","iBLCStrength","sHLC","iHLCLevel"]},"static":{"sHDR":{"options":["close","HDR2"],"type":"options"}}} [capability.image_enhancement] 0 = {"dynamic":{"sDehaze":{"open":{"iDehazeLevel":{"range":{"max":10,"min":0,"step":1},"type":"range"}}},"sDistortionCorrection":{"FEC":{"iFecLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}},"LDCH":{"iLdchLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}}},"sNoiseReduceMode":{"2dnr":{"iSpatialDenoiseLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}},"3dnr":{"iTemporalDenoiseLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}},"mixnr":{"iSpatialDenoiseLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iTemporalDenoiseLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}}}},"layout" 1 = :{"image_enhancement":["sNoiseReduceMode","iSpatialDenoiseLevel","iTemporalDenoiseLevel","sDehaze","iDehazeLevel","sGrayScaleMode","sDistortionCorrection","iLdchLevel","iFecLevel"]},"static":{"sDIS":{"options":["open","close"],"type":"options"},"sDehaze":{"options":["open","close","auto"],"type":"options"},"sDistortionCorrection":{"options":["LDCH","close"],"type":"options"},"sFEC":{"options":["open","close"],"type":"options"},"sGrayScaleMode":{"options":["[0-255]","[16-235]"],"type":"options"},"sNoiseReduceMode":{"options":["close","2dnr","3dnr","mixnr"],"type":"options"}}} [capability.image_exposure] 0 = {"dynamic":{"sExposureMode":{"auto":{"iAutoIrisLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}},"manual":{"sExposureTime":{"options":["1","1/3","1/6","1/12","1/25","1/50","1/100","1/150","1/200","1/250","1/500","1/750","1/1000","1/2000","1/4000","1/10000","1/100000"],"type":"options"},"sGainMode":{"options":["auto","manual"],"type":"options"}}},"sGainMode":{"manual":{"iExposureGain":{"range":{"max":100,"min":1,"step":1},"type":"range"}}}},"layout":{"image_exposure":["sExposureMode","sExposureTime","sGainMode","iExposureGain","iFPS"]},"static":{"sExposureMode":{"options":["auto","manual"],"type":"options"},"iFPS":{"range":{"max":30,"min":0,"step":1},"type":"range"}}} [capability.image_night_to_day] 0 = {"disabled":[{"name":"sNightToDay","options":{"day":{"iLightBrightness":null,"sFillLightMode":null},"night":{"iDarkBoostLevel":null,"iHDRLevel":null,"iHLCLevel":null,"sHDR":null,"sHLC":"close"}},"type":"disabled"}],"dynamic":{"sNightToDay":{"auto":{"iNightToDayFilterLevel":{"options":[0,1,2,3,4,5,6,7],"type":"options"},"iNightToDayFilterTime":{"range":{"max":10,"min":3,"step":1},"type":"range"}},"schedule":{"sDawnTime":{"input":"time","type":"input"},"sDuskTime":{"input":"time","type":"input"}}},"sOverexposeSuppress":{"open" 1 = :{"sOverexposeSuppressType":{"options":["auto","manual"],"type":"options"}}},"sOverexposeSuppressType":{"manual":{"iDistanceLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}}}},"layout":{"image_night_to_day":["sNightToDay","iNightToDayFilterLevel","iNightToDayFilterTime","sDawnTime","sDuskTime","sFillLightMode","iLightBrightness"]},"static":{"iLightBrightness":{"range":{"max":100,"min":0,"step":10},"type":"range"},"sNightToDay":{"options":["day","night"],"type":"options"},"sFillLightMode":{"type":"options","options":["IR"]}}} [capability.image_video_adjustment] 0 = {"layout":{"image_video_adjustment":["sPowerLineFrequencyMode","sImageFlip","iImageRotation"]},"static":{"sImageFlip":{"options":["close","flip","mirror","centrosymmetric"],"type":"options"},"sPowerLineFrequencyMode":{"options":["PAL(50HZ)","NTSC(60HZ)"],"type":"options"},"sSceneMode":{"options":["indoor","outdoor"],"type":"options"},"iImageRotation":{"options":[0,90,180,270],"type":"options"}}} [capability.image_white_blance] 0 = {"dynamic":{"sWhiteBlanceStyle":{"manualWhiteBalance":{"iWhiteBalanceBlue":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iWhiteBalanceGreen":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iWhiteBalanceRed":{"range":{"max":100,"min":0,"step":1},"type":"range"}}}},"layout":{"image_white_blance":["sWhiteBlanceStyle","iWhiteBalanceRed","iWhiteBalanceGreen","iWhiteBalanceBlue"]},"static":{"sWhiteBlanceStyle":{"options":["manualWhiteBalance","autoWhiteBalance","lockingWhiteBalance","fluorescentLamp","incandescent","warmLight","naturalLight"],"type":"options"}}} [user.0] user_name = admin password = YWRtaW4= user_level = 1 ; administrator=0 operator=1 user=2 [osd.common] enable_osd = 1 is_presistent_text = 1 attribute = transparent/not-flashing font_size = 32 font_color_mode = customize font_color = fff799 alignment = customize boundary = 0 font_path = /oem/usr/share/simsun_en.ttf normalized_screen_width = 704 normalized_screen_height = 480 [osd.0] type = channelName enabled = 0 position_x = 1104 position_y = 640 display_text = Camera 01 [osd.1] type = dateTime enabled = 1 position_x = 16 position_y = 16 date_style = CHR-YYYY-MM-DD time_style = 24hour display_week_enabled = 0 [osd.2] type = character enabled = 0 position_x = 0 position_y = 0 display_text = null [osd.3] type = character enabled = 0 position_x = 0 position_y = 0 display_text = null [osd.4] type = privacyMask enabled = 0 position_x = 0 position_y = 0 width = 0 height = 0 [osd.5] type = privacyMask enabled = 0 position_x = 0 position_y = 0 width = 0 height = 0 [osd.6] type = image enabled = 0 position_x = 16 position_y = 640 image_path = /userdata/image.bmp [event.regional_invasion] enabled = 1 position_x = 0 position_y = 0 width = 700 height = 560 proportion = 1 sensitivity_level = 90 time_threshold = 1 rockiva_model_type = small ;big medium small [roi.0] stream_type = mainStream id = 1 enabled = 0 name = test position_x = 0 position_y = 0 width = 0 height = 0 quality_level = 3 [roi.1] stream_type = mainStream id = 2 enabled = 0 name = test position_x = 0 position_y = 0 width = 0 height = 0 quality_level = 3 [roi.2] stream_type = subStream id = 1 enabled = 0 name = test position_x = 0 position_y = 0 width = 0 height = 0 quality_level = 3 [roi.3] stream_type = subStream id = 2 enabled = 0 name = test position_x = 0 position_y = 0 width = 0 height = 0 quality_level = 3 [roi.4] stream_type = thirdStream id = 1 enabled = 0 name = test position_x = 0 position_y = 0 width = 0 height = 0 quality_level = 3 [roi.5] stream_type = thirdStream id = 2 enabled = 0 name = test position_x = 0 position_y = 0 width = 0 height = 0 quality_level = 3 [region_clip.1] enabled = 0 position_x = 0 position_y = 0 width = 640 height = 480 [network.ntp] enable = 1 refresh_time_s = 60 ntp_server = 119.28.183.184 |
[root@luckfox userdata]# cat rkipc.ini [audio.0] enable = 0 card_name = hw:0,0 encode_type = G711A format = S16 sample_rate = 8000 channels = 1 frame_size = 1152 bit_rate = 16000 input = mic_in volume = 50 enable_aed = 0 enable_bcd = 0 enable_vqe = 1 vqe_cfg = /oem/usr/share/vqefiles/config_aivqe.json [video.source] enable_aiq = 1 enable_vo = 0 vo_dev_id = 3 enable_ivs = 1 enable_jpeg = 1 enable_venc_0 = 1 enable_venc_1 = 1 enable_venc_2 = 0 enable_npu = 0 npu_fps = 10 enable_rtsp = 1 enable_rtmp = 0 rotation = 0 [video.0] buffer_size = 1492992 buffer_count = 4 enable_refer_buffer_share = 1 stream_type = mainStream video_type = compositeStream max_width = 2304 max_height = 1296 width = 2304 height = 1296 rc_mode = CBR rc_quality = high src_frame_rate_den = 1 src_frame_rate_num = 25 dst_frame_rate_den = 1 dst_frame_rate_num = 25 target_rate = 0 mid_rate = 1024 max_rate = 2048 min_rate = 0 output_data_type = H.265 smart = close h264_profile = high gop = 50 smartp_viridrlen = 25 gop_mode = normalP stream_smooth = 50 enable_motion_deblur = 1 motion_deblur_strength = 3 enable_motion_static_switch = 0 frame_min_i_qp = 26 frame_min_qp = 28 frame_max_i_qp = 51 frame_max_qp = 51 scalinglist = 0 enable_debreath_effect = 0 debreath_effect_strength = 16 thrd_i = 0,0,0,0,3,3,5,5,8,8,8,15,15,20,25,25 thrd_p = 0,0,0,0,3,3,5,5,8,8,8,15,15,20,25,25 aq_step_i = -8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,7,8 aq_step_p = -8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,7,8 qbias_enable = 1 qbias_i = 171 qbias_p = 85 flt_str_i = 0 flt_str_p = 0 cu_dqp = 1 anti_ring = 2 anti_line = 2 lambds = 4 [video.1] input_buffer_count = 2 buffer_size = 202752 buffer_count = 4 enable_refer_buffer_share = 1 stream_type = subStream video_type = compositeStream max_width = 704 max_height = 576 width = 704 height = 576 rc_mode = CBR rc_quality = high src_frame_rate_den = 1 src_frame_rate_num = 30 dst_frame_rate_den = 1 dst_frame_rate_num = 30 target_rate = 0 mid_rate = 256 max_rate = 512 min_rate = 0 output_data_type = H.265 smart = close h264_profile = high gop = 50 smartp_viridrlen = 25 gop_mode = normalP stream_smooth = 50 enable_motion_deblur = 1 motion_deblur_strength = 3 enable_motion_static_switch = 0 frame_min_i_qp = 26 frame_min_qp = 28 frame_max_i_qp = 51 frame_max_qp = 51 scalinglist = 0 enable_debreath_effect = 0 debreath_effect_strength = 16 cu_dqp = 1 anti_ring = 2 anti_line = 2 lambds = 4 [video.2] max_width = 960 max_height = 540 width = 960 height = 540 [ivs] smear = 0 weightp = 0 md = 1 od = 1 md_sensibility = 3 [video.jpeg] width = 1920 height = 1080 jpeg_buffer_size = 1048576 jpeg_qfactor = 70 enable_cycle_snapshot = 0 snapshot_interval_ms = 1000 [isp] scenario = normal init_form_ini = 1 normal_scene = day custom1_scene = night ircut_open_gpio = 36 ircut_close_gpio = 35 [isp.0.adjustment] contrast = 50 brightness = 50 saturation = 50 sharpness = 50 fps = 25 hue = 50 [isp.0.exposure] iris_type = auto exposure_mode = auto gain_mode = auto auto_iris_level = 5 auto_exposure_enabled = 1 audo_gain_enabled = 1 exposure_time = 1/6 exposure_gain = 1 [isp.0.night_to_day] night_to_day = day night_to_day_filter_level = 5 night_to_day_filter_time = 5 dawn_time = 07:00:00 dusk_time = 18:00:00 ircut_filter_action = day over_exposure_suppress = open over_exposure_suppress_type = auto fill_light_mode = IR brightness_adjustment_mode = auto light_brightness = 1 distance_level = 1 [isp.0.blc] blc_region = close blc_strength = 1 wdr = close wdr_level = 0 hdr = close hdr_level = 1 hlc = close hlc_level = 0 dark_boost_level = 0 position_x = 0 position_y = 0 blc_region_width = 120 blc_region_high = 92 [isp.0.white_blance] white_blance_style = autoWhiteBalance white_blance_red = 50 white_blance_green = 50 white_blance_blue = 50 [isp.0.enhancement] noise_reduce_mode = close denoise_level = 50 spatial_denoise_level = 50 temporal_denoise_level = 50 dehaze = close dehaze_level = 0 dis = close gray_scale_mode = [0-255] distortion_correction = close ldch_level = 0 [isp.0.video_adjustment] image_flip = close scene_mode = indoor power_line_frequency_mode = PAL(50HZ) [isp.0.auto_focus] af_mode = semi-auto zoom_level = 0 focus_level = 0 [isp.1.adjustment] contrast = 50 brightness = 75 saturation = 50 sharpness = 50 fps = 25 hue = 50 [isp.1.exposure] iris_type = auto exposure_mode = auto gain_mode = auto auto_iris_level = 5 auto_exposure_enabled = 1 audo_gain_enabled = 1 exposure_time = 1/6 exposure_gain = 1 [isp.1.night_to_day] night_to_day = day night_to_day_filter_level = 5 night_to_day_filter_time = 5 dawn_time = 07:00:00 dusk_time = 18:00:00 ircut_filter_action = day over_exposure_suppress = open over_exposure_suppress_type = auto fill_light_mode = IR brightness_adjustment_mode = auto light_brightness = 1 distance_level = 1 [isp.1.blc] blc_region = close blc_strength = 1 wdr = close wdr_level = 0 hdr = close hdr_level = 1 hlc = close hlc_level = 0 dark_boost_level = 0 position_x = 0 position_y = 0 blc_region_width = 120 blc_region_high = 92 [isp.1.white_blance] white_blance_style = autoWhiteBalance white_blance_red = 50 white_blance_green = 50 white_blance_blue = 50 [isp.1.enhancement] noise_reduce_mode = close denoise_level = 50 spatial_denoise_level = 50 temporal_denoise_level = 50 dehaze = close dehaze_level = 0 dis = close gray_scale_mode = [0-255] distortion_correction = close ldch_level = 0 [isp.1.video_adjustment] image_flip = close scene_mode = indoor power_line_frequency_mode = PAL(50HZ) [isp.1.auto_focus] af_mode = semi-auto zoom_level = 0 focus_level = 0 [storage] mount_path = /userdata free_size_del_min = 500 free_size_del_max = 1000 num_limit_enable = 1 [storage.0] enable = 0 folder_name = video0 file_format = mp4 file_duration = 60 video_quota = 30 file_max_num = 300 [storage.1] enable = 0 folder_name = video1 file_format = mp4 file_duration = 60 video_quota = 30 file_max_num = 300 [storage.2] enable = 0 folder_name = video2 file_format = mp4 file_duration = 60 video_quota = 30 file_max_num = 300 [system.device_info] deivce_name = RK IP Camera telecontrol_id = 88 model = RK-003 serial_number = RK-003-A firmware_version = V0.2.6 build 202108 encoder_version = V1.0 build 202108 web_version = V2.12.2 build 202108 plugin_version = V1.0.0.0 channels_number = 1 hard_disks_number = 1 alarm_inputs_number = 0 alarm_outputs_number = 0 firmware_version_info = CP-3-B manufacturer = Rockchip hardware_id = c3d9b8674f4b94f6 user_num = 1 [capability.video] 0 = {"disabled":[{"name":"sStreamType","options":{"subStream":{"sSmart":"close"},"thirdStream":{"sSmart":"close"}},"type":"disabled/limit"},{"name":"sRCMode","options":{"CBR":{"sRCQuality":null}},"type":"disabled"},{"name":"sOutputDataType","options":{"H.265":{"sH264Profile":null}},"type":"disabled"},{"name":"unspport","options":{"iStreamSmooth":null,"sVideoType":null},"type":"disabled"}],"dynamic":{"sSmart":{"open":{"iMinRate":{"dynamicRange":{"max":"iMaxRate","maxRate":1,"min":"iMaxRate","minRate":0.125},"type":"dynamicRange"}}},"sStreamType":{"mainStream":{"iMaxRate":{"options":[256,512,1024,2048,3072,4096,6144],"type":"options"},"sResolution":{"options":["2304*1296","1920*1080","1280*720","960*540","640*360","320*240"],"type":"options"}},"subStream":{"iMaxRate" 1 = :{"options":[128,256,512],"type":"options"},"sResolution":{"options":["704*576","640*480","352*288","320*240"],"type":"options"}},"thirdStream":{"iMaxRate":{"options":[256,512],"type":"options"},"sResolution":{"options":["416*416"],"type":"options"}}}},"layout":{"encoder":["sStreamType","sVideoType","sResolution","sRCMode","sRCQuality","sFrameRate","sOutputDataType","sSmart","sH264Profile","sGOPMode","iMaxRate","iGOP","iStreamSmooth"]},"static":{"iGOP":{"range":{"max":400,"min":1},"type":"range"},"iStreamSmooth":{"range":{"max":100,"min":1,"step":1},"type":"range"},"sFrameRate":{"dynamicRange":{"max":"sFrameRateIn","maxRate":1},"options":["1/2","1","2","4","6","8","10","12","14","16","18","20","25","30"],"type":"options/dynamicRange"},"sH264Profile":{"options":["high","main","baseline"],"type":"options"},"sOutputDataType":{"options" 2 = :["H.264","H.265"],"type":"options"},"sRCMode":{"options":["CBR","VBR"],"type":"options"},"sRCQuality":{"options":["lowest","lower","low","medium","high","higher","highest"],"type":"options"},"sGOPMode":{"options":["normalP","smartP"],"type":"options"},"sSmart":{"options":["open","close"],"type":"options"},"sStreamType":{"options":["mainStream","subStream","thirdStream"],"type":"options"},"sVideoType":{"options":["videoStream","compositeStream"],"type":"options"}}} [capability.image_adjustment] 0 = {"layout":{"image_adjustment":["iBrightness","iContrast","iSaturation","iSharpness","iHue"]},"static":{"iBrightness":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iContrast":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iHue":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iSaturation":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iSharpness":{"range":{"max":100,"min":0,"step":1},"type":"range"}}} [capability.image_blc] 0 = {"disabled":[{"name":"sHLC","options":{"open":{"sBLCRegion":null}},"type":"disabled"},{"name":"sBLCRegion","options":{"open":{"iDarkBoostLevel":null,"iHLCLevel":null,"sHLC":null}},"type":"disabled"}],"dynamic":{"sBLCRegion":{"open":{"iBLCStrength":{"range":{"max":100,"min":0,"step":1},"type":"range"}}},"sHDR":{"HDR2":{"iHDRLevel":{"options":[1,2,3,4],"type":"options"}},"close":{"sBLCRegion":{"options":["close","open"],"type":"options"},"sHLC":{"options" 1 = :["close","open"],"type":"options"}}},"sHLC":{"open":{"iDarkBoostLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iHLCLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}}},"sWDR":{"open":{"iWDRLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}}}},"layout":{"image_blc":["sHDR","iHDRLevel","sBLCRegion","iBLCStrength","sHLC","iHLCLevel"]},"static":{"sHDR":{"options":["close","HDR2"],"type":"options"}}} [capability.image_enhancement] 0 = {"dynamic":{"sDehaze":{"open":{"iDehazeLevel":{"range":{"max":10,"min":0,"step":1},"type":"range"}}},"sDistortionCorrection":{"FEC":{"iFecLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}},"LDCH":{"iLdchLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}}},"sNoiseReduceMode":{"2dnr":{"iSpatialDenoiseLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}},"3dnr":{"iTemporalDenoiseLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}},"mixnr":{"iSpatialDenoiseLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iTemporalDenoiseLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}}}},"layout" 1 = :{"image_enhancement":["sNoiseReduceMode","iSpatialDenoiseLevel","iTemporalDenoiseLevel","sDehaze","iDehazeLevel","sGrayScaleMode","sDistortionCorrection","iLdchLevel","iFecLevel"]},"static":{"sDIS":{"options":["open","close"],"type":"options"},"sDehaze":{"options":["open","close","auto"],"type":"options"},"sDistortionCorrection":{"options":["LDCH","close"],"type":"options"},"sFEC":{"options":["open","close"],"type":"options"},"sGrayScaleMode":{"options":["[0-255]","[16-235]"],"type":"options"},"sNoiseReduceMode":{"options":["close","2dnr","3dnr","mixnr"],"type":"options"}}} [capability.image_exposure] 0 = {"dynamic":{"sExposureMode":{"auto":{"iAutoIrisLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}},"manual":{"sExposureTime":{"options":["1","1/3","1/6","1/12","1/25","1/50","1/100","1/150","1/200","1/250","1/500","1/750","1/1000","1/2000","1/4000","1/10000","1/100000"],"type":"options"},"sGainMode":{"options":["auto","manual"],"type":"options"}}},"sGainMode":{"manual":{"iExposureGain":{"range":{"max":100,"min":1,"step":1},"type":"range"}}}},"layout":{"image_exposure":["sExposureMode","sExposureTime","sGainMode","iExposureGain","iFPS"]},"static":{"sExposureMode":{"options":["auto","manual"],"type":"options"},"iFPS":{"range":{"max":30,"min":0,"step":1},"type":"range"}}} [capability.image_night_to_day] 0 = {"disabled":[{"name":"sNightToDay","options":{"day":{"iLightBrightness":null,"sFillLightMode":null},"night":{"iDarkBoostLevel":null,"iHDRLevel":null,"iHLCLevel":null,"sHDR":null,"sHLC":"close"}},"type":"disabled"}],"dynamic":{"sNightToDay":{"auto":{"iNightToDayFilterLevel":{"options":[0,1,2,3,4,5,6,7],"type":"options"},"iNightToDayFilterTime":{"range":{"max":10,"min":3,"step":1},"type":"range"}},"schedule":{"sDawnTime":{"input":"time","type":"input"},"sDuskTime":{"input":"time","type":"input"}}},"sOverexposeSuppress":{"open" 1 = :{"sOverexposeSuppressType":{"options":["auto","manual"],"type":"options"}}},"sOverexposeSuppressType":{"manual":{"iDistanceLevel":{"range":{"max":100,"min":0,"step":1},"type":"range"}}}},"layout":{"image_night_to_day":["sNightToDay","iNightToDayFilterLevel","iNightToDayFilterTime","sDawnTime","sDuskTime","sFillLightMode","iLightBrightness"]},"static":{"iLightBrightness":{"range":{"max":100,"min":0,"step":10},"type":"range"},"sNightToDay":{"options":["day","night"],"type":"options"},"sFillLightMode":{"type":"options","options":["IR"]}}} [capability.image_video_adjustment] 0 = {"layout":{"image_video_adjustment":["sPowerLineFrequencyMode","sImageFlip","iImageRotation"]},"static":{"sImageFlip":{"options":["close","flip","mirror","centrosymmetric"],"type":"options"},"sPowerLineFrequencyMode":{"options":["PAL(50HZ)","NTSC(60HZ)"],"type":"options"},"sSceneMode":{"options":["indoor","outdoor"],"type":"options"},"iImageRotation":{"options":[0,90,180,270],"type":"options"}}} [capability.image_white_blance] 0 = {"dynamic":{"sWhiteBlanceStyle":{"manualWhiteBalance":{"iWhiteBalanceBlue":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iWhiteBalanceGreen":{"range":{"max":100,"min":0,"step":1},"type":"range"},"iWhiteBalanceRed":{"range":{"max":100,"min":0,"step":1},"type":"range"}}}},"layout":{"image_white_blance":["sWhiteBlanceStyle","iWhiteBalanceRed","iWhiteBalanceGreen","iWhiteBalanceBlue"]},"static":{"sWhiteBlanceStyle":{"options":["manualWhiteBalance","autoWhiteBalance","lockingWhiteBalance","fluorescentLamp","incandescent","warmLight","naturalLight"],"type":"options"}}} [user.0] user_name = admin password = YWRtaW4= user_level = 1 [osd.common] enable_osd = 1 is_presistent_text = 1 attribute = transparent/not-flashing font_size = 32 font_color_mode = customize font_color = fff799 alignment = customize boundary = 0 font_path = /oem/usr/share/simsun_en.ttf normalized_screen_width = 704 normalized_screen_height = 480 [osd.0] type = channelName enabled = 0 position_x = 1104 position_y = 640 display_text = Camera 01 [osd.1] type = dateTime enabled = 1 position_x = 16 position_y = 16 date_style = CHR-YYYY-MM-DD time_style = 24hour display_week_enabled = 0 [osd.2] type = character enabled = 0 position_x = 0 position_y = 0 display_text = null [osd.3] type = character enabled = 0 position_x = 0 position_y = 0 display_text = null [osd.4] type = privacyMask enabled = 0 position_x = 0 position_y = 0 width = 0 height = 0 [osd.5] type = privacyMask enabled = 0 position_x = 0 position_y = 0 width = 0 height = 0 [osd.6] type = image enabled = 0 position_x = 16 position_y = 640 image_path = /userdata/image.bmp [event.regional_invasion] enabled = 1 position_x = 0 position_y = 0 width = 700 height = 560 proportion = 1 sensitivity_level = 90 time_threshold = 1 rockiva_model_type = small [roi.0] stream_type = mainStream id = 1 enabled = 0 name = test position_x = 0 position_y = 0 width = 0 height = 0 quality_level = 3 [roi.1] stream_type = mainStream id = 2 enabled = 0 name = test position_x = 0 position_y = 0 width = 0 height = 0 quality_level = 3 [roi.2] stream_type = subStream id = 1 enabled = 0 name = test position_x = 0 position_y = 0 width = 0 height = 0 quality_level = 3 [roi.3] stream_type = subStream id = 2 enabled = 0 name = test position_x = 0 position_y = 0 width = 0 height = 0 quality_level = 3 [roi.4] stream_type = thirdStream id = 1 enabled = 0 name = test position_x = 0 position_y = 0 width = 0 height = 0 quality_level = 3 [roi.5] stream_type = thirdStream id = 2 enabled = 0 name = test position_x = 0 position_y = 0 width = 0 height = 0 quality_level = 3 [region_clip.1] enabled = 0 position_x = 0 position_y = 0 width = 640 height = 480 [network.ntp] enable = 1 refresh_time_s = 60 ntp_server = 119.28.183.184 |
step 3. VLC on windows
리눅스에서는 3.0.16, 윈도우에서는 3.0.23 인데 윈도우는 되고 리눅스에서는 안된다. 머냐.. -_-
그래서! 리눅스 에서 snap으로 3.0.20 으로 설치하니 된다. 구버전이라 먼가 안되는 버그가 있나?
| rtsp://192.168.40.216/live/0 |


리눅스에서 rtsp 포트로 접속하려하면 튕기진 않는데 왜 안되는 것이냐...
| $ telnet 192.168.40.216 554 Trying 192.168.40.216... Connected to 192.168.40.216. Escape character is '^]'. SETUP rtsp://192.168.40.216:554/live/0 RTSP/1.0 RTSP/1.0 400 Bad Request Date: Thu Apr 23 10:45:18 2026 Server: rtsp_demo Connection closed by foreign host. |