| OrbbecSDK 1.5.7 OrbbecSDK: Software-Development-Kit for Orbbec 3D-Sensor devices

- 首页
- 命名空间
- 类
- 文件

- 文件列表
- 文件成员

类 | 宏定义 | 类型定义 | 枚举
ObTypes.h 文件参考

提供 SDK 常用的结构体、枚举常量定义。 更多...

`#include <stdbool.h>`
`#include <stdint.h>`

浏览源代码.

## 类
struct | ob_error
| SDK 的对外暴露的错误类，用户可以根据该错误类，获取详细的错误信息 更多...
struct | OBDataChunk
| 数据块结构体，用于数据分块传输 更多...
struct | OBIntPropertyRange
| 整形范围的结构体 更多...
struct | OBFloatPropertyRange
| 浮点型范围的结构体 更多...
struct | OBBoolPropertyRange
| 布尔型范围的结构体 更多...
struct | OBCameraIntrinsic
| 相机内参 更多...
struct | OBCameraDistortion
| 畸变参数 更多...
struct | OBD2CTransform
| 旋转 / 变换矩阵 更多...
struct | OBCameraParam
| 相机参数 更多...
struct | OBCameraParam_V0
| 相机参数 Gemini2 OBCmdVersion –> V0, 2022 年 10 月 13 日 09:09:30 更多...
struct | OBDERectifyMaskParams
| 深度对齐校验参数 更多...
struct | MaskFilterConfig_S
struct | OBRect
| 矩形 更多...
struct | OBAccelValue
| 加速度计及陀螺仪的数据结构体 更多...
struct | OBDeviceTemperature
| 获取设备的温度参数（单位：摄氏度） 更多...
struct | OBPoint
| SDK 中 3D 点结构体 更多...
struct | OBColorPoint
| 带有颜色信息的 3D 点结构体 更多...
struct | OBCompressionParams
struct | OBTofExposureThresholdControl
| TOF 曝光阈值 更多...
struct | OBDeviceSyncConfig
| 设备同步配置 更多...
struct | OBDepthWorkMode
| 相机深度工作模式 更多...
struct | OBProtocolVersion
| 控制命令协议版本号 更多...
struct | OBDataBundle
| OrbbecSDK私有接口, 未来对外开放 功能：保存多版本数据结构的数据内容； 更多...
struct | OBDeviceIpAddrConfig
| 网络设备的 IP 地址配置（ipv4） 更多...

## 宏定义
#define | OB_EXTENSION_API __attribute__((visibility("default")))
#define | OB_EXTENSION_INTERNAL_API
#define | DEPRECATED
#define | OB_FORMAT_RGB888 OB_FORMAT_RGB
#define | OB_FORMAT_MJPEG OB_FORMAT_MJPG
#define | FORMAT_MJPEG_TO_I420 FORMAT_MJPG_TO_I420
#define | FORMAT_MJPEG_TO_NV21 FORMAT_MJPG_TO_NV21
#define | FORMAT_MJPEG_TO_RGB888 FORMAT_MJPG_TO_RGB888
#define | FORMAT_MJPEG_TO_BGR888 FORMAT_MJPG_TO_BGR888
#define | FORMAT_MJPEG_TO_BGRA FORMAT_MJPG_TO_BGRA
#define | OB_SYNC_STOP OB_SYNC_MODE_CLOSE
#define | OB_SYNC_SINGLE_MODE OB_SYNC_MODE_STANDALONE
#define | OB_SYNC_ONLINE_HOST_MODE OB_SYNC_MODE_PRIMARY
#define | OB_SYNC_ONLINE_SLAVE_MODE OB_SYNC_MODE_SECONDARY
#define | OB_SYNC_ONLY_MCU_MODE OB_SYNC_MODE_PRIMARY_MCU_TRIGGER
#define | OB_SYNC_ONLY_IR_MODE OB_SYNC_MODE_PRIMARY_IR_TRIGGER
#define | OBMultiDeviceSyncConfig OBDeviceSyncConfig
#define | ob_multi_device_sync_config ob_device_sync_config
#define | ob_filter_callback ob_frame_callback
#define | ob_playback_callback ob_frame_callback
#define | is_ir_sensor(sensor_type) (sensor_type == OB_SENSOR_IR || sensor_type == OB_SENSOR_IR_LEFT || sensor_type == OB_SENSOR_IR_RIGHT)
| 判断是否为 IR Sensor 更多...
#define | isIRSensor is_ir_sensor
#define | is_ir_stream(stream_type) (stream_type == OB_STREAM_IR || stream_type == OB_STREAM_IR_LEFT || stream_type == OB_STREAM_IR_RIGHT)
| 判断是否为 IR 数据流 更多...
#define | isIRStream is_ir_stream
#define | is_ir_frame(frame_type) (frame_type == OB_FRAME_IR || frame_type == OB_FRAME_IR_LEFT || frame_type == OB_FRAME_IR_RIGHT)
| 判断是否为 IR 数据帧 更多...
#define | isIRFrame is_ir_frame

