gif — nagrywanie gif

Moduł gif służy do nagrywania plików gif.

class Gif – Rejestrator Gif

Możesz użyć modułu gif do nagrywania krótkich klipów wideo. Należy pamiętać, że pliki gif zapisują nieskompresowane dane obrazu. Dlatego najlepiej nadają się do nagrywania krótkich klipów wideo, które chcesz udostępnić. Do długich klipów użyj mjpeg.

Przykład użycia:

import csi
import gif
import time

# Setup camera.
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.GRAYSCALE)
csi0.framesize(csi.QQVGA)
csi0.snapshot(time=2000)

# Create the gif object.
g = gif.Gif("example.gif")

# Record for 4 seconds.
start = time.ticks_ms()
while time.ticks_diff(time.ticks_ms(), start) < 4000:
    g.add_frame(csi0.snapshot())

# Finalize.
g.close()
class gif.Gif(filename: str, width: int | None = None, height: int | None = None, color: bool | None = None, loop: bool = True)

Tworzy obiekt Gif, do którego można dodawać ramki. filename to ścieżka, pod którą zostanie zapisane nagranie gif.

width domyślnie przyjmuje poziomą rozdzielczość głównego bufora ramki.

height domyślnie przyjmuje pionową rozdzielczość głównego bufora ramki.

color domyślnie przyjmuje tryb koloru głównego bufora ramki:

loop gdy True, powoduje automatyczne zapętlanie gif podczas odtwarzania.

width() int

Zwraca szerokość (poziomą rozdzielczość) gif.

height() int

Zwraca wysokość (pionową rozdzielczość) gif.

format() int

Zwraca sensor.RGB565, jeśli color jest True, w przeciwnym razie sensor.GRAYSCALE.

size() int

Zwraca dotychczasowy rozmiar pliku gif. Wartość ta jest aktualizowana po dodaniu ramek.

loop() bool

Zwraca informację, czy obiekt gif został utworzony z włączoną opcją loop.

add_frame(image: image.Image, delay: int = 10) None

Dodaje obraz do nagrania gif. Szerokość, wysokość i tryb koloru obrazu muszą odpowiadać wartościom użytym w konstruktorze.

delay to liczba setnych sekundy oczekiwania przed wyświetleniem tej ramki po poprzedniej ramce.

close() None

Finalizuje nagranie gif. Ta metoda musi zostać wywołana po zakończeniu nagrywania, aby plik nadawał się do wyświetlenia.