Conversation
… capture (actual fps depends on pipeline, but won't be higher than requested maximum)
Member
|
Hmm, have you tried to debug the cause of the hang? I have used a monochrome Arducam set to 120FPS where the pipeline could only do about 50FPS and it didn't result in any hangs. |
Author
|
It's hard to debug because FtcRobotController.log is not showing any errors. I think you were not experiencing hangs because of the compressed MJPEG stream format over USB2. Arducam AR0234 can only output uncompressed YUY2 stream format at 10fps over USB2 or up to 80fps over USB3. |
Member
|
So you were using the USB3 port on your control hub? |
Author
|
Yes, we used USB3. If we use USB2, then the opmode does not hang, but we only get 10fps max. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem description: Arducam AR0234 outputs uncompressed YUY2 format at 960x600@80fps. This causes any vision opmode to freeze after a few seconds of working properly.
Solution: allow setting a maximum number of frames per second the webcam should capture (actual fps depends on the pipeline, but won't be higher than the requested maximum). Currently startStreaming uses maximum FPS from camera characteristics for given format and size. If we lock the camera hardware to send frames at the specific FPS, it will solve the bandwidth issue with Arducam AR0234.