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
Recording and using advanced mode at the same time #12855
Comments
Hi @oscarthorn If one of the existing Visual Presets (jsons) provided by the RealSense SDK is close to your custom json then you could try applying that preset instead of loading your custom json as a string by using the C++ code at the link below. Here is a list of the parameter names of the presets so that you can amend the code in the above link to use the appropriate preset. RS2_RS400_VISUAL_PRESET_CUSTOM |
Hi @MartyG-RealSense, no none of the presets are suitable |
In addition to the C++ json cases that you linked to at the beginning, there is also another example of using dev.asrs400::advanced_mode(); at #3277 (comment) A less efficient alternative to json may be to investigate whether the settings that you are using in the json can be applied with C++ script code instead. If your preference is to use the custom json file then you could investigate whether using threads and putting the record function on a separate thread from the json loading code might make a difference. There is a C++ threads example at #6865 though I would personally recommend against using threading unless there is no other option as it makes programs more complex. |
The problem is not with the json loading the problem is that I have no problem setting them manually, are the settings available without accessing advanced mode with There is no recording function to put on a separate thread, please clarify if there is something I could change. This problem occurs regardless of if |
It would depend on which settings you want to change. If they are Advanced Mode settings then there is little available documentation for controlling those options, unfortunately. If it is non-Advanced Mode options such as exposure then it is straightforward to change those with C++ code. There is not enough information available about this particular nullptr issue (using json + record in the same script) for me to offer advice about the relevancy of #3277 unfortunately. I do apologize. #3802 is a C++ discussion about implementing threading for recording a bag with |
Is there a way to get a hold of the developer team for librealsense to get the bug resolved? So far I have traced it to the serializable_device constructor setting the device to null. |
I will discuss your issue with my Intel RealSense colleagues. Thanks very much for your patience. |
My findings so far I will try to determine why that is, my assumption is that there is some interface/inheritance missing somewhere which causes the |
Okey, so the main issue seems to be that in |
Just adding the serializable extension and making it extend to advanced seems to resolve the issue. Though I'm not sure if this is a valid solution. I tried extending it to serializable but that interface does not have create_snapshot which is expected by
|
Don't have time to investigate that also but Used to set region of interest for exposure with |
Hi @oscarthorn My colleagues were able to replicate the issue and created an internal Intel report so that it can be investigated as a possible bug. They also said that you are more than welcome to submit a PR. I have added an Enhancement label to this case to signify that it should be kept open. |
Hi @MartyG-RealSense Thanks, sounds good! For now I found a workaround after realizing that realsense-viewer does not seem to have the same problem. After looking at the code the it seems to use the Thanks for the help! |
You are very welcome. Thanks so much for sharing the details of your workaround! |
Issue Description
I have the same issue as #10184 and #6739.
Running:
dev.as<rs400::advanced_mode>();
returns a null pointer if you have enabled recording with
cfg_.enable_record_to_file(record_bag_path.string());
Is there a fix for this? We have a lot of d455's and need to be able to record bag files and we need to be able to be able to use our custom settings.
The text was updated successfully, but these errors were encountered: