文章目录

  • 前言
  • 安装
  • 一个小例子
  • 最后

前言

之前制作视频一般都是pr或者是在线制作视频,然后昨天偶然看到了一个python的库—moviepy,现在我们可以写代码来制作视频了。

安装

这个库安装起来很简单,还是老样子pip install moviepy
不过使用windows的话还需要安装ImageMagick,不然视频制作会报错。
安装ImageMagick的博客
安装好之后就可以慢慢探索这个库的使用了,基本上所有的视频剪辑操作都有相关的函数,我也发现了不少比较好的博客可以用来学习
moviepy的基本使用
国内的相关博客可能不多,有条件的可以去看看国外的相关博客

一个小例子

因为前两天六一刚好出门玩拍了一点视频照片,所以正好拿来作为素材。
准备好素材,然后写点字幕,用网页的文字转语音导出mp3文件,一切素材准备就绪就可以开始写代码了。
结构

代码

from moviepy import editor
import re# 添加视频,做淡入淡出处理
video_clips=[]
for name in ["./MP4/10803738726833380508703892223.mp4","./MP4/video_20200601_150530.mp4"]:video_clip=editor.VideoFileClip(name).crossfadein(0.5).crossfadeout(0.5)video_clips.append(video_clip)
# 拼接
bg_video=editor.concatenate(video_clips)# 语音
voice=editor.AudioFileClip("./MP3/1.mp3")
duration=voice.duration# 字幕
with open("./txt/字幕.txt",encoding='utf-8') as f:text=f.readlines()[0]lines=[line for line in re.split(',|。',text) if line !='']
line_dur=duration/len(lines)subtitle_clips=[]
for i,line in enumerate(lines):subtitle_clip=editor.TextClip(line,color='white',font="simhei.ttf",fontsize=60,bg_color='black',align='center')subtitle_clip=editor.CompositeVideoClip([subtitle_clip]).set_duration(line_dur).set_start(i*line_dur).set_end((i+1)*line_dur)subtitle_clips.append(subtitle_clip)subtitles=editor.concatenate(subtitle_clips)# 合成
final_audio=editor.CompositeAudioClip([voice.volumex(2)]).set_duration(duration)
final_video=editor.CompositeVideoClip([bg_video,subtitles.set_position(('center',0.8),relative=True)
]).set_duration(duration)final_video=final_video.set_audio(final_audio)# 导出
final_video.write_videofile('./test.mp4',fps=24)

然后同一目录下就会生成导出的视频。

最后

近期调整过来了,时不时会发点简单有趣的分享。

