当前位置: 首页 > news >正文

python moviepy 图文批量合成带字幕口播视频

最近在研究将图片和文本批量合成为带字幕口播视频

主要是基于python的moviepy库

from generator import audio, pics, subs, videodef main():texts_input = 'example'pics_input = 'example'# 图片分辨率预处理pics.adjust(pics_input)# 文字转语音audio.text_to_audio(texts_input)# 语音转视频video.audio_to_video(texts_input, pics_input)# 生成字幕subs.download_subs(texts_input)# 生成字幕视频video.attach_subs(texts_input)if __name__ == "__main__":main()

以下是核心的图片+文本转视频逻辑

import json
from mutagen.mp3 import MP3
from moviepy import editor
from moviepy.editor import VideoFileClip, TextClip, CompositeVideoClip
import generator.pics as picsdef audio_to_video(text_input, pics_input):audio_filepath = './output/audios/' + text_input.replace(' ', '_') + '.mp3'video_filepath = './output/videos/' + text_input.replace(' ', '_') + '.mp4'pics_dir = './output/pics/' + pics_input.replace(' ', '_')list_of_images = pics.preprocess_pics(pics_dir)audio = MP3(audio_filepath)audio_length = audio.info.lengthfps = len(list_of_images) / audio_length# 生成视频video = editor.ImageSequenceClip(pics_dir, fps=fps)audio = editor.AudioFileClip(audio_filepath)final_video = video.set_audio(audio)final_video.write_videofile(video_filepath, codec="libx264", fps=10)

以下是我实现的示例项目,可参考和star一下下哈!

https://github.com/chengxs1994/text-img-generator-vedio

http://www.lryc.cn/news/275280.html

相关文章:

  • 【代码片段】Linux C++打印当前函数调用堆栈
  • Linux程序、进程以及计划任务(第一部分)
  • Oracle database 12cRAC异地恢复至单机
  • 【docker】linux部署docker
  • 【K8S 云原生】Pod资源限制、Pod容器健康检查(探针)
  • Python从入门到网络爬虫(模块详解)
  • [大厂实践] 无停机迁移大规模关键流量(下)
  • VMware Workstation虚拟机CentOS 7.9 配置固定ip的步骤
  • 构建自己的私人GPT
  • EtherCAT主站SOEM -- 14 --Qt-Soem通过界面采集从站IO进行显示
  • 线程安全、共享变量的可见性
  • 电动汽车BMS PCB制板的技术分析与可制造性设计
  • Android 车联网——多屏多用户(十五)
  • uwsgitop 使用
  • 深信服技术认证“SCSA-S”划重点:文件包含漏洞
  • Color Control
  • 端口开放问题
  • KNN 回归
  • Kali Linux——获取root权限
  • 听GPT 讲Rust源代码--compiler(28)
  • Debezium日常分享系列之:Debezium2.5版本之connector for JDBC
  • 爬虫网易易盾滑块案例:某乎
  • 机器学习笔记 - 偏最小二乘回归 (PLSR)
  • 【HTML5】第1章 HTML5入门
  • dyld: Library not loaded: /usr/lib/swift/libswiftCoreGraphics.dylib
  • React Hooks中useState的介绍,并封装为useSetState函数的使用
  • 5 个最适合SEI 网络空投交易等操作的钱包(Bitget Wallet,Coin98等)
  • .net8 AOT编绎-跨平台调用C#类库的新方法-函数导出
  • 第三十八周周报:文献阅读 +BILSTM+GRU+Seq2seq
  • 天津最新web前端培训班 如何提升web技能?