[launch]Add frame_aggregate_mode param in launch

This commit is contained in:
zhuangzi
2025-01-13 18:02:22 +08:00
parent c3d3a45ecc
commit 8e4106b424
3 changed files with 16 additions and 0 deletions
@@ -590,5 +590,7 @@ class OBCameraNode {
int depth_ae_roi_top_ = -1;
int depth_ae_roi_right_ = -1;
int depth_ae_roi_bottom_ = -1;
std::string frame_aggregate_mode_ = "ANY"; // # full_frame、color_frame、ANY or disable
};
} // namespace orbbec_camera
@@ -188,6 +188,8 @@ def generate_launch_description():
DeclareLaunchArgument('config_file_path', default_value=''),
DeclareLaunchArgument('enable_heartbeat', default_value='false'),
DeclareLaunchArgument('enable_hardware_reset', default_value='false'),
DeclareLaunchArgument('frame_aggregate_mode', default_value='ANY'), # full_frame、color_frame、ANY or disable
]
def get_params(context, args):
+12
View File
@@ -1167,6 +1167,8 @@ void OBCameraNode::getParameters() {
long software_trigger_period = 33;
setAndGetNodeParameter<long>(software_trigger_period, "software_trigger_period", 33);
software_trigger_period_ = std::chrono::milliseconds(software_trigger_period);
setAndGetNodeParameter<std::string>(frame_aggregate_mode_, "frame_aggregate_mode", "ANY");
}
void OBCameraNode::setupTopics() {
@@ -1257,6 +1259,16 @@ void OBCameraNode::setupPipelineConfig() {
pipeline_config_->enableStream(stream_profile_[stream_index]);
}
}
if (frame_aggregate_mode_ == "full_frame") {
pipeline_config_->setFrameAggregateOutputMode(OB_FRAME_AGGREGATE_OUTPUT_FULL_FRAME_REQUIRE);
} else if (frame_aggregate_mode_ == "color_frame") {
pipeline_config_->setFrameAggregateOutputMode(OB_FRAME_AGGREGATE_OUTPUT_COLOR_FRAME_REQUIRE);
} else if (frame_aggregate_mode_ == "disable") {
pipeline_config_->setFrameAggregateOutputMode(OB_FRAME_AGGREGATE_OUTPUT_DISABLE);
} else {
pipeline_config_->setFrameAggregateOutputMode(OB_FRAME_AGGREGATE_OUTPUT_ANY_SITUATION);
}
}
void OBCameraNode::setupCameraInfo() {