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

news/2024/7/10 21:10:47 标签: 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()


 


http://www.niftyadmin.cn/n/4969858.html

相关文章

win10+wsl2+Ubuntu20.2+Pycharm+WSL解释器

目的:创建一个ubuntu系统下的python解释器,作为win平台下的pycharm的解释器。 这样做的好处是可以直接在win系统里操作文件,相比于linux方便一点,而且也不用对wsl的子系统进行迁移。 一、安装前准备 1. 设置-Windows更新-window…

设计模式二十四:访问者模式(Visitor Pattern)

用于将数据结构与数据操作分离,使得可以在不修改数据结构的情况下,定义新的操作。访问者模式的核心思想是,将数据结构和操作进行解耦,从而使得新增操作时不必修改数据结构,只需添加新的访问者。主要目的是在不改变数据…

Java代码优化案例2:使用HashMap代替List进行数据查找

在开发过程中,我们经常需要在一个集合中查找某个元素。一种常见的做法是使用List来存储数据,然后通过循环遍历List来查找目标元素。然而,当数据量较大时,这种做法效率较低。我们可以通过使用HashMap来优这个过程。 1. 原始代码实…

视频分割合并工具说明

使用说明书:视频分割合并工具 欢迎使用视频生成工具!本工具旨在帮助您将视频文件按照指定的规则分割并合并,以生成您所需的视频。 本程序还自带提高分辨率1920:1080,以及增加10db声音的功能 软件下载地址 https://github.com/c…

Linux学习(三)----文件打开及创建

1 demo1.c的建立 首先打开终端输入 touch file1 接着输入&#xff1a; vi demo1.c 接着重新打开一个终端&#xff0c;输入&#xff1a; man 2 open 2 demo1.c内容编辑 2.1 复制头文件 2.2 程序基础框架 #include <sys/types.h> #include <sys/stat.h>#include &l…

HTML的label标签有什么用?

当你想要将表单元素&#xff08;如输入框、复选框、单选按钮等&#xff09;与其描述文本关联起来&#xff0c;以便提供更好的用户界面和可访问性时&#xff0c;就可以使用HTML中的<label>标签。<label>标签用于为表单元素提供标签或标识&#xff0c;使用户能够更清…

Android学习之路(9) Bundle

Bundle的概念理解 Bundle经常出现在以下场合&#xff1a; Activity状态数据的保存与恢复涉及到的两个回调&#xff1a;void onSaveInstanceState (Bundle outState)、void onCreate (Bundle savedInstanceState)Fragment的setArguments方法&#xff1a;void setArguments (Bu…

23款奔驰GLS400升级柏林之声音响系统,体验不一样的感觉

Burmester 环绕立体声音响系统–为每位乘员打造令人印象深刻的音质13个高性能扬声器、总功率为590瓦的9声道数字信号处理器(DSP)放大器以及放大器/扬声器系统专为车辆配置&#xff0c;打造出一流的Burmester之音。必要时还可进一步提升令人印象深刻的听觉体验。声音环绕功能能够…