-
Notifications
You must be signed in to change notification settings - Fork 1.3k
WIP: Implement 'ParallelImageCapture' for samd51 #4635
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
Conversation
This is helpful when displaying frames from an OV7670 camera, which uses the RGB565_SWAPPED format internally.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the module rename. I like imagecapture
. Just a couple other minor things.
I think you need per-param comments for the constructor too.
24MHz is the nominal external clock to use with OV7670. (My testing was actually at 16MHz)
This allows ctrl-c to interrupt the capture, and ensures we handle interrupts & background tasks.
@tannewt this is ready for a fresh review. Main question I have right now is, I used "audio_dma" channels. As far as I can see this will work just fine (but didn't test): with 3 channels you can play stereo audio in the background and capture a framebuffer image in the foreground; we'd have to increase the channel count in the future when we enable this or audio capture to also happen in the background. That said, should the APIs |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it would be good to rename the audio_dma stuff. I'm trying to remember what makes those special so we could rename them that way. Is it that they can be triggered by events?
.. based on code from Phil B.
.. these do come in the right
.. this allows DIV_4 and DIV_2 resolutions to work without being jumbled.
These are now used in the (video) parallel capture device as well.
@tannewt this is ready for a fresh review assuming the CI passes. Let me know if I need to merge main or rebase onto it. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code looks good. Thank you! You'll need to fix the CI though.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you!
@ladyada I think the 2nd one needs the fix for the DIV2 resolution mode, adafruit/Adafruit_CircuitPython_OV7670#4 |
This work-in-progress code, together with a WIP CircuitPython library, can successfully capture small (80x60) frames from an OV7670 camera on a Metro M4 GrandCentral.
TODO: