v3.6.4

v3.6.4 lägger till ett RTSP-videoserverbibliotek, fixar fullständigt bildlägena för OV5640 (Grayscale / RGB565 / Bayer / JPEG i varje upplösning), fördubblar sensorns FPS med en optimerad drivrutin och fixar en batch Bayer-/JPEG-kodningsbuggar. image.get_pixel() på Bayer-bilder och sensorns autorotation ändrades — läs de brytande ändringarna nedan.

Höjdpunkter

  • RTSP — ett nytt RTSP-videoserverbibliotek med ett exempel.

  • OV5640 — Grayscale / RGB565 / Bayer / JPEG fungerar nu i alla upplösningar, med en större maximal JPEG-överföring och fördubblad högupplöst readout.

  • Dubbel FPS — sensordrivrutinen optimerades för ~2× bildhastighet.

  • Fixar — Bayer-kant/vflip, mjukvaru-JPEG (1-bpp och YCbCr-gråskala) samt buffertöverflödesproblem.

  • Brytande: image.get_pixel() debayrar nu Bayer-bilder och autorotation tillämpas nu på nytt vid sensor.reset() — se de brytande ändringarna.

Nya funktioner

  • RTSP — lade till ett rtsp-bibliotek och ett exempel rtsp_video_server.py för RTSP-videoströmning.

Övriga ändringar och förbättringar

  • Optimerade sensordrivrutinen för ungefär dubbel bildhastighet, fördubblade OV5640:s högupplösta readout för Bayer/Grayscale/JPEG, ökade den maximala storleken för JPEG-bildöverföring och uppdaterade cascade_convert.py för att fungera med Python 3.

Buggfixar

Kamera och bildbehandling:

  • Fixade OV5640:s bildlägen så att Grayscale / RGB565 / Bayer / JPEG fungerar korrekt i alla upplösningar, Bayer-vflip på OV7725 / OV7690, högerkants-Bayer-konverteringsfelet, mjukvaru-JPEG-kodning av 1-bpp-bilder och YCbCr-gråskala (−128-subtraktionen), efterföljande data på JPEG-bilder samt buffertöverflödesproblem.

Brytande API-ändringar

Användarsynliga API-brott mellan v3.6.3 och v3.6.4. Omfattning: Python-C-moduler i modules/ och Python-bibliotek i scripts/libraries/.

Båda de brytande ändringarna är behavior-ändringar (samma API, andra resultat) — kontrollera berörda skript på nytt. Varje commit-hash länkar till sin diff på GitHub.

image.get_pixel() debayrar Bayer-bilder (behavior)

image.get_pixel() på en bild i Bayer-format debayrar nu och returnerar en (r, g, b)-tupel i stället för det råa enkanaliga Bayer-värdet. Skript som läste råa Bayer-värden via get_pixel() får nu interpolerade RGB-tupler och måste uppdateras.

Commits: bf16b6a4f

Autorotation tillämpas på nytt vid sensor.reset() (behavior)

Sensorns autorotation (åter)utlöses nu vid sensor.reset(). Skript som anropade sensor.reset() efter att ha konfigurerat orienteringen, i förväntan om att rotationstillståndet skulle bestå eller inte tillämpas på nytt, kan se en annan orientering och bör kontrolleras på nytt.

Commits: 0d13a214b

Migrationschecklista

Uppdatera kod som läste råa Bayer-värden via image.get_pixel() till att förvänta sig en (r, g, b)-tupel (get_pixel-ändringen), och kontrollera sensororienteringen kring sensor.reset() på nytt (autorotationsändringen). Alla andra skript körs oförändrade.