v3.6.4

v3.6.4 menambahkan pustaka server video RTSP, sepenuhnya memperbaiki mode pencitraan OV5640 (Grayscale / RGB565 / Bayer / JPEG di setiap resolusi), menggandakan FPS sensor dengan driver yang dioptimalkan, dan memperbaiki sekumpulan bug enkode Bayer / JPEG. image.get_pixel() pada citra Bayer dan rotasi otomatis sensor berubah — baca perubahan yang merusak di bawah ini.

Sorotan

  • RTSP — pustaka server video RTSP baru beserta contoh.

  • OV5640 — Grayscale / RGB565 / Bayer / JPEG kini berfungsi di semua resolusi, dengan transfer JPEG maksimum yang lebih besar dan readout resolusi tinggi yang digandakan.

  • FPS ganda — driver sensor dioptimalkan untuk frame rate ~2×.

  • Perbaikan — tepi/vflip Bayer, JPEG perangkat lunak (1-bpp dan YCbCr skala abu-abu), dan masalah buffer-overflow.

  • Perubahan merusak: image.get_pixel() kini melakukan debayer pada citra Bayer dan rotasi otomatis kini diterapkan ulang pada sensor.reset() — lihat perubahan yang merusak.

Fitur baru

  • RTSP — ditambahkan pustaka rtsp dan contoh rtsp_video_server.py untuk streaming video RTSP.

Perubahan dan peningkatan lainnya

  • Mengoptimalkan driver sensor untuk kira-kira menggandakan frame rate, menggandakan readout resolusi tinggi OV5640 untuk Bayer/Grayscale/JPEG, meningkatkan ukuran transfer citra JPEG maksimum, dan memperbarui cascade_convert.py agar kompatibel dengan Python 3.

Perbaikan bug

Kamera dan pencitraan:

  • Memperbaiki mode pencitraan OV5640 agar Grayscale / RGB565 / Bayer / JPEG berfungsi dengan benar di semua resolusi, vflip Bayer pada OV7725 / OV7690, error konversi Bayer di tepi kanan, enkode JPEG perangkat lunak untuk citra 1-bpp dan YCbCr skala abu-abu (pengurangan −128), data trailing pada citra JPEG, dan masalah buffer-overflow.

Perubahan API yang merusak

Perubahan API yang terlihat pengguna antara v3.6.3 dan v3.6.4. Cakupan: modul C Python di modules/ dan pustaka Python di scripts/libraries/.

Kedua perubahan yang merusak adalah perubahan behavior (API sama, hasil berbeda) — periksa ulang skrip yang terpengaruh. Setiap hash commit tertaut ke diff-nya di GitHub.

image.get_pixel() melakukan debayer pada citra Bayer (behavior)

image.get_pixel() pada citra format Bayer kini melakukan debayer dan mengembalikan tuple (r, g, b) alih-alih nilai Bayer saluran tunggal mentah. Skrip yang membaca nilai Bayer mentah melalui get_pixel() kini akan menerima tuple RGB terinterpolasi dan harus diperbarui.

Commits: bf16b6a4f

Rotasi otomatis diterapkan ulang pada sensor.reset() (behavior)

Rotasi otomatis sensor kini (diterapkan ulang) dipicu pada sensor.reset(). Skrip yang memanggil sensor.reset() setelah mengonfigurasi orientasi, dengan harapan status rotasi bertahan atau tidak diterapkan ulang, dapat mengalami orientasi berbeda dan harus diperiksa ulang.

Commits: 0d13a214b

Daftar periksa migrasi

Perbarui kode yang membaca nilai Bayer mentah melalui image.get_pixel() untuk mengharapkan tuple (r, g, b) (perubahan get_pixel), dan periksa ulang orientasi sensor di sekitar sensor.reset() (perubahan rotasi otomatis). Semua skrip lainnya berjalan tanpa perubahan.