diff --git a/orbbec_camera/src/ros_service.cpp b/orbbec_camera/src/ros_service.cpp index 8c4be54b..bbf8f012 100644 --- a/orbbec_camera/src/ros_service.cpp +++ b/orbbec_camera/src/ros_service.cpp @@ -1940,7 +1940,11 @@ bool OBCameraNode::toggleSensor(const stream_index_pair& stream_index, bool enab std::string& msg) { std::lock_guard lock(device_lock_); try { - pipeline_->stop(); + const bool interleave_frame_enable = interleave_frame_enable_; + stopStreams(); + interleave_frame_enable_ = interleave_frame_enable; + stopColorFrameThreads(); + clearColorFrameQueues(); enable_stream_[stream_index] = enabled; setupProfiles(); startStreams();