## 类型定义
typedef struct ContextImpl | ob_context
typedef struct DeviceImpl | ob_device
typedef struct DeviceInfoImpl | ob_device_info
typedef struct DeviceListImpl | ob_device_list
typedef struct CameraParamListImpl | ob_camera_param_list
typedef struct SensorImpl | ob_sensor
typedef struct SensorListImpl | ob_sensor_list
typedef struct StreamProfileImpl | ob_stream_profile
typedef struct StreamProfileListImpl | ob_stream_profile_list
typedef struct CFrameImpl | ob_frame
typedef struct FilterImpl | ob_filter
typedef struct PipelineImpl | ob_pipeline
typedef struct ConfigImpl | ob_config
typedef struct RecorderImpl | ob_recorder
typedef struct PlaybackImpl | ob_playback
typedef struct OBDepthWorkModeListImpl | ob_depth_work_mode_list
typedef enum OBPermissionType | ob_permission_type
typedef enum OBStatus | ob_status
typedef enum OBLogSeverity | ob_log_severity
typedef enum OBLogSeverity | DEVICE_LOG_SEVERITY_LEVEL
typedef enum OBLogSeverity | OBDeviceLogSeverityLevel
typedef enum OBLogSeverity | ob_device_log_severity_level
typedef enum OBExceptionType | ob_exception_type
typedef struct ob_error | ob_error
| SDK 的对外暴露的错误类，用户可以根据该错误类，获取详细的错误信息 更多...
typedef enum OBSensorType | ob_sensor_type
typedef enum OBStreamType | ob_stream_type
typedef enum OBFrameType | ob_frame_type
typedef enum OBFormat | ob_format
typedef enum OBUpgradeState | ob_upgrade_state
typedef enum OBFileTranState | ob_file_tran_state
typedef enum OBDataTranState | ob_data_tran_state
typedef struct OBDataChunk | ob_data_chunk
typedef struct OBIntPropertyRange | ob_int_property_range
typedef struct OBFloatPropertyRange | ob_float_property_range
typedef struct OBBoolPropertyRange | ob_bool_property_range
typedef struct OBCameraIntrinsic | ob_camera_intrinsic
typedef struct OBCameraDistortion | ob_camera_distortion
typedef struct OBD2CTransform | ob_d2c_transform
typedef struct OBCameraParam | ob_camera_param
typedef struct OBCameraParam_V0 | ob_camera_param_v0
typedef struct OBDERectifyMaskParams | OBDERectifyMaskParams_V0
typedef struct MaskFilterConfig_S | ob_mask_filter_config
typedef struct MaskFilterConfig_S | OBMaskFilterConfig
typedef enum OBAlignMode | ob_align_mode
typedef struct OBRect | ob_rect
typedef enum OBConvertFormat | ob_convert_format
typedef enum OBGyroSampleRate | ob_gyro_sample_rate
typedef enum OBGyroSampleRate | OBAccelSampleRate
typedef enum OBGyroSampleRate | ob_accel_sample_rate
typedef enum OBGyroSampleRate | OB_SAMPLE_RATE
typedef enum OBGyroFullScaleRange | ob_gyro_full_scale_range
typedef enum OBGyroFullScaleRange | OB_GYRO_FULL_SCALE_RANGE
typedef enum OBAccelFullScaleRange | ob_accel_full_scale_range
typedef enum OBAccelFullScaleRange | OB_ACCEL_FULL_SCALE_RANGE
typedef struct OBAccelValue | OBGyroValue
typedef struct OBAccelValue | ob_accel_value
typedef struct OBAccelValue | ob_gyro_value
typedef uint64_t | OBDeviceState
| 设备状态码 更多...
typedef uint64_t | ob_device_state
typedef struct OBDeviceTemperature | ob_device_temperature
typedef struct OBDeviceTemperature | DEVICE_TEMPERATURE
typedef enum OBDepthCroppingMode | ob_depth_cropping_mode
typedef enum OBDepthCroppingMode | OB_DEPTH_CROPPING_MODE
typedef enum OBDeviceType | ob_device_type
typedef enum OBDeviceType | OB_DEVICE_TYPE
typedef enum OBMediaType | ob_media_type
typedef enum OBMediaType | OB_MEDIA_TYPE
typedef enum OBMediaState | ob_media_state
typedef enum OBMediaState | OB_MEDIA_STATE_EM
typedef enum OBDepthPrecisionLevel | ob_depth_precision_level
typedef enum OBDepthPrecisionLevel | OB_DEPTH_PRECISION_LEVEL
typedef enum OBTofFilterRange | ob_tof_filter_range
typedef enum OBTofFilterRange | TOF_FILTER_RANGE
typedef struct OBPoint | ob_point
typedef struct OBColorPoint | ob_color_point
typedef enum OBCompressionMode | ob_compression_mode
typedef enum OBCompressionMode | OB_COMPRESSION_MODE
typedef struct OBCompressionParams | ob_compression_params
typedef struct OBCompressionParams | OB_COMPRESSION_PARAMS
typedef struct OBTofExposureThresholdControl | ob_tof_exposure_threshold_control
typedef struct OBTofExposureThresholdControl | TOF_EXPOSURE_THRESHOLD_CONTROL
typedef enum OBSyncMode | ob_sync_mode
typedef enum OBSyncMode | OB_SYNC_MODE
typedef struct OBDeviceSyncConfig | ob_device_sync_config
typedef struct OBDeviceSyncConfig | OB_DEVICE_SYNC_CONFIG
typedef struct OBDepthWorkMode | ob_depth_work_mode
typedef struct OBProtocolVersion | ob_protocol_version
typedef enum OB_CMD_VERSION | OBCmdVersion
typedef enum OB_CMD_VERSION | ob_cmd_version
typedef struct OBDataBundle | OBDataBundle
| OrbbecSDK私有接口, 未来对外开放 功能：保存多版本数据结构的数据内容； 更多...
typedef struct OBDataBundle | ob_data_bundle
typedef struct OBDeviceIpAddrConfig | ob_device_ip_addr_config
typedef struct OBDeviceIpAddrConfig | DEVICE_IP_ADDR_CONFIG
typedef enum OBCommunicationType | ob_communication_type
typedef enum OBCommunicationType | OB_COMMUNICATION_TYPE
typedef enum OBUSBPowerState | ob_usb_power_state
typedef enum OBDCPowerState | ob_dc_power_state
typedef enum ob_rotate_degree_type | OBRotateDegreeType
typedef enum ob_power_line_freq_mode | OBPowerLineFreqMode
typedef enum OB_FRAME_AGGREGATE_OUTPUT_MODE | OBFrameAggregateOutputMode
typedef enum OB_FRAME_AGGREGATE_OUTPUT_MODE | ob_frame_aggregate_output_mode
typedef void(* | ob_file_send_callback) (ob_file_tran_state state, const char *message, uint8_t percent, void *user_data)
| 文件传输回调 更多...
typedef void(* | ob_device_upgrade_callback) (ob_upgrade_state state, const char *message, uint8_t percent, void *user_data)
typedef void(* | ob_device_state_callback) (ob_device_state state, const char *message, void *user_data)
| 设备状态回调 更多...
typedef void(* | ob_set_data_callback) (ob_data_tran_state state, uint8_t percent, void *user_data)
| 写数据的回调 更多...
typedef void(* | ob_get_data_callback) (ob_data_tran_state state, ob_data_chunk *dataChunk, void *user_data)
| 读数据回调 更多...
typedef void(* | ob_media_state_callback) (ob_media_state state, void *user_data)
| 媒体状态回调（录制和回放） 更多...
typedef void(* | ob_device_changed_callback) (ob_device_list *removed, ob_device_list *added, void *user_data)
| 设备变化（上下线）回调 更多...
typedef void(* | ob_frame_callback) (ob_frame *frame, void *user_data)
| 数据帧回调 更多...
typedef void(* | ob_frameset_callback) (ob_frame *frameset, void *user_data)
| 数据帧集合回调 更多...
typedef void( | ob_frame_destroy_callback) (void *buffer, void *context)
| 自定义删除回调，当引用计数为 0 时主动调用 更多...

## 枚举
enum | OBPermissionType { OB_PERMISSION_DENY = 0, OB_PERMISSION_READ = 1, OB_PERMISSION_WRITE = 2, OB_PERMISSION_READ_WRITE = 3 }
| 接口 / 属性的访问权限类型 更多...
enum | OBStatus { OB_STATUS_OK = 0, OB_STATUS_ERROR = 1 }
| 错误码 更多...
enum | OBLogSeverity { OB_LOG_SEVERITY_DEBUG, OB_LOG_SEVERITY_INFO, OB_LOG_SEVERITY_WARN, OB_LOG_SEVERITY_ERROR, OB_LOG_SEVERITY_FATAL, OB_LOG_SEVERITY_NONE }
| log 等级, 等级越高 Log 过滤力度越大 更多...
enum | OBExceptionType { OB_EXCEPTION_TYPE_UNKNOWN, OB_EXCEPTION_TYPE_CAMERA_DISCONNECTED, OB_EXCEPTION_TYPE_PLATFORM, OB_EXCEPTION_TYPE_INVALID_VALUE, OB_EXCEPTION_TYPE_WRONG_API_CALL_SEQUENCE, OB_EXCEPTION_TYPE_NOT_IMPLEMENTED, OB_EXCEPTION_TYPE_IO, OB_EXCEPTION_TYPE_MEMORY, OB_EXCEPTION_TYPE_UNSUPPORTED_OPERATION }
| SDK 内部的异常类型，通过异常类型，可以简单判断具体哪个类型的错误 详细的错误 API 接口函数、错误日志请参考 ob_error 的信息 更多...
enum | OBSensorType { OB_SENSOR_UNKNOWN = 0, OB_SENSOR_IR = 1, OB_SENSOR_COLOR = 2, OB_SENSOR_DEPTH = 3, OB_SENSOR_ACCEL = 4, OB_SENSOR_GYRO = 5, OB_SENSOR_IR_LEFT = 6, OB_SENSOR_IR_RIGHT = 7 }
| 描述传感器类型的枚举值 更多...
enum | OBStreamType { OB_STREAM_UNKNOWN = -1, OB_STREAM_VIDEO, OB_STREAM_IR = 1, OB_STREAM_COLOR = 2, OB_STREAM_DEPTH = 3, OB_STREAM_ACCEL = 4, OB_STREAM_GYRO = 5, OB_STREAM_IR_LEFT = 6, OB_STREAM_IR_RIGHT = 7 }
| 描述数据流类型的枚举值 更多...
enum | OBFrameType { OB_FRAME_UNKNOWN = -1, OB_FRAME_VIDEO = 0, OB_FRAME_IR = 1, OB_FRAME_COLOR = 2, OB_FRAME_DEPTH = 3, OB_FRAME_ACCEL = 4, OB_FRAME_SET = 5, OB_FRAME_POINTS = 6, OB_FRAME_GYRO = 7, OB_FRAME_IR_LEFT = 8, OB_FRAME_IR_RIGHT = 9 }
| 描述 Frame 类型枚举值 更多...
enum | OBFormat { OB_FORMAT_YUYV = 0, OB_FORMAT_YUY2 = 1, OB_FORMAT_UYVY = 2, OB_FORMAT_NV12 = 3, OB_FORMAT_NV21 = 4, OB_FORMAT_MJPG = 5, OB_FORMAT_H264 = 6, OB_FORMAT_H265 = 7, OB_FORMAT_Y16 = 8, OB_FORMAT_Y8 = 9, OB_FORMAT_Y10 = 10, OB_FORMAT_Y11 = 11, OB_FORMAT_Y12 = 12, OB_FORMAT_GRAY = 13, OB_FORMAT_HEVC = 14, OB_FORMAT_I420 = 15, OB_FORMAT_ACCEL = 16, OB_FORMAT_GYRO = 17, OB_FORMAT_POINT = 19, OB_FORMAT_RGB_POINT = 20, OB_FORMAT_RLE = 21, OB_FORMAT_RGB = 22, OB_FORMAT_BGR = 23, OB_FORMAT_Y14 = 24, OB_FORMAT_BGRA = 25, OB_FORMAT_COMPRESSED = 26, OB_FORMAT_UNKNOWN = 0xff }
| 描述像素格式的枚举值 更多...
enum | OBUpgradeState { STAT_FILE_TRANSFER = 4, STAT_DONE = 3, STAT_IN_PROGRESS = 2, STAT_START = 1, STAT_VERIFY_IMAGE = 0, ERR_VERIFY = -1, ERR_PROGRAM = -2, ERR_ERASE = -3, ERR_FLASH_TYPE = -4, ERR_IMAGE_SIZE = -5, ERR_OTHER = -6, ERR_DDR = -7, ERR_TIMEOUT = -8 }
| 固件升级状态 更多...
enum | OBFileTranState { FILE_TRAN_STAT_TRANSFER = 2, FILE_TRAN_STAT_DONE = 1, FILE_TRAN_STAT_PREPAR = 0, FILE_TRAN_ERR_DDR = -1, FILE_TRAN_ERR_NOT_ENOUGH_SPACE = -2, FILE_TRAN_ERR_PATH_NOT_WRITABLE = -3, FILE_TRAN_ERR_MD5_ERROR = -4, FILE_TRAN_ERR_WRITE_FLASH_ERROR = -5, FILE_TRAN_ERR_TIMEOUT = -6 }
| 文件传输状态 更多...
enum | OBDataTranState { DATA_TRAN_STAT_STOPPED = 3, DATA_TRAN_STAT_DONE = 2, DATA_TRAN_STAT_VERIFYING = 1, DATA_TRAN_STAT_TRANSFERRING = 0, DATA_TRAN_ERR_BUSY = -1, DATA_TRAN_ERR_UNSUPPORTED = -2, DATA_TRAN_ERR_TRAN_FAILED = -3, DATA_TRAN_ERR_VERIFY_FAILED = -4, DATA_TRAN_ERR_OTHER = -5 }
| 数据传输状态 更多...
enum | OBAlignMode { ALIGN_DISABLE, ALIGN_D2C_HW_MODE, ALIGN_D2C_SW_MODE }
| 对齐模式 更多...
enum | OBConvertFormat { FORMAT_YUYV_TO_RGB888 = 0, FORMAT_I420_TO_RGB888, FORMAT_NV21_TO_RGB888, FORMAT_NV12_TO_RGB888, FORMAT_MJPG_TO_I420, FORMAT_RGB888_TO_BGR, FORMAT_MJPG_TO_NV21, FORMAT_MJPG_TO_RGB888, FORMAT_MJPG_TO_BGR888, FORMAT_MJPG_TO_BGRA, FORMAT_UYVY_TO_RGB888, FORMAT_BGR_TO_RGB }
| 格式转换类型枚举 更多...
enum | OBGyroSampleRate { OB_SAMPLE_RATE_1_5625_HZ = 1, OB_SAMPLE_RATE_3_125_HZ, OB_SAMPLE_RATE_6_25_HZ, OB_SAMPLE_RATE_12_5_HZ, OB_SAMPLE_RATE_25_HZ, OB_SAMPLE_RATE_50_HZ, OB_SAMPLE_RATE_100_HZ, OB_SAMPLE_RATE_200_HZ, OB_SAMPLE_RATE_500_HZ, OB_SAMPLE_RATE_1_KHZ, OB_SAMPLE_RATE_2_KHZ, OB_SAMPLE_RATE_4_KHZ, OB_SAMPLE_RATE_8_KHZ, OB_SAMPLE_RATE_16_KHZ, OB_SAMPLE_RATE_32_KHZ }
| IMU 采样率值的枚举 (陀螺仪或加速度计) 更多...
enum | OBGyroFullScaleRange { OB_GYRO_FS_16dps = 1, OB_GYRO_FS_31dps, OB_GYRO_FS_62dps, OB_GYRO_FS_125dps, OB_GYRO_FS_250dps, OB_GYRO_FS_500dps, OB_GYRO_FS_1000dps, OB_GYRO_FS_2000dps }
| 陀螺仪量程的枚举 更多...
enum | OBAccelFullScaleRange { OB_ACCEL_FS_2g = 1, OB_ACCEL_FS_4g, OB_ACCEL_FS_8g, OB_ACCEL_FS_16g }
| 加速度计量程枚举 更多...
enum | OBDepthCroppingMode { DEPTH_CROPPING_MODE_AUTO = 0, DEPTH_CROPPING_MODE_CLOSE = 1, DEPTH_CROPPING_MODE_OPEN = 2 }
| 深度裁切模式枚举 更多...
enum | OBDeviceType { OB_STRUCTURED_LIGHT_MONOCULAR_CAMERA = 0, OB_STRUCTURED_LIGHT_BINOCULAR_CAMERA = 1, OB_TOF_CAMERA = 2 }
| 设备类型枚举 更多...
enum | OBMediaType { OB_MEDIA_COLOR_STREAM = 1, OB_MEDIA_DEPTH_STREAM = 2, OB_MEDIA_IR_STREAM = 4, OB_MEDIA_GYRO_STREAM = 8, OB_MEDIA_ACCEL_STREAM = 16, OB_MEDIA_CAMERA_PARAM = 32, OB_MEDIA_DEVICE_INFO = 64, OB_MEDIA_STREAM_INFO = 128, OB_MEDIA_IR_LEFT_STREAM = 256, OB_MEDIA_IR_RIGHT_STREAM = 512, OB_MEDIA_ALL }
| 录制回放感兴趣数据类型 更多...
enum | OBMediaState { OB_MEDIA_BEGIN = 0, OB_MEDIA_PAUSE, OB_MEDIA_RESUME, OB_MEDIA_END }
| 录制回放状态 更多...
enum | OBDepthPrecisionLevel { OB_PRECISION_1MM, OB_PRECISION_0MM8, OB_PRECISION_0MM4, OB_PRECISION_0MM1, OB_PRECISION_0MM2, OB_PRECISION_COUNT }
| 深度精度等级 更多...
enum | OBTofFilterRange { OB_TOF_FILTER_RANGE_CLOSE = 0, OB_TOF_FILTER_RANGE_MIDDLE = 1, OB_TOF_FILTER_RANGE_LONG = 2, OB_TOF_FILTER_RANGE_DEBUG = 100 }
| tof 滤波场景范围 更多...
enum | OBCompressionMode { OB_COMPRESSION_LOSSLESS = 0, OB_COMPRESSION_LOSSY = 1 }
enum | OBSyncMode { OB_SYNC_MODE_CLOSE = 0x00, OB_SYNC_MODE_STANDALONE = 0x01, OB_SYNC_MODE_PRIMARY = 0x02, OB_SYNC_MODE_SECONDARY = 0x03, OB_SYNC_MODE_PRIMARY_MCU_TRIGGER = 0x04, OB_SYNC_MODE_PRIMARY_IR_TRIGGER = 0x05, OB_SYNC_MODE_PRIMARY_SOFT_TRIGGER = 0x06, OB_SYNC_MODE_SECONDARY_SOFT_TRIGGER = 0x07, OB_SYNC_MODE_UNKNOWN = 0xff }
| 同步模式 更多...
enum | OB_CMD_VERSION { OB_CMD_VERSION_V0 = (uint16_t)0, OB_CMD_VERSION_V1 = (uint16_t)1, OB_CMD_VERSION_V2 = (uint16_t)2, OB_CMD_VERSION_V3 = (uint16_t)3, OB_CMD_VERSION_NOVERSION = (uint16_t)0xfffe, OB_CMD_VERSION_INVALID = (uint16_t)0xffff }
enum | OBCommunicationType { OB_COMM_USB = 0x00, OB_COMM_NET = 0x01 }
| 设备通信模式 更多...
enum | OBUSBPowerState { OB_USB_POWER_NO_PLUGIN = 0, OB_USB_POWER_5V_0A9 = 1, OB_USB_POWER_5V_1A5 = 2, OB_USB_POWER_5V_3A0 = 3 }
| USB电源连接状态 更多...
enum | OBDCPowerState { OB_DC_POWER_NO_PLUGIN = 0, OB_DC_POWER_PLUGIN = 1 }
| DC电源连接状态 更多...
enum | ob_rotate_degree_type { OB_ROTATE_DEGREE_0 = 0, OB_ROTATE_DEGREE_90 = 90, OB_ROTATE_DEGREE_180 = 180, OB_ROTATE_DEGREE_270 = 270 }
| 旋转角度 更多...
enum | ob_power_line_freq_mode { OB_POWER_LINE_FREQ_MODE_CLOSE = 0, OB_POWER_LINE_FREQ_MODE_50HZ = 1, OB_POWER_LINE_FREQ_MODE_60HZ = 2 }
| 电力线频率模式，用于Color相机防闪烁功能配置 更多...
enum | OB_FRAME_AGGREGATE_OUTPUT_MODE { OB_FRAME_AGGREGATE_OUTPUT_FULL_FRAME_REQUIRE = 0, OB_FRAME_AGGREGATE_OUTPUT_COLOR_FRAME_REQUIRE, OB_FRAME_AGGREGATE_OUTPUT_ANY_SITUATION }
| 帧汇聚输出模式 更多...

## 详细描述

提供 SDK 常用的结构体、枚举常量定义。

在文件 ObTypes.h 中定义.

## 宏定义说明

#define OB_EXTENSION_API __attribute__((visibility("default")))

在文件 ObTypes.h 第 25 行定义.

#define OB_EXTENSION_INTERNAL_API

在文件 ObTypes.h 第 26 行定义.

#define DEPRECATED

在文件 ObTypes.h 第 35 行定义.

#define OB_FORMAT_RGB888 OB_FORMAT_RGB

在文件 ObTypes.h 第 256 行定义.

#define OB_FORMAT_MJPEG OB_FORMAT_MJPG

在文件 ObTypes.h 第 257 行定义.

#define FORMAT_MJPEG_TO_I420 FORMAT_MJPG_TO_I420

在文件 ObTypes.h 第 538 行定义.

#define FORMAT_MJPEG_TO_NV21 FORMAT_MJPG_TO_NV21

在文件 ObTypes.h 第 539 行定义.

#define FORMAT_MJPEG_TO_RGB888 FORMAT_MJPG_TO_RGB888

在文件 ObTypes.h 第 540 行定义.

#define FORMAT_MJPEG_TO_BGR888 FORMAT_MJPG_TO_BGR888

在文件 ObTypes.h 第 541 行定义.

#define FORMAT_MJPEG_TO_BGRA FORMAT_MJPG_TO_BGRA

在文件 ObTypes.h 第 542 行定义.

#define OB_SYNC_STOP OB_SYNC_MODE_CLOSE

在文件 ObTypes.h 第 943 行定义.

#define OB_SYNC_SINGLE_MODE OB_SYNC_MODE_STANDALONE

在文件 ObTypes.h 第 944 行定义.

#define OB_SYNC_ONLINE_HOST_MODE OB_SYNC_MODE_PRIMARY

在文件 ObTypes.h 第 945 行定义.

#define OB_SYNC_ONLINE_SLAVE_MODE OB_SYNC_MODE_SECONDARY

在文件 ObTypes.h 第 946 行定义.

#define OB_SYNC_ONLY_MCU_MODE OB_SYNC_MODE_PRIMARY_MCU_TRIGGER

在文件 ObTypes.h 第 947 行定义.

#define OB_SYNC_ONLY_IR_MODE OB_SYNC_MODE_PRIMARY_IR_TRIGGER

在文件 ObTypes.h 第 948 行定义.

#define OBMultiDeviceSyncConfig OBDeviceSyncConfig

在文件 ObTypes.h 第 1052 行定义.

#define ob_multi_device_sync_config ob_device_sync_config

在文件 ObTypes.h 第 1053 行定义.

#define OB_MULTI_DEVICE_SYNC_CONFIG OB_DEVICE_SYNC_CONFIG

在文件 ObTypes.h 第 1054 行定义.

#define ob_filter_callback ob_frame_callback

在文件 ObTypes.h 第 1407 行定义.

#define ob_playback_callback ob_frame_callback

在文件 ObTypes.h 第 1408 行定义.

#define is_ir_sensor | ( |  | sensor_type | ) | (sensor_type == OB_SENSOR_IR || sensor_type == OB_SENSOR_IR_LEFT || sensor_type == OB_SENSOR_IR_RIGHT)

判断是否为 IR Sensor

在文件 ObTypes.h 第 1444 行定义.

#define isIRSensor is_ir_sensor

在文件 ObTypes.h 第 1445 行定义.

#define is_ir_stream | ( |  | stream_type | ) | (stream_type == OB_STREAM_IR || stream_type == OB_STREAM_IR_LEFT || stream_type == OB_STREAM_IR_RIGHT)

判断是否为 IR 数据流

在文件 ObTypes.h 第 1455 行定义.

#define isIRStream is_ir_stream

在文件 ObTypes.h 第 1456 行定义.

#define is_ir_frame | ( |  | frame_type | ) | (frame_type == OB_FRAME_IR || frame_type == OB_FRAME_IR_LEFT || frame_type == OB_FRAME_IR_RIGHT)

判断是否为 IR 数据帧

在文件 ObTypes.h 第 1466 行定义.

#define isIRFrame is_ir_frame

在文件 ObTypes.h 第 1467 行定义.

## 类型定义说明

typedef struct ContextImpl ob_context

在文件 ObTypes.h 第 47 行定义.

typedef struct DeviceImpl ob_device

在文件 ObTypes.h 第 48 行定义.

typedef struct DeviceInfoImpl ob_device_info

在文件 ObTypes.h 第 49 行定义.

typedef struct DeviceListImpl ob_device_list

