OrbbecSDK  1.5.7
OrbbecSDK: Software-Development-Kit for Orbbec 3D-Sensor devices
Frame.h
Go to the documentation of this file.
1 
11 #pragma once
12 
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16 
17 #include "ObTypes.h"
18 
34 uint64_t ob_frame_index(ob_frame *frame, ob_error **error);
35 
52 
69 
85 uint64_t ob_frame_time_stamp(ob_frame *frame, ob_error **error);
86 
102 uint64_t ob_frame_time_stamp_us(ob_frame *frame, ob_error **error);
103 
119 uint64_t ob_frame_system_time_stamp(ob_frame *frame, ob_error **error);
120 
136 void *ob_frame_data(ob_frame *frame, ob_error **error);
137 
155 uint32_t ob_frame_data_size(ob_frame *frame, ob_error **error);
156 
172 uint32_t ob_video_frame_width(ob_frame *frame, ob_error **error);
173 
189 uint32_t ob_video_frame_height(ob_frame *frame, ob_error **error);
190 
206 void *ob_video_frame_metadata(ob_frame *frame, ob_error **error);
207 
223 uint32_t ob_video_frame_metadata_size(ob_frame *frame, ob_error **error);
224 
243 
244 /* @brief 查询IR frame的最原始数据来源(即使回放视频,其原始的数据源也是sensor)
245  * @param[in] frame 视频帧对象
246  * @param[out] error 记录错误信息
247  * @return uint8_t 返回
248  * \endif
249  */
251 
269 float ob_depth_frame_get_value_scale(ob_frame *frame, ob_error **error);
270 
290 
304 void ob_delete_frame(ob_frame *frame, ob_error **error);
305 
321 uint32_t ob_frameset_frame_count(ob_frame *frameset, ob_error **error);
322 
339 
356 
372 ob_frame *ob_frameset_ir_frame(ob_frame *frameset, ob_error **error);
373 
390 
394 ob_frame *ob_frameset_get_frame(ob_frame *frameset, ob_frame_type frame_type, ob_error **error);
395 
412 
428 float ob_accel_frame_temperature(ob_frame *frame, ob_error **error);
429 
446 
462 float ob_gyro_frame_temperature(ob_frame *frame, ob_error **error);
463 
470 void ob_frame_add_ref(ob_frame *frame, ob_error **error);
471 
483 ob_frame *ob_create_frame(ob_format frame_format, int width, int height, int stride_bytes, ob_frame_type frame_type, ob_error **error);
484 
498 ob_frame *ob_create_frame_from_buffer(ob_format frame_format, uint32_t frame_width, uint32_t frame_height, uint8_t *buffer, uint32_t buffer_size,
499  ob_frame_destroy_callback *buffer_destroy_cb, void *buffer_destroy_context, ob_error **error);
500 
508 
517 void ob_frameset_push_frame(ob_frame *frameset, ob_frame_type type, ob_frame *frame, ob_error **error);
518 
526 void ob_frame_set_system_time_stamp(ob_frame *frame, uint64_t system_timestamp, ob_error **error);
527 
535 void ob_frame_set_device_time_stamp(ob_frame *frame, uint64_t device_timestamp, ob_error **error);
536 
544 void ob_frame_set_device_time_stamp_us(ob_frame *frame, uint64_t device_timestamp_us, ob_error **error);
545 
546 #ifdef __cplusplus
547 }
548 #endif
void ob_frameset_push_frame(ob_frame *frameset, ob_frame_type type, ob_frame *frame, ob_error **error)
push帧
ob_accel_value ob_accel_frame_value(ob_frame *frame, ob_error **error)
Get accelerometer frame data.
uint8_t ob_video_frame_pixel_available_bit_size(ob_frame *frame, ob_error **error)
Get the effective number of pixels (such as Y16 format frame, but only the lower 10 bits are effectiv...
ob_gyro_value ob_gyro_frame_value(ob_frame *frame, ob_error **error)
Get gyroscope frame data.
uint32_t ob_frameset_frame_count(ob_frame *frameset, ob_error **error)
Get the number of frames contained in the frameset.
enum OBSensorType ob_sensor_type
float ob_depth_frame_get_value_scale(ob_frame *frame, ob_error **error)
Get the value scale of the depth frame. The pixel value of depth frame is multiplied by the scale to ...
uint32_t ob_frame_data_size(ob_frame *frame, ob_error **error)
Get the frame data size.
ob_frame_type ob_frame_get_type(ob_frame *frame, ob_error **error)
Get the frame type.
ob_format ob_frame_format(ob_frame *frame, ob_error **error)
Get the frame format.
uint64_t ob_frame_time_stamp_us(ob_frame *frame, ob_error **error)
Get frame time stamp (hardware) us.
uint64_t ob_frame_time_stamp(ob_frame *frame, ob_error **error)
Get frame time stamp (hardware)
Provide structs commonly used in the SDK, enumerating constant definitions.
Data structures for accelerometers and gyroscopes.
Definition: ObTypes.h:611
uint32_t ob_video_frame_width(ob_frame *frame, ob_error **error)
Get video frame width.
enum OBFrameType ob_frame_type
ob_frame * ob_frameset_points_frame(ob_frame *frameset, ob_error **error)
Get point cloud data from the frameset.
uint64_t ob_frame_system_time_stamp(ob_frame *frame, ob_error **error)
Get frame time stamp (system)
ob_frame * ob_frameset_depth_frame(ob_frame *frameset, ob_error **error)
Get the depth frame from the frameset.
float ob_gyro_frame_temperature(ob_frame *frame, ob_error **error)
Get the temperature when acquiring the gyroscope frame.
void ob_frame_set_device_time_stamp_us(ob_frame *frame, uint64_t device_timestamp_us, ob_error **error)
设置帧的设备时间戳
float ob_points_frame_get_position_value_scale(ob_frame *frame, ob_error **error)
Get the point position value scale of the points frame. the point position value of points frame is m...
ob_frame * ob_frameset_ir_frame(ob_frame *frameset, ob_error **error)
Get the infrared frame from the frameset.
ob_frame * ob_create_frame_from_buffer(ob_format frame_format, uint32_t frame_width, uint32_t frame_height, uint8_t *buffer, uint32_t buffer_size, ob_frame_destroy_callback *buffer_destroy_cb, void *buffer_destroy_context, ob_error **error)
根据外部创建的Buffer创建帧对象
uint64_t ob_frame_index(ob_frame *frame, ob_error **error)
Get the frame index.
ob_sensor_type ob_ir_frame_get_source_sensor_type(ob_frame *frame, ob_error **ob_error)
ob_frame * ob_create_frame(ob_format frame_format, int width, int height, int stride_bytes, ob_frame_type frame_type, ob_error **error)
创建空的帧对象
void * ob_frame_data(ob_frame *frame, ob_error **error)
Get frame data.
struct CFrameImpl ob_frame
Definition: ObTypes.h:56
ob_frame * ob_frameset_color_frame(ob_frame *frameset, ob_error **error)
Get the color frame from the frameset.
enum OBFormat ob_format
void( ob_frame_destroy_callback)(void *buffer, void *context)
Customize the delete callback, 当引用计数为 0 时主动调用
Definition: ObTypes.h:1434
ob_frame * ob_create_frameset(ob_error **error)
创建空的帧集合
ob_frame * ob_frameset_get_frame(ob_frame *frameset, ob_frame_type frame_type, ob_error **error)
void ob_frame_set_device_time_stamp(ob_frame *frame, uint64_t device_timestamp, ob_error **error)
设置帧的设备时间戳
float ob_accel_frame_temperature(ob_frame *frame, ob_error **error)
Get the temperature when acquiring the accelerometer frame.
void ob_frame_add_ref(ob_frame *frame, ob_error **error)
增加引用计数
uint32_t ob_video_frame_height(ob_frame *frame, ob_error **error)
Get video frame height.
void ob_delete_frame(ob_frame *frame, ob_error **error)
Delete frame.
void ob_frame_set_system_time_stamp(ob_frame *frame, uint64_t system_timestamp, ob_error **error)
设置帧的系统时间戳
uint32_t ob_video_frame_metadata_size(ob_frame *frame, ob_error **error)
Get the metadata size of the frame.
The error class exposed by the SDK, users can get detailed error information according to the erro...
Definition: ObTypes.h:142
void * ob_video_frame_metadata(ob_frame *frame, ob_error **error)
Get the metadata of the frame.