v4.5.4#
v4.5.4 adds PAG7920 sensor support and STM32 YUV422 hardware-JPEG with controllable subsampling, speeds up JPEG encoding and morphology, and fixes the MQTT, RTSP, and BLE libraries.
Highlights#
PAG7920 PixArt image sensor support.
YUV422 hardware JPEG on STM32, with controllable JPEG subsampling.
Faster JPEG YUV sub-sampling and SIMD-accelerated erode/dilate.
Breaking:
erode()/dilate()/binary()argument parsing was standardized (see the breaking change).
New features#
STM32 YUV422 hardware JPEG — the hardware JPEG encoder now accepts YUV422 input.
JPEG subsampling control — a new option to control JPEG chroma subsampling.
PAG7920 — added support for the PixArt PAG7920 image sensor.
Other changes and improvements#
Faster JPEG YUV422/420 UV sub-sampling and SIMD-accelerated
erode()/dilate().ucryptolib(crypto/TLS) re-enabled on the i.MX RT (mimxrt) port.The
pid.pylibrary now usesticks_ms()instead of the deprecatedmillis().
Bug fixes#
Libraries:
Fixed MQTT SSL parameters; fixed the RTSP library to work with VLC.
System and sensors:
Fixed the OpenMV RT1060 BLE baud rate and STM32 SPI slave-mode CS handling (the CS pin is no longer driven in slave mode).
Fixed an out-of-bounds crash in
set_pixel()anti-aliased drawing.
Hardware and board support#
PAG7920 PixArt image sensor.
Arduino GIGA — enabled the camera RESET/PEN pin and GC2145 rotation.
Breaking API changes#
User-visible API breaks between v4.5.3 and v4.5.4.
The only breaking change is the standardized argument parsing for the binary morphology methods.
erode / dilate / binary argument parsing (behavior)#
Image.erode(), Image.dilate() and Image.binary() were moved onto the standardized mp_arg_parse_all argument parser. Calls that relied on the previous positional/keyword ordering may need adjusting.
Migration checklist#
Re-check the argument order in any erode() / dilate() / binary() calls (the morphology parsing change). All other scripts run unchanged.