Closed ofTheo closed 8 years ago
Thank you for your trial of my GPU decode fork! Actually I have noticed same issue you mentioned. Unfortunately I was not able to fix the issue or even find out the reason.
One work-around for this issue might be change GPU decoding to main thread. The way to do is passing raw depth packet buffer as ir_frame to ofProtonect and do the GPU decoding in the updateKinect() of ofProtonect. Actually I havent't tried yet, but I hope it will solve the issue, though it does not seems to be sophisticated.
I think I narrowed it down to the calls inside ofFbo::begin() If I change the begin/end calls for the two fbos to bind/unbind then I don't see the flickering.
Of course the fbos don't render properly then because they miss out on the viewport/matrix setup calls - but I think possibly doing the fbos manually could make it work.
I am going to explore it more - might try the single threaded approach too.
thanks for the awesome work on this!! it made it really easy to try out.
Any luck with the GPU decoding as of late? (Really wanna try out ofxKinectV2 with https://github.com/baugsjokket/ofxReprojection).
@tomana - I added in GPU decoding via latest libfreenect2 - it should be super robust with OF 0.9.0 can you check it out and reopen the issue if you are still having problems?
Hey @hanasaan I was playing with your fork which has the GPU decoding. Its really nice how you got it working!
I was able to get it working with both the ofxOpenGLContextScope approach you used and also GLFW's native context handling.
The issue I am seeing with both of these approaches though is flickering in the main example window where the window contents get inverted for a single frame.
I am guessing its to do with having two OpenGL contexts running in two different threads and occasionally they do something at the same time.
Have you noticed this on your system?
Thanks!! Theo