-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
control_transfer returned error, index: 768, error: Broken pipe, number: 32 and then repetitive Out of frame resources! Exception #10242
Comments
Hi @juamar This issue with a 15 frame limit before an error occurs is typically found on Python applications, though I can envisage how it could occur in C# too. Information about it can be found at #946 Usually, the solution is to use the SDK's Keep() instruction to store the frames in memory. A RealSense team member discusses in #7201 about using Keep() in C#. A C# discussion about object pooling at #8334 is also an interesting read. |
Hi @juamar Do you require further assistance with this case, please? Thanks! |
Case closed due to no further comments received. |
Hi after almost a month i returned to this. Sorry i did not replied before. I just wanted to update this because i resolved this in a different way. As we are working with MAUI and we cannot work wirh .NET's Intel Realsense Wrapper, we are working with a Xamarin Java Binding to make the Intel Realsense SDK work. The thing is, even thought the library is we are using is the java one, we were facing the same problem metioned on issue #7201 but java library does not have Keep() method. So we are managing dispose and close manually (instead of using
Thank you very much @MartyG-RealSense! |
It's great news that you achieved a solution, @juamar - thanks so much for sharing it with the RealSense community :) |
Also, when trying to align Depth and Color frames, we can do this:
You must close and dispose both FrameSets, the original ( Note: No need for Align object to be instanciated on every FrameSet capture. |
Issue Description
I keep on making Librealsense work on a Xamarin Android application. This time i want to report some issue i'm having, in order to check with community if there is a way to improve my situation.
I'm trying to develop a nice and simple HelloWorld application as coded in the examples from the Android Wrapper but in Xamarin which calculates distance information from an object in front of the camera. I'm using the Android AAR library by using Xamarin Android Library Binder. I was facing an issue the previous days, I was just being able to retrieve the first 15 frames from the camera (StreamType.Depth). After that, i was catching the following exception:
Frame didn't arrive within 5000
Seems to be that the Pipeline object is not able to receive more Frames. Executing the test with the Plain Simple Android Example App was working perfectly, so it may be some software problem, rather than a Hardware problem, as i have seen in previous Issues. Also, i'm not doing anything weird in my code, the logic it's almost copy paste from the example, so i don't know what can be wrong.
Nowadays, as a workarround, i've made some PipeManager, so when we reach 15 frames, I replace the current Pipeline with a new one, and i keep switching them using Threads in a way that no Pipeline's management is perceibed for the user.
So before i was having this:
And now i have this, with my Custom pipe's manager:
This is the Logcat generated from an execution from my app using stream0 method:
I know what i'm doing it's not supposed to be supported by intel, but i was expecting this to work.
BR
The text was updated successfully, but these errors were encountered: