gif — gravação de gif

O módulo gif é usado para gravação de gif.

class Gif – Gravador de Gif

Você pode usar o módulo gif para gravar pequenos clipes de vídeo. Observe que os arquivos gif salvam dados de imagem não comprimidos. Portanto, eles são melhores para gravar clipes de vídeo curtos que você queira compartilhar. Use mjpeg para clipes longos.

Exemplo de uso:

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)

Cria um objeto Gif ao qual quadros podem ser adicionados. filename é o caminho onde a gravação do gif será salva.

width tem como padrão a resolução horizontal do framebuffer principal.

height tem como padrão a resolução vertical do framebuffer principal.

color tem como padrão o modo de cor do framebuffer principal:

loop quando True faz com que o gif entre em loop automaticamente na reprodução.

width() int

Retorna a largura (resolução horizontal) do gif.

height() int

Retorna a altura (resolução vertical) do gif.

format() int

Retorna sensor.RGB565 se color for True ou sensor.GRAYSCALE caso contrário.

size() int

Retorna o tamanho do arquivo do gif até o momento. Este valor é atualizado após a adição de quadros.

loop() bool

Retorna se o objeto gif foi construído com loop habilitado.

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

Adiciona uma imagem à gravação do gif. A largura, a altura e o modo de cor da imagem devem corresponder aos valores usados no construtor.

delay é o número de centissegundos a aguardar antes de exibir este quadro após o quadro anterior.

close() None

Finaliza a gravação do gif. Este método deve ser chamado assim que a gravação estiver completa para tornar o arquivo visualizável.