用python代码制作视频相关推荐

  1. python 制作字符视频_20行Python代码实现视频字符化功能

    我们经常在B站上看到一些字符鬼畜视频,主要就是将一个视频转换成字符的样子展现出来.看起来是非常高端,但是实际实现起来确是非常简单,我们只需要接触opencv模块,就能很快的实现视频字符化.但是在此之前 ...

  2. python红色的颜色表达式_50行Python代码实现视频中物体颜色识别和跟踪(必须以红色为例)...

    目前计算机视觉(CV)与自然语言处理(NLP)及语音识别并列为人工智能三大热点方向,而计算机视觉中的对象检测(objectdetection)应用非常广泛,比如自动驾驶.视频监控.工业质检.医疗诊断等 ...

  3. 用Python代码实现视频转gif动图

    下面是一个使用 Python 代码实现视频转 gif 动图的简单示例: import imageio# 读取视频文件 video = imageio.get_reader('input.mp4')# ...

  4. python做出来的小程序、可以在win10上面运行_超详细,手把手教你用20行Python代码制作飞花令小程序!...

    原标题:超详细,手把手教你用20行Python代码制作飞花令小程序! 来源:早起Python 作者:陈熹 飞花令是古时候人们经常玩一种"行酒令"的游戏,是中国古代酒令之一,属雅令. ...

  5. 如何用python破解热点_用30行Python代码制作wifi万能钥匙,邻居家wifi网速好快

    原标题:用30行Python代码制作wifi万能钥匙,邻居家wifi网速好快 当我们拖着疲惫的身体下班回到家,想开开心心的吹着空调风扇吃着西瓜,然后手机连上wifi打一把游戏好好舒服下,然而家里wif ...

  6. 【目标检测】使用python代码实现视频转为图片

    在目标检测任务,我们需要为每张图片打标签,从而制作成用于目标检测任务的数据集. 如果我们获取的是一段视频,如何根据帧数将视频转为一张张图片,然后在制作数据集呢? 多的不说,少的不唠,下面给大家分享一个 ...

  7. 再见,360浏览器!我用60行Python代码制作一款浏览器!

    点上方"菜鸟学Python",选择"星标" 第476篇原创干货,第一时间送达 对于日常网上冲浪的朋友们,浏览器是大家必不可少的一个工具,市面上也存在各种款式的浏 ...

  8. 3000 字推荐一个可视化神器,50 行 Python 代码制作数据大屏

    作者 | 俊欣 来源 | 关于数据分析与可视化 今天小编给大家分享一个制作数据大屏的工具,非常的好用,100行左右的Python代码就可以制作出来一个完整的数据大屏,并且代码的逻辑非常容易理解. Py ...

  9. 两行Python代码调整视频的亮度

    ☞ ░ 老猿Python博文目录 ░ 一.引言 最近看到好几篇类似"n行Python代码-"的博文,看起来还挺不错,简洁.实用,传播了知识.带来了阅读量,撩动了老猿的心,决定跟风一 ...

  10. python代码提示太弱了_10行Python代码制作群聊提醒小助手,再也不怕漏掉消息了...

    前言 大家还记得教会父母玩微信是什么时候吗?父母学会后,我们的生活就发生了「质」的变化,父母也许会 吐槽你的微信头像不好,要你换一个头像. 最近 pk哥 又被母后大人吐槽了,原因是亲戚微信群里某个亲戚 ...

最新文章

  1. Hadoop概念学习系列之Java调用Shell命令和脚本,致力于hadoop/spark集群(三十六)...
  2. 利用vue和jQuery实现中国主要城市搜索与选择
  3. 《Java特种兵》1.3 简单数字游戏玩一玩
  4. 深度学习核心技术精讲100篇(二十二)-深度解析数学建模核心知识之搜索与推荐模型中用户建模原理
  5. pythonbool类型数组生成_Python Numpy:如何计算bool数组中真正元素的数量
  6. 《JavaScript高级程序设计》阅读笔记(七):ECMAScript中的语句
  7. how to write a php framework,怎么一步步编写简单的PHP的Framework(十四)
  8. 都兰县第一中学计算机,都兰县第一中学教案.doc
  9. Java面试题17 牛客 下面哪个选项正确创建socket连接?
  10. 树莓派apt-get update速度慢的解决方法
  11. 【PostgreSQL-9.6.3】设置log参数
  12. 数据库高并发解决方案(一)查询优化
  13. ld framework not found FileProvider for architecture x86_64 报错
  14. 7种方式实现3栏布局
  15. 安卓pdf取词翻译软件_写论文,你应该知道这些好用的论文翻译软件!
  16. Eprime与EEG的接口
  17. 挥泪告别鼠标,我终究还是学会了Windows快捷键
  18. wince之浅谈无线漫游
  19. python淘宝cookies抢购_Python爬虫利用cookie抓取淘宝商品比价
  20. CAD—dwg格式解析库:libdxfrw和libredwg

热门文章

  1. ds18b20工作原理和测温原理介绍
  2. Excel常用函数及操作_脑图
  3. 第一章 语料库语言学基本知识
  4. [UE5] 部署 Rider For Unreal Engine 编辑器
  5. React fundamental 和 React Router-郭永峰-专题视频课程
  6. 黑客炸弹弹窗假装自己是黑客
  7. axios中文文档整理
  8. RN上使用react-native-video视频播放器插件
  9. CXF学习(1)——CXF框架
  10. 递归下降分析法java_Atitit 表达式原理 语法分析 原理与实践 解析java的dsl  递归下降是现阶段主流的语法分析方法...