Python -将MP4文件转为GIF图片

给大家提供一个工具代码,使用Python,将MP4格式的视频文件,转换为GIF图片

首先先安装必要的包:

pip install imageio

pip install imageio[ffmpeg]

工具代码:

python 复制代码
import imageio

# 视频文件路径
video_path = r""
# 输出的 GIF 文件路径
gif_path = "output.gif"

# 创建一个视频读取对象
reader = imageio.get_reader(video_path)

# 获取视频的帧率和帧数
fps = reader.get_meta_data()['fps']
num_frames = reader.count_frames()

# 设置要保存的 GIF 的帧率(可以根据需要调整)
gif_fps = 5

# 计算要选取的帧的索引间隔
interval = int(fps / gif_fps)

# 创建一个列表来存储要保存的帧
gif_frames = []

# 遍历视频的帧并选取部分帧保存到列表中
for i, frame in enumerate(reader):
    if i % interval == 0:
        # 将帧添加到列表中
        gif_frames.append(frame)

# 将帧列表保存为 GIF
imageio.mimsave(gif_path, gif_frames, fps=gif_fps, duration=0.1, loop=0)

print(f"GIF 已保存到 {gif_path}")

变量video_path,为MP4视频文件所在的路径。只需要修改这里为你的MP4视频文件地址即可。

最终输出文件为 output.gif

如果希望保存的GIF图片不要循环播放 ,只需要把最后一行代码中的loop=0去掉即可。

相关推荐
yzx99101311 分钟前
Python开发系统项目
人工智能·python·深度学习·django
行云流水剑40 分钟前
【学习记录】Element UI导入报错 * element-ui/lib/theme-chalk/index.css in ./src/main.js
css·学习·ui
FreakStudio1 小时前
一文速通 Python 并行计算:12 Python 多进程编程-进程池 Pool
python·嵌入式·面向对象·多进程·并行计算·电子diy
明月看潮生2 小时前
青少年编程与数学 02-020 C#程序设计基础 15课题、异常处理
开发语言·青少年编程·c#·编程与数学
天才测试猿2 小时前
接口自动化测试之pytest接口关联框架封装
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·pytest
你这个代码我看不懂2 小时前
Java项目OOM排查
java·开发语言
暴力求解2 小时前
C语言---动态内存管理、柔性数组
c语言·开发语言·算法
先做个垃圾出来………2 小时前
Python中使用pandas
开发语言·python·pandas
DanmF--3 小时前
C#面向对象实践项目--贪吃蛇
开发语言·游戏·c#·游戏程序
爱意随风起风止意难平3 小时前
003 flutter初始文件讲解(2)
学习·flutter