PointCloudLibrary/pcl

[io] Check for IR stream capability before creating it in `real_sense_2_grabber` for D415

Open

#3809 aperta il 26 mar 2020

Vedi su GitHub
 (1 commento) (0 reazioni) (0 assegnatari)C++ (4506 fork)batch import
good first issuekind: bugkind: todomodule: iostatus: triage

Metriche repository

Star
 (9023 star)
Metriche merge PR
 (Merge medio 8g 7h) (3 PR mergiate in 30 g)

Descrizione

Describe the bug

When trying to obtain point clouds from the Intel RealSense D415, in RealSense2Grabber::start(), I get an exception that "Stream is not supported." This comes from the check here. Specifically, when checking the RS2_STREAM_INFRARED stream, realsense throws a runtime error (rs_pipeline.hpp L69), since the D415 has no infrared stream.

Environment

  • OS: Windows 10
  • Compiler: cl 19.24.28314
  • PCL Version: 1.10.0

I am able to circumvent the issue by simply taking out the RS2_STREAM_INFRARED line, and everything works successfully (this is obviously not a general enough solution:

if ( prof.get_stream ( RS2_STREAM_COLOR ).format ( ) != RS2_FORMAT_RGB8 ||
      prof.get_stream ( RS2_STREAM_DEPTH ).format ( ) != RS2_FORMAT_Z16)
      THROW_IO_EXCEPTION ( "This stream type or format not supported." );

Guida contributor