在文件 ObTypes.h 第 50 行定义.

typedef struct CameraParamListImpl ob_camera_param_list

在文件 ObTypes.h 第 51 行定义.

typedef struct SensorImpl ob_sensor

在文件 ObTypes.h 第 52 行定义.

typedef struct SensorListImpl ob_sensor_list

在文件 ObTypes.h 第 53 行定义.

typedef struct StreamProfileImpl ob_stream_profile

在文件 ObTypes.h 第 54 行定义.

typedef struct StreamProfileListImpl ob_stream_profile_list

在文件 ObTypes.h 第 55 行定义.

typedef struct CFrameImpl ob_frame

在文件 ObTypes.h 第 56 行定义.

typedef struct FilterImpl ob_filter

在文件 ObTypes.h 第 57 行定义.

typedef struct PipelineImpl ob_pipeline

在文件 ObTypes.h 第 58 行定义.

typedef struct ConfigImpl ob_config

在文件 ObTypes.h 第 59 行定义.

typedef struct RecorderImpl ob_recorder

在文件 ObTypes.h 第 60 行定义.

typedef struct PlaybackImpl ob_playback

在文件 ObTypes.h 第 61 行定义.

typedef struct OBDepthWorkModeListImpl ob_depth_work_mode_list

在文件 ObTypes.h 第 62 行定义.

typedef enum OBPermissionType ob_permission_type

typedef enum OBStatus ob_status

typedef enum OBLogSeverity ob_log_severity

typedef enum OBLogSeverity DEVICE_LOG_SEVERITY_LEVEL

typedef enum OBLogSeverity OBDeviceLogSeverityLevel

typedef enum OBLogSeverity ob_device_log_severity_level

typedef enum OBExceptionType ob_exception_type

typedef struct ob_error ob_error

SDK 的对外暴露的错误类，用户可以根据该错误类，获取详细的错误信息

typedef enum OBSensorType ob_sensor_type

typedef enum OBStreamType ob_stream_type

typedef enum OBFrameType ob_frame_type

typedef enum OBFormat ob_format

typedef enum OBUpgradeState ob_upgrade_state

typedef enum OBFileTranState ob_file_tran_state

typedef enum OBDataTranState ob_data_tran_state

typedef struct OBDataChunk ob_data_chunk

typedef struct OBIntPropertyRange ob_int_property_range

typedef struct OBFloatPropertyRange ob_float_property_range

typedef struct OBBoolPropertyRange ob_bool_property_range

typedef struct OBCameraIntrinsic ob_camera_intrinsic

typedef struct OBCameraDistortion ob_camera_distortion

typedef struct OBD2CTransform ob_d2c_transform

typedef struct OBCameraParam ob_camera_param

typedef struct OBCameraParam_V0 ob_camera_param_v0

typedef struct OBDERectifyMaskParams OBDERectifyMaskParams_V0

typedef struct MaskFilterConfig_S ob_mask_filter_config

typedef struct MaskFilterConfig_S OBMaskFilterConfig

typedef enum OBAlignMode ob_align_mode

typedef struct OBRect ob_rect

typedef enum OBConvertFormat ob_convert_format

typedef enum OBGyroSampleRate ob_gyro_sample_rate

typedef enum OBGyroSampleRate OBAccelSampleRate

typedef enum OBGyroSampleRate ob_accel_sample_rate

typedef enum OBGyroSampleRate OB_SAMPLE_RATE

typedef enum OBGyroFullScaleRange ob_gyro_full_scale_range

typedef enum OBGyroFullScaleRange OB_GYRO_FULL_SCALE_RANGE

typedef enum OBAccelFullScaleRange ob_accel_full_scale_range

typedef enum OBAccelFullScaleRange OB_ACCEL_FULL_SCALE_RANGE

typedef struct OBAccelValue OBGyroValue

typedef struct OBAccelValue ob_accel_value

typedef struct OBAccelValue ob_gyro_value

typedef uint64_t OBDeviceState

设备状态码

在文件 ObTypes.h 第 624 行定义.

typedef uint64_t ob_device_state

在文件 ObTypes.h 第 624 行定义.

typedef struct OBDeviceTemperature ob_device_temperature

typedef struct OBDeviceTemperature DEVICE_TEMPERATURE

typedef enum OBDepthCroppingMode ob_depth_cropping_mode

typedef enum OBDepthCroppingMode OB_DEPTH_CROPPING_MODE

typedef enum OBDeviceType ob_device_type

typedef enum OBDeviceType OB_DEVICE_TYPE

typedef enum OBMediaType ob_media_type

typedef enum OBMediaType OB_MEDIA_TYPE

typedef enum OBMediaState ob_media_state

typedef enum OBMediaState OB_MEDIA_STATE_EM

typedef enum OBDepthPrecisionLevel ob_depth_precision_level

typedef enum OBDepthPrecisionLevel OB_DEPTH_PRECISION_LEVEL

typedef enum OBTofFilterRange ob_tof_filter_range

typedef enum OBTofFilterRange TOF_FILTER_RANGE

typedef struct OBPoint ob_point

typedef struct OBColorPoint ob_color_point

typedef enum OBCompressionMode ob_compression_mode

typedef enum OBCompressionMode OB_COMPRESSION_MODE

typedef struct OBCompressionParams ob_compression_params

typedef struct OBCompressionParams OB_COMPRESSION_PARAMS

typedef struct OBTofExposureThresholdControl ob_tof_exposure_threshold_control

typedef struct OBTofExposureThresholdControl TOF_EXPOSURE_THRESHOLD_CONTROL

typedef enum OBSyncMode ob_sync_mode

typedef enum OBSyncMode OB_SYNC_MODE

typedef struct OBDeviceSyncConfig ob_device_sync_config

typedef struct OBDeviceSyncConfig OB_DEVICE_SYNC_CONFIG

typedef struct OBDepthWorkMode ob_depth_work_mode

typedef struct OBProtocolVersion ob_protocol_version

typedef enum OB_CMD_VERSION OBCmdVersion

typedef enum OB_CMD_VERSION ob_cmd_version

typedef struct OBDataBundle OBDataBundle

OrbbecSDK私有接口, 未来对外开放 功能：保存多版本数据结构的数据内容；

1. 通过propertyId和cmdVersion可以决定具体的数据类型；
2. 通过itemCount可以决定data内容映射的对象数量；
3. 由于 C 语言和 C++ 支持的特性差异，OBDataBundle 的 data 需要释放资源，导致实现上的差异 C 语言： 由于 C 语言没有模板，因此 data 是 uint8_t 数组，itemTypeSize == 1，dataSize == itemCount； C 语言需要开发者自行将 data 的 byte 数组转换为目标数据结构

C++: C++支持模板，因此data是目标数据结构T的数组，itemTypeSize = sizeof(T)，itemCount = dataSize / itemTypeSize;

typedef struct OBDataBundle ob_data_bundle

typedef struct OBDeviceIpAddrConfig ob_device_ip_addr_config

typedef struct OBDeviceIpAddrConfig DEVICE_IP_ADDR_CONFIG

typedef enum OBCommunicationType ob_communication_type

typedef enum OBCommunicationType OB_COMMUNICATION_TYPE

typedef enum OBUSBPowerState ob_usb_power_state

typedef enum OBDCPowerState ob_dc_power_state

typedef enum ob_rotate_degree_type OBRotateDegreeType

typedef enum ob_power_line_freq_mode OBPowerLineFreqMode

typedef enum OB_FRAME_AGGREGATE_OUTPUT_MODE OBFrameAggregateOutputMode

typedef enum OB_FRAME_AGGREGATE_OUTPUT_MODE ob_frame_aggregate_output_mode

typedef void(* ob_file_send_callback) (ob_file_tran_state state, const char *message, uint8_t percent, void *user_data)

