update SDK to v1.5.6

This commit is contained in:
Joe Dong
2023-02-27 14:04:06 +08:00
parent f8df9422d6
commit 30fa058f24
5 changed files with 98 additions and 10 deletions
@@ -1113,11 +1113,11 @@ typedef enum {
* propertyId && OBCmdVersion match only one data type.
* 2. itemCount is the number of data type contain in data bytes.
* 3. C language and C++ is difference.
*
*
* C language:
* data's type is an uint8_t pointer, user parse data to destionation type.
* data's type is an uint8_t pointer, user parse data to destionation type.
* itemTypeSize == 1,dataSize == itemCount;
*
*
* C++:
* data's type is the propertyId && OBCmdVersion's data type.
* itemTypeSize = sizeof(T),itemCount = dataSize / itemTypeSize;
@@ -1139,11 +1139,15 @@ typedef enum {
typedef struct OBDataBundle {
OBCmdVersion cmdVersion; ///< \if English propertyId's OBCmdVersion \else 与控制命令关联的数据结构的版本号 \endif
void * data; ///< \if English Data contain which contain itemCount of element. void *data = new T[itemCount];\else 数据内容,是一个数组,长度为 itemCount; void *data = new T[itemCount]; 数组元素类型为 T,类型 T 由 propertyId 和 cmdVersion 决定 \endif
uint32_t dataSize; ///< \if English Data size. unit: byte. dataSize == itemTypeSize * itemCount \else data 的大小,单位:byte,dataSize == itemTypeSize * itemCount \endif
void *data; ///< \if English Data contain which contain itemCount of element. void *data = new T[itemCount];\else 数据内容,是一个数组,长度为 itemCount;
///< void *data = new T[itemCount]; 数组元素类型为 T,类型 T 由 propertyId 和 cmdVersion 决定 \endif
uint32_t dataSize; ///< \if English Data size. unit: byte. dataSize == itemTypeSize * itemCount \else data 的大小,单位:byte,dataSize == itemTypeSize *
///< itemCount \endif
uint32_t itemTypeSize; ///< \if English Size of data item. C language, itemTypeSize = 1, C++: itemTypeSize = sizeof(T) \else data 内容映射的目标对象的数据类型大小,C 语言:1,C++:sizeof(T) \endif
uint32_t itemCount; ///< \if English Count of data item. itemCount = dataSize / itemTypeSize; 0 == dataSize % itemTypeSize; \else data 内容映射的目标对象数量,满足条件:itemCount = dataSize / itemTypeSize; 0 == dataSize % itemTypeSize; \endif
uint32_t itemTypeSize; ///< \if English Size of data item. C language, itemTypeSize = 1, C++: itemTypeSize = sizeof(T) \else data
///< 内容映射的目标对象的数据类型大小,C 语言:1,C++:sizeof(T) \endif
uint32_t itemCount; ///< \if English Count of data item. itemCount = dataSize / itemTypeSize; 0 == dataSize % itemTypeSize; \else data
///< 内容映射的目标对象数量,满足条件:itemCount = dataSize / itemTypeSize; 0 == dataSize % itemTypeSize; \endif
} OBDataBundle, ob_data_bundle;
/**
@@ -1227,6 +1231,61 @@ typedef enum {
} ob_power_line_freq_mode,
OBPowerLineFreqMode;
/**
* \if English
* @brief Frame aggregate output mode
* \else
* @brief 帧汇聚输出模式
* \endif
*/
typedef enum {
/**
* \if English
* @brief Only FrameSet that contains all types of data frames will be output
* \else
* @brief 只有包含所有类型数据帧的FrameSet才会被输出
* \endif
*/
OB_FRAME_AGGREGATE_OUTPUT_FULL_FRAME_REQUIRE = 0,
/**
* \if English
*
* @brief Frame aggregate output mode
* @brief Suitable for Color using H264, H265 and other inter-frame encoding format open stream
*
* @attention In this mode, the user may return null when getting a non-Color type data frame from the acquired FrameSet
*
* \else
*
* @brief 必须包含Color类似数据帧的FrameSet才会被输出
* @brief 适用于Color使用H264、H265等帧间编码格式开流的情况
*
* @attention 该模式下,用户从获取到的FrameSet上获取非Color类型数据帧可能会返回空
*
* \endif
*/
OB_FRAME_AGGREGATE_OUTPUT_COLOR_FRAME_REQUIRE,
/**
* \if English
*
* @brief FrameSet for any case will be output
*
* @attention In this mode, the user may return null when getting the specified type of data frame from the acquired FrameSet
*
* \else
*
* @brief 任何情况的FrameSet都会被输出
*
* @attention 该模式下,用户从获取到的FrameSet上获取指定类型数据帧可能会返回空
*
* \endif
*/
OB_FRAME_AGGREGATE_OUTPUT_ANY_SITUATION,
} OB_FRAME_AGGREGATE_OUTPUT_MODE,
OBFrameAggregateOutputMode, ob_frame_aggregate_output_mode;
/**
* \if English
* @brief file transfer callback
@@ -1377,7 +1436,7 @@ typedef void(ob_frame_destroy_callback)(void *buffer, void *context);
/**
* \if English
* @brief Check sensor_type is IR sensor, true: IR sensor, false: no IR sensor
* \else
* \else
* @brief 判断是否为 IR Sensor
* \endif
*
@@ -1388,7 +1447,7 @@ typedef void(ob_frame_destroy_callback)(void *buffer, void *context);
/**
* \if English
* @brief Check stream_type is IR stream, true: IR stream, false: no IR stream
* \else
* \else
* @brief 判断是否为 IR 数据流
* \endif
*
@@ -1399,7 +1458,7 @@ typedef void(ob_frame_destroy_callback)(void *buffer, void *context);
/**
* \if English
* @brief Check frame_type is IR frame, true: IR frame, false: no IR frame
* \else
* \else
* @brief 判断是否为 IR 数据帧
* \endif
*
@@ -551,6 +551,26 @@ void ob_config_set_depth_scale_require(ob_config *config, bool enable, ob_error
*/
void ob_config_set_d2c_target_resolution(ob_config *config, uint32_t d2c_target_width, uint32_t d2c_target_height, ob_error **error);
/**
* \if English
* @brief Frame aggregation output mode
* @brief The processing strategy when the FrameSet generated by the frame aggregation function does not contain the frames of all opened streams (which
* can be caused by different frame rates of each stream, or by the loss of frames of one stream): drop directly or output to the user
*
* @param config config object
* @param mode frame aggregation output mode(default mode is @ref OB_FRAME_AGGREGATE_OUTPUT_ANY_SITUATION)
* @param error Log error messages
* \else
* @brief 数据帧汇聚输出模式
* @brief 用于控制帧汇聚功能生成的FrameSet不包含所有已开启数据流的数据帧时(各路流帧率不同、或者某路流丢帧会导致这样的情况)的处理策略:直接丢弃或者输出给用户
*
* @param config config对象
* @param mode 数据帧汇聚输出模式(默认模式为 @ref OB_FRAME_AGGREGATE_OUTPUT_ANY_SITUATION)
* @param error 记录错误信息
* \endif
*/
void ob_config_set_frame_aggregate_output_mode(ob_config *config, ob_frame_aggregate_output_mode mode, ob_error **error);
#ifdef __cplusplus
}
#endif
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1fd566bbf6ceb1e3f973865412a7489f1c9be47d874361da605c9fa768a30d7f
size 76355036
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3cec1fed11172cb3b0a1f03ea85522468667cc16981874715ce6f04f1e3f38bf
size 88641824
@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:623462b1f4080c0acf4bcf8586dad60b17461afc3320e465b2e478ab9f97541f
size 86328864