gif — gif 녹화¶
gif 모듈은 gif 녹화에 사용됩니다.
class Gif – Gif 레코더¶
gif 모듈을 사용하여 짧은 비디오 클립을 녹화할 수 있습니다. gif 파일은 압축되지 않은 이미지 데이터를 저장합니다. 따라서 공유하려는 짧은 비디오 클립을 녹화하는 데 가장 적합합니다. 긴 클립에는 mjpeg를 사용하세요.
사용 예시:
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)¶
프레임을 추가할 수 있는 Gif 객체를 생성합니다.
filename은 gif 녹화를 저장할 경로입니다.width의 기본값은 메인 프레임버퍼의 가로 해상도입니다.height의 기본값은 메인 프레임버퍼의 세로 해상도입니다.color의 기본값은 메인 프레임버퍼의 색상 모드입니다:False이면 픽셀당 7비트의
sensor.GRAYSCALEgif가 됩니다.True이면 픽셀당 7비트의
sensor.RGB565gif가 됩니다.
loop이 True이면 재생 시 gif가 자동으로 반복됩니다.- format() int¶
color가 True이면
sensor.RGB565를, 그렇지 않으면sensor.GRAYSCALE를 반환합니다.
- add_frame(image: image.Image, delay: int = 10) None¶
gif 녹화에 이미지를 추가합니다. 이미지의 너비, 높이, 색상 모드는 생성자에서 사용한 값과 일치해야 합니다.
delay는 이전 프레임 이후 이 프레임을 표시하기 전에 대기할 시간(센티초)입니다.