rkipc的通信方式
在ipcweb中,程序是通过/var/tmp/rkipc和rkipc进行通信,并且网络和客户端的函数封装在luckfox-pico/project/app/ipcweb/ipcweb-backend/src/socket_client文件夹中,
client.cpp是客户端命令
socket.cpp是网络命令
编写rkipc的通信程序
创建文件夹con_rkipcwe并且把luckfox-pico/project/app/ipcweb/ipcweb-backend/src/socket_client中的文件复制进去, 并且改后缀名为c文件
修改client.c
// #include "api_handler.h"
#include <string.h>
//添加stdlib.h
#include <stdlib.h>
#include "socket.h"
创建main.c
#include <stdio.h>
#include "client.h"
#include "socket.h"int main()
{// printf("hello world!\n");int int_value = 0;rk_isp_get_contrast(0, &int_value);printf("int_value %d \n", int_value);return 0;
}
build.sh
#! /bin/sh../luckfox-pico/tools/linux/toolchain/arm-rockchip830-linux-uclibcgnueabihf/bin/arm-rockchip830-linux-uclibcgnueabihf-gcc \
-g \
main.c client.c socket.c \
-o con_rkipc \
-I ./
编译和测试
编译
$ ./build.sh
复制到摄像头的/oem/usr/bin目录下
# ./con_rkipc
int_value 50
已经取得int值50
函数解析
luckfox-pico/project/app/rkipc/rkipc/common/socket_server/server.c的static const struct FunMap map[] 定义了 client的函数和server函数对应关系
例如
{(char *)"rk_isp_get_contrast", &ser_rk_isp_get_contrast},
client的rk_isp_get_contrast函数,对应server的ser_rk_isp_get_contrast
// isp adjustmentint ser_rk_isp_get_contrast(int fd) {int err = 0;int id;int value;if (sock_read(fd, &id, sizeof(id)) == SOCKERR_CLOSED)return -1;//| rk_isp_get_contrast | 获取对比度 |err = rk_isp_get_contrast(id, &value);LOG_DEBUG("value is %d\n", value);if (sock_write(fd, &value, sizeof(value)) == SOCKERR_CLOSED)return -1;if (sock_write(fd, &err, sizeof(int)) == SOCKERR_CLOSED)return -1;return 0;
}
在luckfox-pico/project/app/rkipc/rkipc/docs/Rockchip_Developer_Guide_Linux_RKIPC_CN.md中查得rk_isp_get_contrast函数是获取对比度的函数
rkipc获取对比度的值,发送回con_rkipc
static const struct FunMap map[]
static const struct FunMap map[] = {{(char *)"rk_isp_set", &ser_rk_isp_set},{(char *)"rk_video_set", &ser_rk_video_set},{(char *)"rk_audio_set", &ser_rk_audio_set},// isp scenario{(char *)"rk_isp_get_scenario", &ser_rk_isp_get_scenario},{(char *)"rk_isp_set_scenario", &ser_rk_isp_set_scenario},// isp adjustment{(char *)"rk_isp_get_contrast", &ser_rk_isp_get_contrast},{(char *)"rk_isp_set_contrast", &ser_rk_isp_set_contrast},{(char *)"rk_isp_get_brightness", &ser_rk_isp_get_brightness},{(char *)"rk_isp_set_brightness", &ser_rk_isp_set_brightness},{(char *)"rk_isp_get_saturation", &ser_rk_isp_get_saturation},{(char *)"rk_isp_set_saturation", &ser_rk_isp_set_saturation},{(char *)"rk_isp_get_sharpness", &ser_rk_isp_get_sharpness},{(char *)"rk_isp_set_sharpness", &ser_rk_isp_set_sharpness},{(char *)"rk_isp_get_hue", &ser_rk_isp_get_hue},{(char *)"rk_isp_set_hue", &ser_rk_isp_set_hue},// isp exposure{(char *)"rk_isp_get_exposure_mode", &ser_rk_isp_get_exposure_mode},{(char *)"rk_isp_set_exposure_mode", &ser_rk_isp_set_exposure_mode},{(char *)"rk_isp_get_gain_mode", &ser_rk_isp_get_gain_mode},{(char *)"rk_isp_set_gain_mode", &ser_rk_isp_set_gain_mode},{(char *)"rk_isp_get_exposure_time", &ser_rk_isp_get_exposure_time},{(char *)"rk_isp_set_exposure_time", &ser_rk_isp_set_exposure_time},{(char *)"rk_isp_get_exposure_gain", &ser_rk_isp_get_exposure_gain},{(char *)"rk_isp_set_exposure_gain", &ser_rk_isp_set_exposure_gain},{(char *)"rk_isp_get_frame_rate", &ser_rk_isp_get_frame_rate},{(char *)"rk_isp_set_frame_rate", &ser_rk_isp_set_frame_rate},// isp night_to_day{(char *)"rk_isp_get_night_to_day", &ser_rk_isp_get_night_to_day},{(char *)"rk_isp_set_night_to_day", &ser_rk_isp_set_night_to_day},{(char *)"rk_isp_get_fill_light_mode", &ser_rk_isp_get_fill_light_mode},{(char *)"rk_isp_set_fill_light_mode", &ser_rk_isp_set_fill_light_mode},{(char *)"rk_isp_get_light_brightness", &ser_rk_isp_get_light_brightness},{(char *)"rk_isp_set_light_brightness", &ser_rk_isp_set_light_brightness},{(char *)"rk_isp_get_night_to_day_filter_level", &ser_rk_isp_get_night_to_day_filter_level},{(char *)"rk_isp_set_night_to_day_filter_level", &ser_rk_isp_set_night_to_day_filter_level},{(char *)"rk_isp_get_night_to_day_filter_time", &ser_rk_isp_get_night_to_day_filter_time},{(char *)"rk_isp_set_night_to_day_filter_time", &ser_rk_isp_set_night_to_day_filter_time},// isp blc{(char *)"rk_isp_get_hdr", &ser_rk_isp_get_hdr},{(char *)"rk_isp_set_hdr", &ser_rk_isp_set_hdr},{(char *)"rk_isp_get_blc_region", &ser_rk_isp_get_blc_region},{(char *)"rk_isp_set_blc_region", &ser_rk_isp_set_blc_region},{(char *)"rk_isp_get_hlc", &ser_rk_isp_get_hlc},{(char *)"rk_isp_set_hlc", &ser_rk_isp_set_hlc},{(char *)"rk_isp_get_hdr_level", &ser_rk_isp_get_hdr_level},{(char *)"rk_isp_set_hdr_level", &ser_rk_isp_set_hdr_level},{(char *)"rk_isp_get_blc_strength", &ser_rk_isp_get_blc_strength},{(char *)"rk_isp_set_blc_strength", &ser_rk_isp_set_blc_strength},{(char *)"rk_isp_get_hlc_level", &ser_rk_isp_get_hlc_level},{(char *)"rk_isp_set_hlc_level", &ser_rk_isp_set_hlc_level},{(char *)"rk_isp_get_dark_boost_level", &ser_rk_isp_get_dark_boost_level},{(char *)"rk_isp_set_dark_boost_level", &ser_rk_isp_set_dark_boost_level},// isp white_blance{(char *)"rk_isp_get_white_blance_style", &ser_rk_isp_get_white_blance_style},{(char *)"rk_isp_set_white_blance_style", &ser_rk_isp_set_white_blance_style},{(char *)"rk_isp_get_white_blance_red", &ser_rk_isp_get_white_blance_red},{(char *)"rk_isp_set_white_blance_red", &ser_rk_isp_set_white_blance_red},{(char *)"rk_isp_get_white_blance_green", &ser_rk_isp_get_white_blance_green},{(char *)"rk_isp_set_white_blance_green", &ser_rk_isp_set_white_blance_green},{(char *)"rk_isp_get_white_blance_blue", &ser_rk_isp_get_white_blance_blue},{(char *)"rk_isp_set_white_blance_blue", &ser_rk_isp_set_white_blance_blue},// isp enhancement{(char *)"rk_isp_get_noise_reduce_mode", &ser_rk_isp_get_noise_reduce_mode},{(char *)"rk_isp_set_noise_reduce_mode", &ser_rk_isp_set_noise_reduce_mode},{(char *)"rk_isp_get_dehaze", &ser_rk_isp_get_dehaze},{(char *)"rk_isp_set_dehaze", &ser_rk_isp_set_dehaze},{(char *)"rk_isp_get_gray_scale_mode", &ser_rk_isp_get_gray_scale_mode},{(char *)"rk_isp_set_gray_scale_mode", &ser_rk_isp_set_gray_scale_mode},{(char *)"rk_isp_get_distortion_correction", &ser_rk_isp_get_distortion_correction},{(char *)"rk_isp_set_distortion_correction", &ser_rk_isp_set_distortion_correction},{(char *)"rk_isp_get_spatial_denoise_level", &ser_rk_isp_get_spatial_denoise_level},{(char *)"rk_isp_set_spatial_denoise_level", &ser_rk_isp_set_spatial_denoise_level},{(char *)"rk_isp_get_temporal_denoise_level", &ser_rk_isp_get_temporal_denoise_level},{(char *)"rk_isp_set_temporal_denoise_level", &ser_rk_isp_set_temporal_denoise_level},{(char *)"rk_isp_get_dehaze_level", &ser_rk_isp_get_dehaze_level},{(char *)"rk_isp_set_dehaze_level", &ser_rk_isp_set_dehaze_level},{(char *)"rk_isp_get_fec_level", &ser_rk_isp_get_fec_level},{(char *)"rk_isp_set_fec_level", &ser_rk_isp_set_fec_level},{(char *)"rk_isp_get_ldch_level", &ser_rk_isp_get_ldch_level},{(char *)"rk_isp_set_ldch_level", &ser_rk_isp_set_ldch_level},// isp video_adjustment{(char *)"rk_isp_get_power_line_frequency_mode", &ser_rk_isp_get_power_line_frequency_mode},{(char *)"rk_isp_set_power_line_frequency_mode", &ser_rk_isp_set_power_line_frequency_mode},{(char *)"rk_isp_get_image_flip", &ser_rk_isp_get_image_flip},{(char *)"rk_isp_set_image_flip", &ser_rk_isp_set_image_flip},// isp auto focus{(char *)"rk_isp_get_af_mode", &ser_rk_isp_get_af_mode},{(char *)"rk_isp_set_af_mode", &ser_rk_isp_set_af_mode},{(char *)"rk_isp_get_zoom_level", &ser_rk_isp_get_zoom_level},{(char *)"rk_isp_get_focus_level", &ser_rk_isp_get_focus_level},{(char *)"rk_isp_af_zoom_in", &ser_rk_isp_af_zoom_in},{(char *)"rk_isp_af_zoom_out", &ser_rk_isp_af_zoom_out},{(char *)"rk_isp_af_focus_in", &ser_rk_isp_af_focus_in},{(char *)"rk_isp_af_focus_out", &ser_rk_isp_af_focus_out},{(char *)"rk_isp_af_focus_once", &ser_rk_isp_af_focus_once},// audio{(char *)"rk_audio_restart", &ser_rk_audio_restart},{(char *)"rk_audio_get_bit_rate", &ser_rk_audio_get_bit_rate},{(char *)"rk_audio_set_bit_rate", &ser_rk_audio_set_bit_rate},{(char *)"rk_audio_get_sample_rate", &ser_rk_audio_get_sample_rate},{(char *)"rk_audio_set_sample_rate", &ser_rk_audio_set_sample_rate},{(char *)"rk_audio_get_volume", &ser_rk_audio_get_volume},{(char *)"rk_audio_set_volume", &ser_rk_audio_set_volume},{(char *)"rk_audio_get_enable_vqe", &ser_rk_audio_get_enable_vqe},{(char *)"rk_audio_set_enable_vqe", &ser_rk_audio_set_enable_vqe},{(char *)"rk_audio_get_encode_type", &ser_rk_audio_get_encode_type},{(char *)"rk_audio_set_encode_type", &ser_rk_audio_set_encode_type},// video{(char *)"rk_video_restart", &ser_rk_video_restart},{(char *)"rk_video_get_gop", &ser_rk_video_get_gop},{(char *)"rk_video_set_gop", &ser_rk_video_set_gop},{(char *)"rk_video_get_max_rate", &ser_rk_video_get_max_rate},{(char *)"rk_video_set_max_rate", &ser_rk_video_set_max_rate},{(char *)"rk_video_get_RC_mode", &ser_rk_video_get_RC_mode},{(char *)"rk_video_set_RC_mode", &ser_rk_video_set_RC_mode},{(char *)"rk_video_get_output_data_type", &ser_rk_video_get_output_data_type},{(char *)"rk_video_set_output_data_type", &ser_rk_video_set_output_data_type},{(char *)"rk_video_get_rc_quality", &ser_rk_video_get_rc_quality},{(char *)"rk_video_set_rc_quality", &ser_rk_video_set_rc_quality},{(char *)"rk_video_get_smart", &ser_rk_video_get_smart},{(char *)"rk_video_set_smart", &ser_rk_video_set_smart},{(char *)"rk_video_get_gop_mode", &ser_rk_video_get_gop_mode},{(char *)"rk_video_set_gop_mode", &ser_rk_video_set_gop_mode},{(char *)"rk_video_get_stream_type", &ser_rk_video_get_stream_type},{(char *)"rk_video_set_stream_type", &ser_rk_video_set_stream_type},{(char *)"rk_video_get_h264_profile", &ser_rk_video_get_h264_profile},{(char *)"rk_video_set_h264_profile", &ser_rk_video_set_h264_profile},{(char *)"rk_video_get_resolution", &ser_rk_video_get_resolution},{(char *)"rk_video_set_resolution", &ser_rk_video_set_resolution},{(char *)"rk_video_get_frame_rate", &ser_rk_video_get_frame_rate},{(char *)"rk_video_set_frame_rate", &ser_rk_video_set_frame_rate},{(char *)"rk_video_get_frame_rate_in", &ser_rk_video_get_frame_rate_in},{(char *)"rk_video_set_frame_rate_in", &ser_rk_video_set_frame_rate_in},{(char *)"rk_video_get_rotation", &ser_rk_video_get_rotation},{(char *)"rk_video_set_rotation", &ser_rk_video_set_rotation},// jpeg{(char *)"rk_video_get_enable_cycle_snapshot", &ser_rk_video_get_enable_cycle_snapshot},{(char *)"rk_video_set_enable_cycle_snapshot", &ser_rk_video_set_enable_cycle_snapshot},{(char *)"rk_video_get_image_quality", &ser_rk_video_get_image_quality},{(char *)"rk_video_set_image_quality", &ser_rk_video_set_image_quality},{(char *)"rk_video_get_snapshot_interval_ms", &ser_rk_video_get_snapshot_interval_ms},{(char *)"rk_video_set_snapshot_interval_ms", &ser_rk_video_set_snapshot_interval_ms},{(char *)"rk_video_get_jpeg_resolution", &ser_rk_video_get_jpeg_resolution},{(char *)"rk_video_set_jpeg_resolution", &ser_rk_video_set_jpeg_resolution},// osd.common{(char *)"rk_osd_get_is_presistent_text", &ser_rk_osd_get_is_presistent_text},{(char *)"rk_osd_set_is_presistent_text", &ser_rk_osd_set_is_presistent_text},{(char *)"rk_osd_get_font_size", &ser_rk_osd_get_font_size},{(char *)"rk_osd_set_font_size", &ser_rk_osd_set_font_size},{(char *)"rk_osd_get_boundary", &ser_rk_osd_get_boundary},{(char *)"rk_osd_set_boundary", &ser_rk_osd_set_boundary},{(char *)"rk_osd_get_normalized_screen_width", &ser_rk_osd_get_normalized_screen_width},{(char *)"rk_osd_get_normalized_screen_height", &ser_rk_osd_get_normalized_screen_height},{(char *)"rk_osd_get_attribute", &ser_rk_osd_get_attribute},{(char *)"rk_osd_set_attribute", &ser_rk_osd_set_attribute},{(char *)"rk_osd_get_font_color_mode", &ser_rk_osd_get_font_color_mode},{(char *)"rk_osd_set_font_color_mode", &ser_rk_osd_set_font_color_mode},{(char *)"rk_osd_get_font_color", &ser_rk_osd_get_font_color},{(char *)"rk_osd_set_font_color", &ser_rk_osd_set_font_color},{(char *)"rk_osd_get_alignment", &ser_rk_osd_get_alignment},{(char *)"rk_osd_set_alignment", &ser_rk_osd_set_alignment},{(char *)"rk_osd_get_font_path", &ser_rk_osd_get_font_path},{(char *)"rk_osd_set_font_path", &ser_rk_osd_set_font_path},// osd.x{(char *)"rk_osd_get_enabled", &ser_rk_osd_get_enabled},{(char *)"rk_osd_set_enabled", &ser_rk_osd_set_enabled},{(char *)"rk_osd_get_position_x", &ser_rk_osd_get_position_x},{(char *)"rk_osd_set_position_x", &ser_rk_osd_set_position_x},{(char *)"rk_osd_get_position_y", &ser_rk_osd_get_position_y},{(char *)"rk_osd_set_position_y", &ser_rk_osd_set_position_y},{(char *)"rk_osd_get_height", &ser_rk_osd_get_height},{(char *)"rk_osd_set_height", &ser_rk_osd_set_height},{(char *)"rk_osd_get_width", &ser_rk_osd_get_width},{(char *)"rk_osd_set_width", &ser_rk_osd_set_width},{(char *)"rk_osd_get_display_week_enabled", &ser_rk_osd_get_display_week_enabled},{(char *)"rk_osd_set_display_week_enabled", &ser_rk_osd_set_display_week_enabled},{(char *)"rk_osd_get_date_style", &ser_rk_osd_get_date_style},{(char *)"rk_osd_set_date_style", &ser_rk_osd_set_date_style},{(char *)"rk_osd_get_time_style", &ser_rk_osd_get_time_style},{(char *)"rk_osd_set_time_style", &ser_rk_osd_set_time_style},{(char *)"rk_osd_get_type", &ser_rk_osd_get_type},{(char *)"rk_osd_set_type", &ser_rk_osd_set_type},{(char *)"rk_osd_get_display_text", &ser_rk_osd_get_display_text},{(char *)"rk_osd_set_display_text", &ser_rk_osd_set_display_text},{(char *)"rk_osd_get_image_path", &ser_rk_osd_get_image_path},{(char *)"rk_osd_set_image_path", &ser_rk_osd_set_image_path},{(char *)"rk_osd_get_style", &ser_rk_osd_get_style},{(char *)"rk_osd_set_style", &ser_rk_osd_set_style},{(char *)"rk_osd_restart", &ser_rk_osd_restart},// roi.x{(char *)"rk_roi_get_stream_type", &ser_rk_roi_get_stream_type},{(char *)"rk_roi_set_stream_type", &ser_rk_roi_set_stream_type},{(char *)"rk_roi_get_name", &ser_rk_roi_get_name},{(char *)"rk_roi_set_name", &ser_rk_roi_set_name},{(char *)"rk_roi_get_id", &ser_rk_roi_get_id},{(char *)"rk_roi_set_id", &ser_rk_roi_set_id},{(char *)"rk_roi_get_enabled", &ser_rk_roi_get_enabled},{(char *)"rk_roi_set_enabled", &ser_rk_roi_set_enabled},{(char *)"rk_roi_get_position_x", &ser_rk_roi_get_position_x},{(char *)"rk_roi_set_position_x", &ser_rk_roi_set_position_x},{(char *)"rk_roi_get_position_y", &ser_rk_roi_get_position_y},{(char *)"rk_roi_set_position_y", &ser_rk_roi_set_position_y},{(char *)"rk_roi_get_height", &ser_rk_roi_get_height},{(char *)"rk_roi_set_height", &ser_rk_roi_set_height},{(char *)"rk_roi_get_width", &ser_rk_roi_get_width},{(char *)"rk_roi_set_width", &ser_rk_roi_set_width},{(char *)"rk_roi_get_quality_level", &ser_rk_roi_get_quality_level},{(char *)"rk_roi_set_quality_level", &ser_rk_roi_set_quality_level},{(char *)"rk_roi_set_all", &ser_rk_roi_set_all},// region_clip.x{(char *)"rk_region_clip_get_enabled", &ser_rk_region_clip_get_enabled},{(char *)"rk_region_clip_set_enabled", &ser_rk_region_clip_set_enabled},{(char *)"rk_region_clip_get_position_x", &ser_rk_region_clip_get_position_x},{(char *)"rk_region_clip_set_position_x", &ser_rk_region_clip_set_position_x},{(char *)"rk_region_clip_get_position_y", &ser_rk_region_clip_get_position_y},{(char *)"rk_region_clip_set_position_y", &ser_rk_region_clip_set_position_y},{(char *)"rk_region_clip_get_height", &ser_rk_region_clip_get_height},{(char *)"rk_region_clip_set_height", &ser_rk_region_clip_set_height},{(char *)"rk_region_clip_get_width", &ser_rk_region_clip_get_width},{(char *)"rk_region_clip_set_width", &ser_rk_region_clip_set_width},{(char *)"rk_region_clip_set_all", &ser_rk_region_clip_set_all},// network{(char *)"rk_network_ipv4_get", &ser_rk_network_ipv4_get},{(char *)"rk_network_ipv4_set", &ser_rk_network_ipv4_set},{(char *)"rk_network_dns_get", &ser_rk_network_dns_get},{(char *)"rk_network_dns_set", &ser_rk_network_dns_set},{(char *)"rk_network_get_mac", &ser_rk_network_get_mac},{(char *)"rk_network_nicspeed_get", &ser_rk_network_nicspeed_get},{(char *)"rk_network_nicspeed_set", &ser_rk_network_nicspeed_set},{(char *)"rk_network_nicspeed_support_get", &ser_rk_network_nicspeed_support_get},{(char *)"rk_wifi_power_get", &ser_rk_wifi_power_get},{(char *)"rk_wifi_power_set", &ser_rk_wifi_power_set},{(char *)"rk_wifi_scan_wifi", &ser_rk_wifi_scan_wifi},{(char *)"rk_wifi_get_list", &ser_rk_wifi_get_list},{(char *)"rk_wifi_connect_with_ssid", &ser_rk_wifi_connect_with_ssid},{(char *)"rk_wifi_forget_with_ssid", &ser_rk_wifi_forget_with_ssid},// storage{(char *)"rk_storage_record_start", &ser_rk_storage_record_start},{(char *)"rk_storage_record_stop", &ser_rk_storage_record_stop},{(char *)"rk_storage_record_statue_get", &ser_rk_storage_record_statue_get},{(char *)"rk_take_photo", &ser_rk_take_photo},// event{(char *)"rk_event_ri_get_enabled", &ser_rk_event_ri_get_enabled},{(char *)"rk_event_ri_set_enabled", &ser_rk_event_ri_set_enabled},{(char *)"rk_event_ri_get_position_x", &ser_rk_event_ri_get_position_x},{(char *)"rk_event_ri_set_position_x", &ser_rk_event_ri_set_position_x},{(char *)"rk_event_ri_get_position_y", &ser_rk_event_ri_get_position_y},{(char *)"rk_event_ri_set_position_y", &ser_rk_event_ri_set_position_y},{(char *)"rk_event_ri_get_width", &ser_rk_event_ri_get_width},{(char *)"rk_event_ri_set_width", &ser_rk_event_ri_set_width},{(char *)"rk_event_ri_get_height", &ser_rk_event_ri_get_height},{(char *)"rk_event_ri_set_height", &ser_rk_event_ri_set_height},{(char *)"rk_event_ri_get_proportion", &ser_rk_event_ri_get_proportion},{(char *)"rk_event_ri_set_proportion", &ser_rk_event_ri_set_proportion},{(char *)"rk_event_ri_get_sensitivity_level", &ser_rk_event_ri_get_sensitivity_level},{(char *)"rk_event_ri_set_sensitivity_level", &ser_rk_event_ri_set_sensitivity_level},{(char *)"rk_event_ri_get_time_threshold", &ser_rk_event_ri_get_time_threshold},{(char *)"rk_event_ri_set_time_threshold", &ser_rk_event_ri_set_time_threshold},// system{(char *)"rk_system_capability_get_video", &ser_rk_system_capability_get_video},{(char *)"rk_system_capability_get_image_adjustment",&ser_rk_system_capability_get_image_adjustment},{(char *)"rk_system_capability_get_image_blc", &ser_rk_system_capability_get_image_blc},{(char *)"rk_system_capability_get_image_enhancement",&ser_rk_system_capability_get_image_enhancement},{(char *)"rk_system_capability_get_image_exposure",&ser_rk_system_capability_get_image_exposure},{(char *)"rk_system_capability_get_image_night_to_day",&ser_rk_system_capability_get_image_night_to_day},{(char *)"rk_system_capability_get_image_video_adjustment",&ser_rk_system_capability_get_image_video_adjustment},{(char *)"rk_system_capability_get_image_white_blance",&ser_rk_system_capability_get_image_white_blance},{(char *)"rk_system_get_deivce_name", &ser_rk_system_get_deivce_name},{(char *)"rk_system_get_telecontrol_id", &ser_rk_system_get_telecontrol_id},{(char *)"rk_system_get_model", &ser_rk_system_get_model},{(char *)"rk_system_get_serial_number", &ser_rk_system_get_serial_number},{(char *)"rk_system_get_firmware_version", &ser_rk_system_get_firmware_version},{(char *)"rk_system_get_encoder_version", &ser_rk_system_get_encoder_version},{(char *)"rk_system_get_web_version", &ser_rk_system_get_web_version},{(char *)"rk_system_get_plugin_version", &ser_rk_system_get_plugin_version},{(char *)"rk_system_get_channels_number", &ser_rk_system_get_channels_number},{(char *)"rk_system_get_hard_disks_number", &ser_rk_system_get_hard_disks_number},{(char *)"rk_system_get_alarm_inputs_number", &ser_rk_system_get_alarm_inputs_number},{(char *)"rk_system_get_alarm_outputs_number", &ser_rk_system_get_alarm_outputs_number},{(char *)"rk_system_get_firmware_version_info", &ser_rk_system_get_firmware_version_info},{(char *)"rk_system_get_manufacturer", &ser_rk_system_get_manufacturer},{(char *)"rk_system_get_hardware_id", &ser_rk_system_get_hardware_id},{(char *)"rk_system_set_deivce_name", &ser_rk_system_set_deivce_name},{(char *)"rk_system_set_telecontrol_id", &ser_rk_system_set_telecontrol_id},{(char *)"rk_system_reboot", &ser_rk_system_reboot},{(char *)"rk_system_factory_reset", &ser_rk_system_factory_reset},{(char *)"rk_system_export_log", &ser_rk_system_export_log},{(char *)"rk_system_export_db", &ser_rk_system_export_db},{(char *)"rk_system_import_db", &ser_rk_system_import_db},{(char *)"rk_system_upgrade", &ser_rk_system_upgrade},{(char *)"rk_system_get_user_num", &ser_rk_system_get_user_num},{(char *)"rk_system_set_user_num", &ser_rk_system_set_user_num},{(char *)"rk_system_get_user_level", &ser_rk_system_get_user_level},{(char *)"rk_system_set_user_level", &ser_rk_system_set_user_level},{(char *)"rk_system_get_user_name", &ser_rk_system_get_user_name},{(char *)"rk_system_set_user_name", &ser_rk_system_set_user_name},{(char *)"rk_system_get_password", &ser_rk_system_get_password},{(char *)"rk_system_set_password", &ser_rk_system_set_password},{(char *)"rk_system_add_user", &ser_rk_system_add_user},{(char *)"rk_system_del_user", &ser_rk_system_del_user}};
rkipc 函数定义
函数名称 | 功能 |
---|---|
rk_system_init | 系统模块初始化 |
rk_system_deinit | 系统模块反初始化 |
rk_system_reboot | 重启 |
rk_system_factory_reset | 恢复出厂设置 |
rk_system_export_log | 导出日志 |
rk_system_export_db | 导出配置文件 |
rk_system_import_db | 导入配置文件 |
rk_system_upgrade | 系统升级 |
rk_system_get_user_num | 获取用户数 |
rk_system_set_user_num | 设置用户数 |
rk_system_get_user_level | 获取用户权限 |
rk_system_set_user_level | 设置用户权限 |
rk_system_get_user_name | 获取用户名 |
rk_system_set_user_name | 设置用户名 |
rk_system_get_password | 获取密码(已加密) |
rk_system_set_password | 设置密码(已加密) |
rk_system_add_user | 新增用户 |
rk_system_del_user | 删除用户 |
事件模块
目前仅支持rv1126_ipc_rkmedia
函数名称 | 功能 |
---|---|
rk_event_init | 事件模块初始化 |
rk_event_deinit | 事件模块反初始化 |
rk_event_ri_get_enabled | 获取区域入侵使能状态 |
rk_event_ri_set_enabled | 设置区域入侵使能状态 |
rk_event_ri_get_position_x | 获取区域入侵的x坐标 |
rk_event_ri_set_position_x | 设置区域入侵的x坐标 |
rk_event_ri_get_position_y | 获取区域入侵的y坐标 |
rk_event_ri_set_position_y | 设置区域入侵的x坐标 |
rk_event_ri_get_width | 获取区域入侵的宽度 |
rk_event_ri_set_width | 设置区域入侵的宽度 |
rk_event_ri_get_height | 获取区域入侵的高度 |
rk_event_ri_set_height | 设置区域入侵的高度 |
rk_event_ri_get_proportion | 获取区域入侵的占比 |
rk_event_ri_set_proportion | 设置区域入侵的占比 |
rk_event_ri_get_sensitivity_level | 获取区域入侵的灵敏度 |
rk_event_ri_set_sensitivity_level | 设置区域入侵的灵敏度 |
rk_event_ri_get_time_threshold | 获取区域入侵的时间阈值 |
rk_event_ri_set_time_threshold | 设置区域入侵的时间阈值 |
rtmp推流模块
函数名称 | 功能 |
---|---|
rk_rtmp_init | rtmp模块初始化 |
rk_rtmp_deinit | rtmp模块反初始化 |
rk_rtmp_write_video_frame | 写视频帧 |
rk_rtmp_write_audio_frame | 写音频帧 |
rtsp推流模块
函数名称 | 功能 |
---|---|
create_rtsp_demo | 创建句柄 |
rtsp_new_session | 根据URL,创建会话 |
rtsp_set_video | 设置视频流格式 |
rtsp_set_audio | 设置音频流格式 |
rtsp_sync_video_ts | 同步视频时间戳 |
rtsp_sync_audio_ts | 同步音频时间戳 |
rtsp_del_session | 删除会话 |
rtsp_del_demo | 删除句柄 |
rtsp_tx_video | 送视频帧 |
rtsp_tx_audio | 送音频帧 |
rtsp_do_event | 执行操作 |
ISP模块
函数名称 | 功能 |
---|---|
rk_isp_init | 单摄像头初始化 |
rk_isp_deinit | 单摄像头反初始化 |
rk_isp_group_init | 多摄像头初始化 |
rk_isp_group_deinit | 多摄像头反初始化 |
rk_isp_set_frame_rate | 设置帧率 |
rk_isp_get_contrast | 获取对比度 |
rk_isp_set_contrast | 设置对比度 |
rk_isp_get_brightness | 获取亮度 |
rk_isp_set_brightness | 设置亮度 |
rk_isp_get_saturation | 获取饱和度 |
rk_isp_set_saturation | 设置饱和度 |
rk_isp_get_sharpness | 获取锐度 |
rk_isp_set_sharpness | 设置锐度 |
rk_isp_get_hue | 获取色调 |
rk_isp_set_hue | 设置色调 |
rk_isp_get_exposure_mode | 获取曝光模式 |
rk_isp_set_exposure_mode | 设置曝光模式 |
rk_isp_get_gain_mode | 获取增益模式 |
rk_isp_set_gain_mode | 设置增益模式 |
rk_isp_get_exposure_time | 获取曝光时间 |
rk_isp_set_exposure_time | 设置曝光时间 |
rk_isp_get_exposure_gain | 获取增益 |
rk_isp_set_exposure_gain | 设置增益 |
rk_isp_get_hdr | 获取高动态模式 |
rk_isp_set_hdr | 设置高动态模式 |
rk_isp_get_blc_region | 获取背光模式 |
rk_isp_set_blc_region | 设置背光模式 |
rk_isp_get_hlc | 获取强光抑制模式 |
rk_isp_set_hlc | 设置强光抑制模式 |
rk_isp_get_hdr_level | 获取高动态级别 |
rk_isp_set_hdr_level | 设置高动态级别 |
rk_isp_get_blc_strength | 获取背光强度 |
rk_isp_set_blc_strength | 设置背光强度 |
rk_isp_get_hlc_level | 获取强光抑制等级 |
rk_isp_set_hlc_level | 设置强光抑制等级 |
rk_isp_get_dark_boost_level | 获取暗区增强等级 |
rk_isp_set_dark_boost_level | 设置暗区增强等级 |
rk_isp_get_white_blance_style | 获取白平衡模式 |
rk_isp_set_white_blance_style | 设置白平衡模式 |
rk_isp_get_white_blance_red | 获取白平衡R增益 |
rk_isp_set_white_blance_red | 设置白平衡R增益 |
rk_isp_get_white_blance_green | 获取白平衡G增益 |
rk_isp_set_white_blance_green | 设置白平衡G增益 |
rk_isp_get_white_blance_blue | 获取白平衡B增益 |
rk_isp_set_white_blance_blue | 设置白平衡B增益 |
rk_isp_get_noise_reduce_mode | 获取降噪模式 |
rk_isp_set_noise_reduce_mode | 设置降噪模式 |
rk_isp_get_dehaze | 获取去雾模式 |
rk_isp_set_dehaze | 设置去雾模式 |
rk_isp_get_gray_scale_mode | 获取灰度范围 |
rk_isp_set_gray_scale_mode | 设置灰度范围 |
rk_isp_get_distortion_correction | 获取畸变矫正模式 |
rk_isp_set_distortion_correction | 设置畸变矫正模式 |
rk_isp_get_spatial_denoise_level | 获取空域降噪等级 |
rk_isp_set_spatial_denoise_level | 设置空域降噪等级 |
rk_isp_get_temporal_denoise_level | 获取时域降噪等级 |
rk_isp_set_temporal_denoise_level | 设置时域降噪等级 |
rk_isp_get_dehaze_level | 获取去雾等级 |
rk_isp_set_dehaze_level | 设置去雾等级 |
rk_isp_get_ldch_level | 获取LDCH等级 |
rk_isp_set_ldch_level | 设置LDCH等级 |
rk_isp_get_power_line_frequency_mode | 获取视频制式 |
rk_isp_set_power_line_frequency_mode | 设置视频制式 |
rk_isp_get_image_flip | 获取镜像翻转 |
rk_isp_set_image_flip | 设置镜像翻转 |
rk_isp_get_af_mode | 获取自动对焦模式 |
rk_isp_set_af_mode | 设置自动对焦模式 |
rk_isp_get_zoom_level | 获取放大缩小等级 |
rk_isp_set_zoom_level | 设置放大缩小等级 |
rk_isp_af_zoom_in | 放大 |
rk_isp_af_zoom_out | 缩小 |
rk_isp_af_focus_in | 聚焦 |
rk_isp_af_focus_out | 失焦 |
音频模块
函数名称 | 功能 |
---|---|
rkipc_audio_rtsp_init | rtsp音频初始化 |
rkipc_audio_init | 音频模块初始化 |
rkipc_audio_deinit | 音频模块反初始化 |
rk_audio_restart | 重启音频模块 |
rk_audio_get_bit_rate | 获取比特率 |
rk_audio_set_bit_rate | 设置比特率 |
rk_audio_get_sample_rate | 获取采样率 |
rk_audio_set_sample_rate | 设置采样率 |
rk_audio_get_volume | 获取音量 |
rk_audio_set_volume | 设置音量 |
rk_audio_get_enable_vqe | 获取音频3A算法是否使能 |
rk_audio_set_enable_vqe | 设置音频3A算法是否使能 |
rk_audio_get_encode_type | 获取编码类型 |
rk_audio_set_encode_type | 设置编码类型 |
视频模块
函数名称 | 功能 |
---|---|
rk_video_init | 视频模块初始化 |
rk_video_deinit | 视频模块反初始化 |
rk_video_restart | 重启视频模块 |
rk_video_get_gop | 获取I帧间隔 |
rk_video_set_gop | 设置I帧间隔 |
rk_video_get_max_rate | 获取最大码率 |
rk_video_set_max_rate | 设置最大码率 |
rk_video_get_RC_mode | 获取码率控制类型 |
rk_video_set_RC_mode | 设置码率控制类型 |
rk_video_get_output_data_type | 获取编码类型 |
rk_video_set_output_data_type | 设置编码类型 |
rk_video_get_rc_quality | 获取码率控制质量 |
rk_video_set_rc_quality | 设置码率控制质量 |
rk_video_get_smart | 获取智能编码状态 |
rk_video_set_smart | 设置智能编码状态 |
rk_video_get_gop_mode | 获取gop模式 |
rk_video_set_gop_mode | 设置gop模式 |
rk_video_get_stream_type | 获取码流名称 |
rk_video_set_stream_type | 设置码流名称 |
rk_video_get_h264_profile | 获取h264的profile |
rk_video_set_h264_profile | 设置h264的profile |
rk_video_get_resolution | 获取分辨率 |
rk_video_set_resolution | 设置分辨率 |
rk_video_get_frame_rate | 获取输入帧率 |
rk_video_set_frame_rate | 设置输入帧率 |
rk_video_get_frame_rate_in | 获取输出帧率 |
rk_video_set_frame_rate_in | 设置输出帧率 |
rk_video_get_rotation | 获取旋转角度 |
rk_video_set_rotation | 设置旋转角度 |
rk_video_get_smartp_viridrlen | 获取smartP的虚拟I帧长度 |
rk_video_set_smartp_viridrlen | 设置smartP的虚拟I帧长度 |
IVS模块
函数名称 | 功能 |
---|---|
rk_video_get_md_switch | 获取移动侦测开关状态 |
rk_video_set_md_switch | 设置移动侦测开关状态 |
rk_video_get_md_sensebility | 获取移动侦测灵敏度 |
rk_video_set_md_sensebility | 设置移动侦测灵敏度 |
rk_video_get_od_switch | 获取隐私遮挡开关状态 |
rk_video_set_od_switch | 设置隐私遮挡开关状态 |
JPEG模块
函数名称 | 功能 |
---|---|
rk_video_get_enable_cycle_snapshot | 获取定时抓拍开关状态 |
rk_video_set_enable_cycle_snapshot | 设置定时抓拍开关状态 |
rk_video_get_image_quality | 获取图像质量 |
rk_video_set_image_quality | 设置图像质量 |
rk_video_get_snapshot_interval_ms | 获取抓拍间隔 |
rk_video_set_snapshot_interval_ms | 设置抓拍间隔 |
rk_video_get_jpeg_resolution | 获取jpeg分辨率 |
rk_video_set_jpeg_resolution | 设置jpeg分辨率 |
rk_take_photo | 抓拍一次 |
参数管理模块
函数名称 | 功能 |
---|---|
rk_param_get_int | 获取整型参数 |
rk_param_set_int | 设置整型参数 |
rk_param_get_string | 获取字符型参数 |
rk_param_set_string | 设置字符型参数 |
rk_param_save | 将当前参数保存为文件 |
rk_param_init | 从指定ini文件初始化 |
rk_param_deinit | 反初始化 |
rk_param_reload | 不保存当前参数,重新加载ini |