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是在前一影格之後、顯示此影格之前要等待的百分之一秒數。