moviepy将图片序列制作成视频并加载字幕 - python 实现

DataBall 助力快速掌握数据集的信息和使用方式,会员享有 百种数据集,持续增加中。

需要更多数据资源和技术解决方案,知识星球: "DataBall - X 数据球(free)"

-----------------------------------------------------------------------------------------

具体代码实现如下:

python 复制代码
import os
from moviepy.editor import ImageSequenceClip,VideoFileClip,TextClip,CompositeVideoClip

path_ = "imgs/"

# 设置每秒帧数
fps = 30
# 每张图片的持续时间列表
durations = []
# 图片文件列表
image_files = []
for f_ in os.listdir(path_):
    print(f_)
    image_files.append(path_ + f_)
    durations.append(2) # 一个视频停留 2 秒

# 创建视频剪辑对象,设置每张图片的持续时间
clip = ImageSequenceClip(image_files, durations=durations)

# 输出视频文件
clip.write_videofile("output_video.mp4", codec="libx264",fps=fps)

# 打上字幕
video = VideoFileClip("output_video.mp4")  # 替换为你的视频文件路径
# 获取视频时长(单位:秒)
duration = video.duration
# 获取视频宽度
video_width = video.w
text = "DataBall - X "
print("{}".format(text))
txt_clip = TextClip(text, fontsize=120, color='blue', font="Arial-Bold",size=(video_width, None),method="caption")
txt_clip = txt_clip.set_position('bottom').set_duration(duration)
txt_clip = txt_clip.set_start(0)

final_video = CompositeVideoClip([video, *[txt_clip]])

# 输出字幕合成视频文件
final_video.write_videofile("output_video2.mp4", codec="libx264", audio_codec="aac")

示例如下:

​​​​​

助力快速掌握数据集的信息和使用方式。

数据可以如此美好!

相关推荐
我好喜欢你~18 分钟前
C#---StopWatch类
开发语言·c#
lifallen2 小时前
Java Stream sort算子实现:SortedOps
java·开发语言
IT毕设实战小研2 小时前
基于Spring Boot 4s店车辆管理系统 租车管理系统 停车位管理系统 智慧车辆管理系统
java·开发语言·spring boot·后端·spring·毕业设计·课程设计
wyiyiyi2 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
mit6.8242 小时前
[1Prompt1Story] 滑动窗口机制 | 图像生成管线 | VAE变分自编码器 | UNet去噪神经网络
人工智能·python
没有bug.的程序员2 小时前
JVM 总览与运行原理:深入Java虚拟机的核心引擎
java·jvm·python·虚拟机
甄超锋3 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
cui__OaO3 小时前
Linux软件编程--线程
linux·开发语言·线程·互斥锁·死锁·信号量·嵌入式学习
鱼鱼说测试3 小时前
Jenkins+Python自动化持续集成详细教程
开发语言·servlet·php
AntBlack4 小时前
不当韭菜V1.1 :增强能力 ,辅助构建自己的交易规则
后端·python·pyqt