gif
— 录制gif动图¶
gif
模块用于录制gif。
Gif类 – Gif录制器¶
您可以使用gif模块来记录短视频剪辑。注意:gif文件保存的是未压缩图像数据。因此,非常适合记录您想分享的短视频剪辑。使用 mjpeg
进行长视频剪辑。
用法示例:
import sensor, gif
# Setup camera. 设置摄像机。
sensor.reset()
sensor.set_pixformat(sensor.GRAYSCALE)
sensor.set_framesize(sensor.QQVGA)
sensor.skip_frames()
# Create the gif object. 创建一个gif对象。
g = gif.Gif("example.gif")
# Add frames. 添加帧。
for i in range(100):
g.add_frame(sensor.snapshot())
# Finalize. 完成。
g.close()
构造函数¶
- class gif.Gif(filename, width=Auto, height=Auto, color=Auto, loop=True)¶
创建一个可添加帧的Gif对象。
filename
是保存录制的gif的路径。width
自动设置为图像传感器水平分辨率(除非显式覆盖)。height
自动设置为图像传感器垂直分辨率(除非显式覆盖)。color
自动设置为图像传感器颜色模式(除非显式覆盖):颜色False将生成一个7位灰度/像素的gif。
颜色True将生成一个rgb232、7位/像素的gif。
loop
当True使gif自动循环播放时。默认值为True。
方法¶
- gif.width()¶
返回gif对象的宽度(水平分辨率)。
- gif.height()¶
返回gif对象的高度(垂直分辨率)。
- gif.format()¶
如果是彩图返回
sensor.RGB565
, 灰度图返回sensor.GRAYCSCALE
。
- gif.size()¶
返回gif目前的文件大小。该值在添加帧后更新。
- gif.loop()¶
若gif对象在其构造函数中设置了循环,则返回。
- gif.add_frame(image, delay=10)¶
将一张图像添加到gif记录中。图像的宽度、高度和颜色模式必须与gif构造函数中使用的宽度、高度和颜色模式相同。
delay
是前一帧结束后等待播放此帧的厘秒数(若非首帧)。备注
delay
是键值参数,必须在函数调用中通过写入delay=
来显式地调用。
- gif.close()¶
结束gif录制。须在记录完成后调用此方法,以使文件可查看。