文件传输回调

参数

  state | 传输状态
  message | 传输状态信息
  state | 传输进度百分比
  user_data | 用户自定义数据

在文件 ObTypes.h 第 1304 行定义.

typedef void(* ob_device_upgrade_callback) (ob_upgrade_state state, const char *message, uint8_t percent, void *user_data)

在文件 ObTypes.h 第 1320 行定义.

typedef void(* ob_device_state_callback) (ob_device_state state, const char *message, void *user_data)

设备状态回调

参数

  state | 设备状态
  message | 设备状态信息
  user_data | 用户自定义数据

在文件 ObTypes.h 第 1335 行定义.

typedef void(* ob_set_data_callback) (ob_data_tran_state state, uint8_t percent, void *user_data)

写数据的回调

参数

  state | 写数据状态
  percent | 写数据百分比
  user_data | 用户自定义数据

在文件 ObTypes.h 第 1350 行定义.

typedef void(* ob_get_data_callback) (ob_data_tran_state state, ob_data_chunk *dataChunk, void *user_data)

读数据回调

参数

  state | 读数据状态
  dataChunk | 读取返回的数据块
  user_data | 用户自定义数据

在文件 ObTypes.h 第 1365 行定义.

typedef void(* ob_media_state_callback) (ob_media_state state, void *user_data)

媒体状态回调（录制和回放）

参数

  state | 状态
  user_data | 用户自定义数据

在文件 ObTypes.h 第 1378 行定义.

typedef void(* ob_device_changed_callback) (ob_device_list *removed, ob_device_list *added, void *user_data)

设备变化（上下线）回调

参数

  removed | 已删除（掉线）的设备列表
  added | 已添加（上线）的设备列表
  user_data | 用户自定义数据

在文件 ObTypes.h 第 1393 行定义.

typedef void(* ob_frame_callback) (ob_frame *frame, void *user_data)

数据帧回调

参数

  frame | 数据帧
  user_data | 用户自定义数据

在文件 ObTypes.h 第 1406 行定义.

typedef void(* ob_frameset_callback) (ob_frame *frameset, void *user_data)

数据帧集合回调

参数

  frameset | 数据帧集合
  user_data | 用户自定义数据

在文件 ObTypes.h 第 1421 行定义.

typedef void( ob_frame_destroy_callback) (void *buffer, void *context)

自定义删除回调，当引用计数为 0 时主动调用

参数

  buffer | 需要被删除的数据
  context | 用户传入的数据

在文件 ObTypes.h 第 1434 行定义.

## 枚举类型说明

enum OBPermissionType

接口 / 属性的访问权限类型

枚举值
OB_PERMISSION_DENY | 无访问权限
OB_PERMISSION_READ | 可读
OB_PERMISSION_WRITE | 可写
OB_PERMISSION_READ_WRITE | 可读写

在文件 ObTypes.h 第 71 行定义.

enum OBStatus

错误码

枚举值
OB_STATUS_OK | 状态正常
OB_STATUS_ERROR | 状态异常

在文件 ObTypes.h 第 86 行定义.

enum OBLogSeverity

log 等级, 等级越高 Log 过滤力度越大

枚举值
OB_LOG_SEVERITY_DEBUG | 调试
OB_LOG_SEVERITY_INFO | 信息
OB_LOG_SEVERITY_WARN | 警告
OB_LOG_SEVERITY_ERROR | 错误
OB_LOG_SEVERITY_FATAL | 致命错误
OB_LOG_SEVERITY_NONE | 无 (关闭 LOG)

在文件 ObTypes.h 第 99 行定义.

enum OBExceptionType

SDK 内部的异常类型，通过异常类型，可以简单判断具体哪个类型的错误 详细的错误 API 接口函数、错误日志请参考 ob_error 的信息

枚举值
OB_EXCEPTION_TYPE_UNKNOWN | 未知错误，SDK 未明确定义的错误
OB_EXCEPTION_TYPE_CAMERA_DISCONNECTED | SDK 的设备断开的异常
OB_EXCEPTION_TYPE_PLATFORM | 在 SDK 适配平台层错误，代表是具体一个系统平台实现上错误
OB_EXCEPTION_TYPE_INVALID_VALUE | 无效的参数类型异常，需要检查输入参数
OB_EXCEPTION_TYPE_WRONG_API_CALL_SEQUENCE | API 版本不匹配带来的异常
OB_EXCEPTION_TYPE_NOT_IMPLEMENTED | SDK 及固件还未实现功能
OB_EXCEPTION_TYPE_IO | SDK 访问 IO 异常错误
OB_EXCEPTION_TYPE_MEMORY | SDK 的访问和使用内存错误，代表桢分配内存失败 \ endif
OB_EXCEPTION_TYPE_UNSUPPORTED_OPERATION | SDK 或 RGBD 设备不支持的操作类型错误

在文件 ObTypes.h 第 118 行定义.

enum OBSensorType

描述传感器类型的枚举值

枚举值
OB_SENSOR_UNKNOWN | 未知类型传感器
OB_SENSOR_IR | 红外
OB_SENSOR_COLOR | 彩色
OB_SENSOR_DEPTH | 深度
OB_SENSOR_ACCEL | 加速度计
OB_SENSOR_GYRO | 陀螺仪
OB_SENSOR_IR_LEFT | 左红外
OB_SENSOR_IR_RIGHT | 右红外

在文件 ObTypes.h 第 159 行定义.

enum OBStreamType

描述数据流类型的枚举值

枚举值
OB_STREAM_UNKNOWN | 未知类型数据流
OB_STREAM_VIDEO | 视频流 (红外、彩色、深度流都属于视频流)
OB_STREAM_IR | 红外流
OB_STREAM_COLOR | 彩色流
OB_STREAM_DEPTH | 深度流
OB_STREAM_ACCEL | 加速度计数据流
OB_STREAM_GYRO | 陀螺仪数据流
OB_STREAM_IR_LEFT | 左路红外流
OB_STREAM_IR_RIGHT | 右路红外流

在文件 ObTypes.h 第 178 行定义.

enum OBFrameType

描述 Frame 类型枚举值

枚举值
OB_FRAME_UNKNOWN | 未知类型数据帧
OB_FRAME_VIDEO | 视频帧 (红外、彩色、深度帧都属于视频帧)
OB_FRAME_IR | 红外帧
OB_FRAME_COLOR | 彩色帧
OB_FRAME_DEPTH | 深度帧
OB_FRAME_ACCEL | 加速度计数据帧
OB_FRAME_SET | 帧集合(内部包含多种数据帧)
OB_FRAME_POINTS | 点云帧
OB_FRAME_GYRO | 陀螺仪数据帧
OB_FRAME_IR_LEFT | 左路红外帧
OB_FRAME_IR_RIGHT | 右路红外帧

在文件 ObTypes.h 第 199 行定义.

enum OBFormat

描述像素格式的枚举值

枚举值
OB_FORMAT_YUYV | YUYV 格式
OB_FORMAT_YUY2 | YUY2 格式 (实际格式与 YUYV 相同)
OB_FORMAT_UYVY | UYVY 格式
OB_FORMAT_NV12 | NV12 格式
OB_FORMAT_NV21 | NV21 格式
OB_FORMAT_MJPG | MJPEG 编码格式
OB_FORMAT_H264 | H.264 编码格式
OB_FORMAT_H265 | H.265 编码格式
OB_FORMAT_Y16 | Y16 格式，单通道 16bit 深度
OB_FORMAT_Y8 | Y8 格式，单通道 8bit 深度
OB_FORMAT_Y10 | Y10 格式，单通道 10bit 深度 (SDK 默认会解包成 Y16)
OB_FORMAT_Y11 | Y11 格式，单通道 11bit 深度 (SDK 默认会解包成 Y16)
OB_FORMAT_Y12 | Y12 格式，单通道 12bit 深度 (SDK 默认会解包成 Y16)
OB_FORMAT_GRAY | GRAY 灰度 (实际格式与 YUYV 相同)
OB_FORMAT_HEVC | HEVC 编码格式 (实际格式与 H265 相同)
OB_FORMAT_I420 | I420 格式
OB_FORMAT_ACCEL | 加速度数据格式
OB_FORMAT_GYRO | 陀螺仪数据格式
OB_FORMAT_POINT | 纯 x-y-z 三维坐标点格式
OB_FORMAT_RGB_POINT | 带 RGB 信息的 x-y-z 三维坐标点格式
OB_FORMAT_RLE | RLE 压测格式 (SDK 默认会解包成 Y16)
OB_FORMAT_RGB | RGB888 格式 (实际 RGB888)
OB_FORMAT_BGR | BGR 格式 (实际 BRG888)
OB_FORMAT_Y14 | Y14 格式，单通道 14bit 深度 (SDK 默认会解包成 Y16)
OB_FORMAT_BGRA | BGRA
OB_FORMAT_COMPRESSED | 压缩格式
OB_FORMAT_UNKNOWN | 未知格式

在文件 ObTypes.h 第 221 行定义.

enum OBUpgradeState

固件升级状态

枚举值
STAT_FILE_TRANSFER | 文件传输中
STAT_DONE | 升级完成
STAT_IN_PROGRESS | 升级中
STAT_START | 开始升级
STAT_VERIFY_IMAGE | 镜像文件校验中
ERR_VERIFY | 校验失败
ERR_PROGRAM | 程序执行失败
ERR_ERASE | Flash 参数失败
ERR_FLASH_TYPE | Flash 类型错误
ERR_IMAGE_SIZE | 镜像文件大小错误
ERR_OTHER | 其他错误
ERR_DDR | DDR 访问错误
ERR_TIMEOUT | 超时错误

在文件 ObTypes.h 第 266 行定义.

enum OBFileTranState

文件传输状态

枚举值
FILE_TRAN_STAT_TRANSFER | 文件传输中
FILE_TRAN_STAT_DONE | 文件传输成功
FILE_TRAN_STAT_PREPAR | 准备中
FILE_TRAN_ERR_DDR | DDR 访问失败
FILE_TRAN_ERR_NOT_ENOUGH_SPACE | 目标空间不足错误
FILE_TRAN_ERR_PATH_NOT_WRITABLE | 目标路径不可写
FILE_TRAN_ERR_MD5_ERROR | MD5 校验错误
FILE_TRAN_ERR_WRITE_FLASH_ERROR | 写 Flash 错误
FILE_TRAN_ERR_TIMEOUT | 超时错误

在文件 ObTypes.h 第 289 行定义.

enum OBDataTranState

数据传输状态

枚举值
DATA_TRAN_STAT_STOPPED | 数据传输终止
DATA_TRAN_STAT_DONE | 数据传输完成
DATA_TRAN_STAT_VERIFYING | 数据校验中
DATA_TRAN_STAT_TRANSFERRING | 数据传输中
DATA_TRAN_ERR_BUSY | 传输忙
DATA_TRAN_ERR_UNSUPPORTED | 不支持
DATA_TRAN_ERR_TRAN_FAILED | 传输失败
DATA_TRAN_ERR_VERIFY_FAILED | 检验失败
DATA_TRAN_ERR_OTHER | 其他错误 \ endif

在文件 ObTypes.h 第 309 行定义.

enum OBAlignMode

对齐模式

枚举值
ALIGN_DISABLE | 关闭对齐
ALIGN_D2C_HW_MODE | 硬件 D2C 对齐模式
ALIGN_D2C_SW_MODE | 软件 D2C 对齐模式

在文件 ObTypes.h 第 493 行定义.

enum OBConvertFormat

格式转换类型枚举

枚举值
FORMAT_YUYV_TO_RGB888 | YUYV 转换为 RGB888
FORMAT_I420_TO_RGB888 | I420 转换为 RGB888
FORMAT_NV21_TO_RGB888 | NV21 转换为 RGB888
FORMAT_NV12_TO_RGB888 | NV12 转换为 RGB888
FORMAT_MJPG_TO_I420 | MJPG 转换为 I420
FORMAT_RGB888_TO_BGR | RGB888 转换为 BGR
FORMAT_MJPG_TO_NV21 | MJPG 转换为 NV21
FORMAT_MJPG_TO_RGB888 | MJPG 转换为 RGB888
FORMAT_MJPG_TO_BGR888 | MJPG 转换为 BGR888
FORMAT_MJPG_TO_BGRA | MJPG 转换为 BGRA
FORMAT_UYVY_TO_RGB888 | MJPG 转换为 RGB888
FORMAT_BGR_TO_RGB | BGR 转换为 RGB

在文件 ObTypes.h 第 521 行定义.

enum OBGyroSampleRate

IMU 采样率值的枚举 (陀螺仪或加速度计)

枚举值
OB_SAMPLE_RATE_1_5625_HZ | 1.5625Hz
OB_SAMPLE_RATE_3_125_HZ | 3.125Hz
OB_SAMPLE_RATE_6_25_HZ | 6.25Hz
OB_SAMPLE_RATE_12_5_HZ | 12.5Hz
OB_SAMPLE_RATE_25_HZ | 25Hz
OB_SAMPLE_RATE_50_HZ | 50Hz
OB_SAMPLE_RATE_100_HZ | 100Hz
OB_SAMPLE_RATE_200_HZ | 200Hz
OB_SAMPLE_RATE_500_HZ | 500Hz
OB_SAMPLE_RATE_1_KHZ | 1KHz
OB_SAMPLE_RATE_2_KHZ | 2KHz
OB_SAMPLE_RATE_4_KHZ | 4KHz
OB_SAMPLE_RATE_8_KHZ | 8KHz
OB_SAMPLE_RATE_16_KHZ | 16KHz
OB_SAMPLE_RATE_32_KHZ | 32Hz

在文件 ObTypes.h 第 551 行定义.

enum OBGyroFullScaleRange

陀螺仪量程的枚举

枚举值
OB_GYRO_FS_16dps | 16 度每秒
OB_GYRO_FS_31dps | 31 度每秒
OB_GYRO_FS_62dps | 62 度每秒
OB_GYRO_FS_125dps | 125 度每秒
OB_GYRO_FS_250dps | 250 度每秒
OB_GYRO_FS_500dps | 500 度每秒
OB_GYRO_FS_1000dps | 1000 度每秒
OB_GYRO_FS_2000dps | 2000 度每秒

在文件 ObTypes.h 第 577 行定义.

enum OBAccelFullScaleRange

加速度计量程枚举

枚举值
OB_ACCEL_FS_2g | 1 倍重力加速度
OB_ACCEL_FS_4g | 4 倍重力加速度
OB_ACCEL_FS_8g | 8 倍重力加速度
OB_ACCEL_FS_16g | 16 倍重力加速度 \ endif

在文件 ObTypes.h 第 596 行定义.

enum OBDepthCroppingMode

深度裁切模式枚举

枚举值
DEPTH_CROPPING_MODE_AUTO | 自动模式
DEPTH_CROPPING_MODE_CLOSE | 关闭裁切
DEPTH_CROPPING_MODE_OPEN | 打开裁切

在文件 ObTypes.h 第 654 行定义.

enum OBDeviceType

设备类型枚举

枚举值
OB_STRUCTURED_LIGHT_MONOCULAR_CAMERA | 单目结构光相机
OB_STRUCTURED_LIGHT_BINOCULAR_CAMERA | 双目结构光相机
OB_TOF_CAMERA | TOF 相机

