python使用ffmpeg合并多张图片成视频

python使用ffmpeg合并多张图片成视频

注意:需要在本地有ffmpeg,并且配置环境变量

下载链接如下:https://download.csdn.net/download/qq_30273575/87898080

FFmpeg 将多张图片合成视频

可以使用 FFmpeg 库来将多张图片合成视频,下面是一个简单的示例:

在代码中,需要提供存储图片的文件夹路径 images_path 和最终生成的视频文件名 video_name。

FFmpeg 命令中的参数 -framerate 指定了图片的帧率,

-i 指定了图片的文件名,

图片文件名按照顺序命名为 1.jpg、2.jpg 等,图片名称根据你本地电脑文件配置即可

# 参数 -c:v libx264 指定了视频的编码格式,-r 指定了视频的帧率,-pix_fmt yuv420p 指定了图像的格式。

上述示例中使用的是 MP4 视频格式,如果需要使用其他格式,可以在 video_name 中更改文件扩展名。

import os

images_path = r'D:/1/mm'

video_name = r'D:/1/mm/output.mp4'

fps = 2 # 2 表示每秒2帧
os.system(f'ffmpeg -y -framerate {fps} -i "{images_path}/%d.jpg" -c:v libx264 -r {fps} -pix_fmt yuv420p "{video_name}"')

给图片批量重命名

import os.path

def rename(img_folder, num):

img_list = os.listdir(img_folder)

img_list.sort()

for img_name in img_list: # os.listdir(): 列出路径下所有的文件

os.path.join() 拼接文件路径

src = os.path.join(img_folder, img_name) # src:要修改的目录名

dst = os.path.join(img_folder, str(num) + '.jpg') # dst: 修改后的目录名 注意此处str(num)将num转化为字符串,继而拼接

num = num + 1

os.rename(src, dst) # 用dst替代src

def main():

img_folder0 = r'D:/1/mm' # 图片的文件夹路径 直接放你的文件夹路径即可

num = 1

rename(img_folder0, num)

if name == "main":

main()

相关推荐
紫金修道17 小时前
【DeepAgent】概述
开发语言·数据库·python
书到用时方恨少!17 小时前
Python multiprocessing 使用指南:突破 GIL 束缚的并行计算利器
开发语言·python·并行·多进程
Warson_L18 小时前
Python 常用内置标准库
python
·云扬·18 小时前
【MySQL】实战:用pt-table-sync修复主从数据一致性问题
数据库·mysql·ffmpeg
Warson_L18 小时前
Python 函数的艺术 (Functions)
python
Warson_L18 小时前
Python 流程控制与逻辑
后端·python
long_songs18 小时前
手柄键盘映射器【github链接见文末 】
python·游戏·计算机外设·pygame·软件推荐·手柄映射键盘
必然秃头18 小时前
Python 环境安装及项目构建指南
python
Warson_L18 小时前
Python 四大组合数据类型 (Collection Types)
后端·python
廋到被风吹走18 小时前
【AI】Codex 多语言实测:Python/Java/JS/SQL 效果横评
java·人工智能·python