Updated: October 28, 2024 |
Functions that must be implemented by an external camera library
#include <camera/external_camera_api.h>
typedef struct { open_external_camera_func_t open; close_external_camera_func_t close; init_camera_func_t init; deinit_camera_func_t deinit; start_preview_func_t start_preview; stop_preview_func_t stop_preview; get_preview_frame_func_t get_preview_frame; get_preview_num_buffers_func_t get_preview_num_buffers; get_supported_vf_frametypes_func_t get_supported_vf_frametype; get_supported_vf_resolutions_func_t get_supported_vf_resolution; get_supported_vf_framerates_func_t get_supported_vf_framerates; get_time_func_t get_time; set_framerate_func_t set_framerate; get_framerate_func_t get_framerate; parse_config_func_t parse_config; register_status_callback_func_t register_status_callback; restart_preview_func_t restart_preview; set_isp_config_func_t set_isp_config; get_supported_brightness_func_t get_supported_brightness; set_brightness_func_t set_brightness; get_supported_contrast_func_t get_supported_contrast; set_contrast_func_t set_contrast; set_standby_mode_func_t set_standby_mode; is_whitebalance_mode_valid_func_t is_whitebalance_mode_valid; set_whitebalance_mode_func_t set_whitebalance_mode; get_supported_whitebalance_func_t get_supported_whitebalance; set_whitebalance_func_t set_whitebalance; get_whitebalance_func_t get_whitebalance; is_feature_capable_func_t is_feature_capable; allocate_preview_buffer_func_t allocate_preview_buffer; free_preview_buffer_func_t free_preview_buffer; get_supported_sharpness_func_t get_supported_sharpness; set_sharpness_func_t set_sharpness; get_supported_hue_func_t get_supported_hue; set_hue_func_t set_hue; get_supported_saturation_func_t get_supported_saturation; set_saturation_func_t set_saturation; get_default_image_attributes_func_t get_default_image_attributes; get_supported_wb_rb_gain_func_t get_supported_wb_rb_gain; set_manual_wb_rb_gain_func_t set_manual_wb_rb_gain; get_manual_wb_rb_gain_func_t get_manual_wb_rb_gain; get_default_wb_mode_func_t get_default_wb_mode; set_exposure_mode_func_t set_exposure_mode; is_exposure_mode_valid_func_t is_exposure_mode_valid; get_supported_shutter_speeds_func_t get_supported_shutter_speeds; get_default_shutter_speed_func_t get_default_shutter_speed; get_supported_ISO_values_func_t get_supported_ISO_values; get_default_ISO_value_func_t get_default_ISO_value; get_manual_shutter_speed_func_t get_manual_shutter_speed; get_manual_ISO_value_func_t get_manual_ISO_value; set_manual_shutter_speed_func_t set_manual_shutter_speed; set_manual_ISO_value_func_t set_manual_ISO_value; get_supported_ev_offsets_func_t get_supported_ev_offsets; set_ev_offset_func_t set_ev_offset; get_ev_offset_func_t get_ev_offset; configure_preview_func_t configure_preview; get_preview_buffer_size_func_t get_preview_buffer_size; } camera_external_camera_t;
The external camera library must define an instance of this structure named external_camera_defs that the Sensor service will use to interface with the camera driver. For more information, see the introduction to external_camera_api.h.