I have never heard of the SR300 being used at speeds other than 30 or 60 FPS, even though the SR300 data sheet (where the resolution chart comes from) says that 10 FPS is supported. Although a feature may be listed in the data sheet for a camera, there may be rare occasions where it is not necessarily actually implemented in the SDK software so that the feature can be accessed.
In the open-source Librealsense SDK, they created a patch file for 10 FPS with the SR300 late last year.
Thank you for a quick replay regarding this. I expected as much, just wanted to confirm it.
I spent a lot of time trying different things to improve the quality of the frames and I couldn't manage to bring the FPS bellow 30.
You're very welcome. I wish you the best of luck with getting 10 fps up and running, if you choose to use Librealsense.
I have the same trouble but with windows 10, the rs300 works fine with framerate 60 and 30, put I cant set 10,
somebody know how can I Change this?
I believe your best chance of setting 10 FPS may be to use Librealsense, given the 10 FPS patch that was developed for Librealsense.
Whilst using Librealsense with Windows was an awkward option once, you may find that the new RealSense SDK 2.0- - which is a new and improved Librealsense that works on Windows 10 as well as Linux and is SR300 compatible - may make life easier for you in regard to writing a 10 FPS application. This is dependent on whether the 10 FPS patch would function with SDK 2.0, of course.
Thank you somuch, Now I have other quations, I tried to use , realsense on linux, but all examples are for windows, so I always see the PXCSensemanager for make a new conections, but on linux this class not exist, so I tried to used java and is ridiculus that only works again for windows (so does not have sense), I instaled libgdx for java on linux and again, only works for windows, I can not understand whay this apis says "cross" when not working in linux. There are some posibilite to compile de realsense class "PXC(classes)" for linux???, for not use the realsense/rs.h.
If you are using Linux then I would recommend using the new RealSense SDK 2.0, which is an advanced form of Librealsense and is compatible with the SR300. It is a cross-platform, open source SDK that works on Windows and Linux, with Mac OSX support coming. I believe that SDK 2.0 will be the single standard SDK for RealSense from this point onward.
I understand that this is awkward from the perspective of having to find examples in the Librealsense language instead of the Windows PCX samples. By adopting SDK 2.0 though, you will be future-proofing your work, since the old Windows SDKs will not be receiving further updates. SDK 2.0 comes with some sample scripts that you can use as a reference
Thank you, I see that the project for windows include cpp2c with the c++ implementation code, Can I take this project and Compiler on linux??? and reproduce .so bin??
SDK 2.0 is cross-platform, so an SDK 2.0 script should work in a Linux compiler so long as you use an include in your C++ script to call the SDK's API, as described in the tutorial examples.
#include <librealsense2/rs.hpp> // Include RealSense Cross Platform API
I meand that the windows project rssdk has the cpp for PXCSENSEMANAGER.cpp and I see that has other resource. I just install the librealsense 2 but not works, I get error
There is no compatibility between the previous Windows RealSense SDK (RSSDK) that has the PXCSensemanager file and the Librealsense-based SDK 2.0. They have completely different DLL library files.
ok, I made this sample:
// Create a Pipeline - this serves as a top-level API for streaming and processing frames
// Configure and start the pipeline
// Block program until frames arrive
rs2::frameset frames = p.wait_for_frames();
// Try to get a frame of a depth image
rs2::depth_frame depth = frames.get_depth_frame();
// The frameset might not contain a depth frame, if so continue until it does
if (!depth) continue;
// Get the depth frame's dimensions
float width = depth.get_width();
float height = depth.get_height();
// Query the distance from the camera to the object in the center of the image
float dist_to_center = depth.get_distance(width / 2, height / 2);
// Print the distance
std::cout << "The camera is facing an object " << dist_to_center << " meters away \r";
Ok. I just compile sample on linux for realsense2 and a get this error:
En la fución 'rs2::pipeline::start()',
/usr/include/librealsense2/hpp/rs_pipeline.hpp: 371 referencia a 'rs2_pipeline_start' sin definir.
Why happend this??