在文件 ObTypes.h 第 668 行定义.

enum OBMediaType

录制回放感兴趣数据类型

枚举值
OB_MEDIA_COLOR_STREAM | 彩色流 \ endif
OB_MEDIA_DEPTH_STREAM | 深度流
OB_MEDIA_IR_STREAM | 红外流
OB_MEDIA_GYRO_STREAM | 陀螺仪数据流
OB_MEDIA_ACCEL_STREAM | 加速度计数据流
OB_MEDIA_CAMERA_PARAM | 相机参数
OB_MEDIA_DEVICE_INFO | 设备信息
OB_MEDIA_STREAM_INFO | 流信息
OB_MEDIA_IR_LEFT_STREAM | 左 IR 流
OB_MEDIA_IR_RIGHT_STREAM | 右 IR 流
OB_MEDIA_ALL | 所有媒体数据类型

在文件 ObTypes.h 第 682 行定义.

enum OBMediaState

录制回放状态

枚举值
OB_MEDIA_BEGIN | 开始
OB_MEDIA_PAUSE | 暂停
OB_MEDIA_RESUME | 继续
OB_MEDIA_END | 终止

在文件 ObTypes.h 第 707 行定义.

enum OBDepthPrecisionLevel

深度精度等级

注意
  深度精度等级并不完全决定深度的单位和真实精度，需要考虑数据打包格式的影响， 具体单位可通过 DepthFrame 的 getValueScale() 获取

枚举值
OB_PRECISION_1MM | 1mm
OB_PRECISION_0MM8 | 0.8mm
OB_PRECISION_0MM4 | 0.4mm
OB_PRECISION_0MM1 | 0.1mm
OB_PRECISION_0MM2 | 0.2mm
OB_PRECISION_COUNT |

在文件 ObTypes.h 第 725 行定义.

enum OBTofFilterRange

tof 滤波场景范围

枚举值
OB_TOF_FILTER_RANGE_CLOSE | 近距离范围
OB_TOF_FILTER_RANGE_MIDDLE | 中距离范围
OB_TOF_FILTER_RANGE_LONG | 远距离范围
OB_TOF_FILTER_RANGE_DEBUG | Debug 模式

在文件 ObTypes.h 第 742 行定义.

enum OBCompressionMode

枚举值
OB_COMPRESSION_LOSSLESS |
OB_COMPRESSION_LOSSY |

在文件 ObTypes.h 第 779 行定义.

enum OBSyncMode

同步模式

枚举值
OB_SYNC_MODE_CLOSE | 同步关闭 单机，不接收外部触发信号，不输出触发信号 单机内各 Sensor 自触发
OB_SYNC_MODE_STANDALONE | 单机模式 单机，不接收外部触发信号，不输出触发信号 单机内 RGB 做主： RGB -> IR/Depth/TOF
OB_SYNC_MODE_PRIMARY | 主机模式 主机，不接收外部触发信号，向外输出触发信号 单机内 RGB 做主：RGB -> IR/Depth/TOF 注意 部分设备型号不支持该模式： Gemini 2 设备设置该模式会自动变更为 OB_SYNC_MODE_PRIMARY_MCU_TRIGGER 模式
OB_SYNC_MODE_SECONDARY | 从机模式 从机，接收外部触发信号，同时向外中继输出触发信号 单机内不同 Sensor 各自接收触发信号：ext trigger -> RGB && ext trigger -> IR/Depth/TOF 注意 当前 Gemini 2 设备设置为该模式后，各Sensor在开流后，接收到第一次外部触发信号即开始按照设置的帧率进行定时自触发，直到流关闭
OB_SYNC_MODE_PRIMARY_MCU_TRIGGER | MCU 主模式 主机，不接收外部触发信号，向外输出触发信号 单机内 MCU 做主： MCU -> RGB && MCU -> IR/Depth/TOF
OB_SYNC_MODE_PRIMARY_IR_TRIGGER | IR 主模式 主机，不接收外部触发信号，向外输出触发信号 单机内 IR 做主：IR/Depth/TOF -> RGB
OB_SYNC_MODE_PRIMARY_SOFT_TRIGGER | 软触发模式 主机，由软件控制触发（接收上位机命令触发），同时向外中继输出触发信号 单机内不同 Sensor 各自接收触发信号：soft trigger -> RGB && soft trigger -> IR/Depth/TOF 注意 当前仅 Gemini2 支持该模式
OB_SYNC_MODE_SECONDARY_SOFT_TRIGGER | 软触发从机模式 从机，接收外部触发信号（外部触发信号来自软触发的主机），同时向外中继输出触发信号。 单机内不同 Sensor 各自接收触发信号：ext trigger -> RGB && ext trigger -> IR/Depth/TOF 注意 当前仅 Gemini2 支持该模式
OB_SYNC_MODE_UNKNOWN | 未知类型

在文件 ObTypes.h 第 808 行定义.

enum OB_CMD_VERSION

与属性ID关联的协议版本

枚举值
OB_CMD_VERSION_V0 | 版本1.0
OB_CMD_VERSION_V1 | 版本2.0
OB_CMD_VERSION_V2 | 版本3.0
OB_CMD_VERSION_V3 | 版本4.0
OB_CMD_VERSION_NOVERSION |
OB_CMD_VERSION_INVALID | 无效版本

在文件 ObTypes.h 第 1097 行定义.

enum OBCommunicationType

设备通信模式

枚举值
OB_COMM_USB | USB.
OB_COMM_NET | 以太网

在文件 ObTypes.h 第 1171 行定义.

enum OBUSBPowerState

USB电源连接状态

枚举值
OB_USB_POWER_NO_PLUGIN | 未插入
OB_USB_POWER_5V_0A9 | 5V/0.9A
OB_USB_POWER_5V_1A5 | 5V/1.5A
OB_USB_POWER_5V_3A0 | 5V/3.0A

在文件 ObTypes.h 第 1184 行定义.

enum OBDCPowerState

DC电源连接状态

枚举值
OB_DC_POWER_NO_PLUGIN | 未插入
OB_DC_POWER_PLUGIN | 已插入

在文件 ObTypes.h 第 1199 行定义.

enum ob_rotate_degree_type

旋转角度

枚举值
OB_ROTATE_DEGREE_0 | 旋转0度
OB_ROTATE_DEGREE_90 | 旋转90度
OB_ROTATE_DEGREE_180 | 旋转180度
OB_ROTATE_DEGREE_270 | 旋转270度

在文件 ObTypes.h 第 1212 行定义.

enum ob_power_line_freq_mode

电力线频率模式，用于Color相机防闪烁功能配置

枚举值
OB_POWER_LINE_FREQ_MODE_CLOSE | 关闭
OB_POWER_LINE_FREQ_MODE_50HZ | 50Hz
OB_POWER_LINE_FREQ_MODE_60HZ | 60Hz

在文件 ObTypes.h 第 1227 行定义.

enum OB_FRAME_AGGREGATE_OUTPUT_MODE

帧汇聚输出模式

枚举值
OB_FRAME_AGGREGATE_OUTPUT_FULL_FRAME_REQUIRE | 只有包含所有类型数据帧的FrameSet才会被输出
OB_FRAME_AGGREGATE_OUTPUT_COLOR_FRAME_REQUIRE | 必须包含Color类似数据帧的FrameSet才会被输出 适用于Color使用H264、H265等帧间编码格式开流的情况 注意 该模式下，用户从获取到的FrameSet上获取非Color类型数据帧可能会返回空
OB_FRAME_AGGREGATE_OUTPUT_ANY_SITUATION | 任何情况的FrameSet都会被输出 注意 该模式下，用户从获取到的FrameSet上获取指定类型数据帧可能会返回空

在文件 ObTypes.h 第 1241 行定义.