imagecapture – Support for “Parallel capture” interfaces

Available on these boards
  • ATMegaZero ESP32-S2
  • Adafruit Camera
  • Adafruit Feather ESP32-S2 TFT
  • Adafruit Feather ESP32S2
  • Adafruit Feather RP2040
  • Adafruit FunHouse
  • Adafruit Grand Central M4 Express
  • Adafruit ItsyBitsy RP2040
  • Adafruit KB2040
  • Adafruit Macropad RP2040
  • Adafruit MagTag
  • Adafruit Metro ESP32S2
  • Adafruit QT Py ESP32S2
  • Adafruit QT Py RP2040
  • Adafruit QT2040 Trinkey
  • Arduino Nano RP2040 Connect
  • Artisense Reference Design RD00
  • BastWiFi
  • Challenger NB RP2040 WiFi
  • Challenger RP2040 LTE
  • Challenger RP2040 WiFi
  • CrumpS2
  • Cytron Maker Nano RP2040
  • Cytron Maker Pi RP2040
  • ELECFREAKS PICO:ED
  • ESP 12k NodeMCU
  • ESP32-S2-DevKitC-1-N4
  • ESP32-S2-DevKitC-1-N4R2
  • EncoderPad RP2040
  • Feather ESP32S2 without PSRAM
  • FeatherS2
  • FeatherS2 Neo
  • FeatherS2 PreRelease
  • Franzininho WIFI w/Wroom
  • Franzininho WIFI w/Wrover
  • Gravitech Cucumber M
  • Gravitech Cucumber MS
  • Gravitech Cucumber R
  • Gravitech Cucumber RS
  • HMI-DevKit-1.1
  • HexKyS2
  • IoTs2
  • Kaluga 1
  • LILYGO TTGO T8 ESP32-S2
  • LILYGO TTGO T8 ESP32-S2 w/Display
  • MORPHEANS MorphESP-240
  • Melopero Shake RP2040
  • MicroDev microS2
  • Oak Dev Tech BREAD2040
  • Oak Dev Tech Cast-Away RP2040
  • Oak Dev Tech PixelWing ESP32S2
  • Pimoroni Badger 2040
  • Pimoroni Interstate 75
  • Pimoroni Keybow 2040
  • Pimoroni Motor 2040
  • Pimoroni PGA2040
  • Pimoroni Pico LiPo (16MB)
  • Pimoroni Pico LiPo (4MB)
  • Pimoroni PicoSystem
  • Pimoroni Plasma 2040
  • Pimoroni Servo 2040
  • Pimoroni Tiny 2040 (2MB)
  • Pimoroni Tiny 2040 (8MB)
  • PyKey 18 Numpad
  • PyKey 44 Ergo
  • PyKey 60
  • PyKey 87 TKL
  • RP2.65-F
  • RP2040 Stamp
  • Raspberry Pi Pico
  • S2Mini
  • S2Pico
  • Saola 1 w/Wroom
  • Saola 1 w/Wrover
  • Seeeduino XIAO RP2040
  • SparkFun MicroMod RP2040 Processor
  • SparkFun Pro Micro RP2040
  • SparkFun Thing Plus - RP2040
  • TTGO T8 ESP32-S2-WROOM
  • Targett Module Clip w/Wroom
  • Targett Module Clip w/Wrover
  • TinyS2
  • W5100S-EVB-Pico
  • Waveshare RP2040-Zero
  • nanoESP32-S2 w/Wrover
  • nanoESP32-S2 w/Wroom

class imagecapture.ParallelImageCapture(*, data_pins: List[microcontroller.Pin], clock: microcontroller.Pin, vsync: Optional[microcontroller.Pin], href: Optional[microcontroller.Pin])

Capture image frames from a camera with parallel data interface

Create a parallel image capture object

Parameters
capture(self, buffer: circuitpython_typing.WriteableBuffer) circuitpython_typing.WriteableBuffer

Capture a single frame into the given buffer.

This will stop a continuous-mode capture, if one is in progress.

continuous_capture_start(self, buffer1: circuitpython_typing.WriteableBuffer, buffer2: circuitpython_typing.WriteableBuffer, /) None

Begin capturing into the given buffers in the background.

Call continuous_capture_get_frame to get the next available frame, and continuous_capture_stop to stop capturing.

Until continuous_capture_stop (or deinit) is called, the ParallelImageCapture object keeps references to buffer1 and buffer2, so the objects will not be garbage collected.

continuous_capture_get_frame(self) circuitpython_typing.WriteableBuffer

Return the next available frame, one of the two buffers passed to continuous_capture_start

continuous_capture_stop(self) None

Stop continuous capture.

Calling this method also causes the object to release its references to the buffers passed to continuous_capture_start, potentially allowing the objects to be garbage collected.

deinit(self) None

Deinitialize this instance

__enter__(self) ParallelImageCapture

No-op used in Context Managers.

__exit__(self) None

Automatically deinitializes the hardware on context exit. See Lifetime and ContextManagers for more info.