Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

D400 set_depth_table while pipeline started #9449

Closed
lmuffang opened this issue Jul 20, 2021 · 3 comments
Closed

D400 set_depth_table while pipeline started #9449

lmuffang opened this issue Jul 20, 2021 · 3 comments

Comments

@lmuffang
Copy link

Required Info
Camera Model D430
Firmware Version 05.12.14.50
Operating System & Version Linux (Ubuntu 20)
Kernel Version (Linux Only) 5.8.0-59
Platform PC
SDK Version { legacy / 2.<47>.<0> }
Language {C++ }
Segment {Robot/Smartphone/VR/AR/others }

Issue Description

Hello,
I have been trying to set the disparity shift by setting the depth_table using the advanced mode and set_depth_table while the camera is running. It seems that I must restart the pipeline for the changes to be applied. Is there a way to change the disparity shift on the fly without restarting the pipeline and thus introducing latency?

In the realsense viewer, changing the disparity shift does not entails a latency as big as in my code. Is the camera restarted in the viewer?

Also, are they some parameters in the depth table that does not require a restart of the pipeline? I'm thinking about the depth units for example as it can also be set under the panel 'Controls'.

Thanks for your help

@MartyG-RealSense
Copy link
Collaborator

MartyG-RealSense commented Jul 20, 2021

Hi @lmuffang I do not have information about how the real-time configuration of the depth table in the RealSense Viewer operates. However, the link below describes C++ code for configuring the depth table after the pipeline has been started.

#2229 (comment)

Based on the scripting information provided in that link, I believe that a C++ script that uses the pipeline would look like this:

pipeline p;
auto profile = p.start();  // start the pipeline

auto dev = profile.get_device().as<advanced_mode>();
STDepthTableControl table = dev.get_depth_table();  // modify table
dev.set_depth_table(table);  // write changes

An alternative C++ script created by a RealSense user that includes depth table configuration through Advanced Mode is available at the link below.

https://support.intelrealsense.com/hc/en-us/community/posts/360051896473/comments/360014626993

In regard to configuring the depth unit scale, C++ code provided in the link below suggests setting the depth scale before the pipeline is started (implying that changing it would require a pipeline stop and then start after the change has been made).

#2385 (comment)

If you prefer an application that works like the Viewer does then you are able to modify the Viewer into a custom application as the RealSense SDK 2.0 is open-source.

https://github.com/IntelRealSense/librealsense/tree/master/tools/realsense-viewer

@MartyG-RealSense
Copy link
Collaborator

Hi @lmuffang Do you require further assistance with this case, please? Thanks!

@MartyG-RealSense
Copy link
Collaborator

Case closed due to no further comments received.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants