v3.6.4

v3.6.4는 RTSP 비디오 서버 라이브러리를 추가하고, OV5640 이미징 모드(모든 해상도에서 Grayscale / RGB565 / Bayer / JPEG)를 완전히 수정하며, 최적화된 드라이버로 센서 FPS를 두 배로 높이고, 일련의 Bayer / JPEG 인코딩 버그를 수정합니다. Bayer 이미지에서의 image.get_pixel() 과 센서 자동 회전이 변경되었습니다 — 아래의 호환성 깨짐 변경 사항을 확인하세요.

주요 사항

  • RTSP — 예제와 함께 새로운 RTSP 비디오 서버 라이브러리.

  • OV5640 — Grayscale / RGB565 / Bayer / JPEG가 이제 모든 해상도에서 작동하며, 더 큰 최대 JPEG 전송과 두 배가 된 고해상도 리드아웃을 지원합니다.

  • FPS 두 배 — 센서 드라이버가 약 2배의 프레임 속도로 최적화되었습니다.

  • 수정 — Bayer 에지/vflip, 소프트웨어 JPEG(1-bpp 및 YCbCr 그레이스케일), 버퍼 오버플로 문제.

  • 호환성 깨짐: image.get_pixel() 이 이제 Bayer 이미지를 디베이어하고, 자동 회전이 이제 sensor.reset() 시 다시 적용됩니다 — 호환성 깨짐 변경 사항을 확인하세요.

새로운 기능

  • RTSP — RTSP 비디오 스트리밍을 위한 rtsp 라이브러리와 rtsp_video_server.py 예제가 추가되었습니다.

기타 변경 사항 및 개선 사항

  • 센서 드라이버를 약 두 배의 프레임 속도로 최적화하고, Bayer/Grayscale/JPEG에 대한 OV5640 고해상도 리드아웃을 두 배로 높이며, 최대 JPEG 이미지 전송 크기를 늘리고, cascade_convert.py 를 Python 3에서 작동하도록 업데이트했습니다.

버그 수정

카메라 및 이미징:

  • Grayscale / RGB565 / Bayer / JPEG가 모든 해상도에서 올바르게 작동하도록 OV5640 이미징 모드를 수정하고, OV7725 / OV7690의 Bayer vflip, 우측 에지 Bayer 변환 오류, 1-bpp 이미지 및 YCbCr 그레이스케일(−128 빼기)의 소프트웨어 JPEG 인코딩, JPEG 이미지의 후행 데이터, 버퍼 오버플로 문제를 수정했습니다.

호환성 깨짐 API 변경 사항

v3.6.3과 v3.6.4 사이의 사용자 가시적 API 변경 사항입니다. 범위: modules/ 의 Python C 모듈과 scripts/libraries/ 의 Python 라이브러리.

두 가지 호환성 깨짐 변경 사항 모두 behavior 변경(동일한 API, 다른 결과)입니다 — 영향받는 스크립트를 다시 확인하세요. 각 커밋 해시는 GitHub의 해당 diff로 연결됩니다.

image.get_pixel() 이 Bayer 이미지를 디베이어함 (behavior)

Bayer 형식 이미지에서의 image.get_pixel() 은 이제 디베이어를 수행하여 원시 단일 채널 Bayer 값 대신 (r, g, b) 튜플을 반환합니다. get_pixel() 을 통해 원시 Bayer 값을 읽던 스크립트는 이제 보간된 RGB 튜플을 받게 되므로 업데이트해야 합니다.

커밋: bf16b6a4f

sensor.reset() 시 자동 회전이 다시 적용됨 (behavior)

센서 자동 회전이 이제 sensor.reset() 시 (다시) 트리거됩니다. 방향을 구성한 후 sensor.reset() 를 호출하면서 회전 상태가 유지되거나 다시 적용되지 않을 것으로 예상하던 스크립트는 다른 방향을 볼 수 있으므로 다시 확인해야 합니다.

커밋: 0d13a214b

마이그레이션 체크리스트

image.get_pixel() 을 통해 원시 Bayer 값을 읽던 코드가 (r, g, b) 튜플을 예상하도록 업데이트하고 (get_pixel 변경), sensor.reset() 주변의 센서 방향을 다시 확인하세요 (자동 회전 변경). 다른 모든 스크립트는 변경 없이 실행됩니다.