Closed christianrauch closed 7 months ago
openni2_camera
package. Why is there a dedicated package required just for the launch files?
- How is "lazy subscribers" related to the launch files? As far as I can tell, this is only related to the middle-ware (RMW) and has nothing to do with launch files.
openni2_launch/rgbd_launch setup a whole set of pipelines - you can't actually have all the pipelines running at once (since you can only stream 2 of 3 hardware channels at the same time - so you can't have IR + Depth + RGB). In order for that to work, the nodes that come from image_pipeline need to have lazy behavior (so that it trickles all the way back to the sensor, which then decides which streams to activate in hardware).
- The RGB-D processing (rectification, registration, projection, ...) could also be added to the launch files that already exist in the
openni2_camera
package. Why is there a dedicated package required just for the launch files?
While this is technically possible to do, the original goal was to make it so that you have a 1-1 correspondence between launch file names in ROS 1 vs ROS 2. At the time, we certainly didn't expect it would take ~3 years to get the upstream support implemented.
There is also probably a minor dependency management aspect here which was the original reason 10 years ago to have it be a separate package - openni2_launch does drag in extra dependencies that aren't needed for the camera itself.
These launch files are for ROS 1. The ROS 2 launch files are now in the
openni2_camera
package.