Python竟然能剪辑视频

 更新时间:2021年05月25日 10:28:40   作者:Python研究者  
平时我们在刷短视频或者看到一些视频的时候,希望可以把视频里面的音频提取出来当背景音乐究竟是怎么操作的呢,下面小编教大家python如何去提取一个视频里面的音频,感兴趣的朋友一起看看吧

大家好,我是辰哥。

辰哥之前就想着Python可不可以剪辑视频(提取视频的音频,视频截取等等),然后辰哥在网上一搜,还真找到了Python的一个处理音频的库-MoivePy

MoivePy能干嘛呢,下面辰哥来给大家简单介绍一下。

提取音频

视频截取

视频合并

视频叠加

添加字幕

追踪人脸,打马赛克

炫酷的特效

阴影效果

.......

01提取音频

平时我们在刷短视频或者看到一些视频的时候(视频里才有,网上搜不到这种剪辑的音频时),希望能够把视频里面的音频提取出来当背景音乐或者想平时听听但是不想打开视频时。

那么辰哥就用python教大家如何去提取一个视频里面的音频。

在开始之前,先把Moivepy库安装一下,通过下面的命令即可安装

pip install moviepy

安装好之后,接着咱们就开始对视频进行处理了。

from moviepy.editor import *
video = VideoFileClip('七次人口普查.mp4')
audio = video.audio
audio.write_audiofile('七次人口普查.mp3')

这里以视频:七次人口普查.mp4为例,这个视频是辰哥之前录制的一个视频

提取好的音频保存为:七次人口普查.mp3

打开音频,音质和视频中的音质一模一样(完美提取成功

02截取视频

此外还可以将视频进行截取。截图的视频不仅可以是保存成视频还可以将截取的视频保存为gif格式

1.截取后保存为视频

同样还是以视频:七次人口普查.mp4为例(视频一共是38秒),咱们从截取其中的一段(第5s~第25s)20秒。

video = VideoFileClip('七次人口普查.mp4')
# 剪辑这个clip 的5s-25s,保存mp4
video2 = video.subclip(5, 25)
video2.write_videofile("七次人口普查5_25.mp4")

截取后的视频保存为:七次人口普查5_25.mp4

运行结束之后,视频就已经保存到本地(同时视频中的音频也对应的保存过来

最终效果:

打开之后,没问题,成功截取。

2.截取后保存为gif

接着将截取的视频保存成gif格式

video = VideoFileClip('七次人口普查.mp4')
# 剪辑这个clip 的5s-25s,保存mp4
video2 = video.subclip(5, 25)
video2.write_gif("七次人口普查5_25.gif",fps=16)

代码中的fps是帧率,这里设置为16,fps越大,gif越清晰,同时gif也会越大。(这里设置了16,已经较为清晰了)

截取后的视频保存gif:七次人口普查5_25.gif

打开后如下:

03视频合并

除了对视频截取外,还可以将多个视频进行合并。

video1 = VideoFileClip('七次人口普查.mp4')
video2 = VideoFileClip("七次人口普查5_25.mp4")
video3 = concatenate_videoclips([video1, video2])
video3.write_videofile("七次人口普查_合并.mp4")

视频:七次人口普查.mp4原视频(38秒),视频:七次人口普查5_25.mp4上面案例截取的视频(20秒),最后合并成:七次人口普查_合并.mp4

ps:上面代码只是演示合并两个视频,实际是可以合并多个的

原视频:

最终合并视频:

04视频叠加

通常在电影中都可以看到视频中分块的部分不同的画面。这用了视频叠加的效果。接下来辰哥教大家如何用Python去实现。

video1 = VideoFileClip("七次人口普查.mp4").margin(10)
video2 = video1.fx(vfx.mirror_x)  # x轴镜像
video3 = video1.fx(vfx.mirror_y)  # y轴镜像
video4 = video1.resize(0.8)  # 尺寸等比缩放0.8
newvideo = clips_array([
    [video1, video2],
    [video3, video4]
])
newvideo.resize(width=480).write_videofile("七次人口普查_叠加.mp4")

这里主要是以视频:七次人口普查.mp4为例,弄成四方块的样式进行叠加。最候保存成:七次人口普查_叠加.mp4。

最终效果:

05小结

ok,辰哥就介绍以上这四种剪辑视频的方法,此外还有很多方法。比如:

添加字幕

追踪人脸,打马赛克

炫酷的特效

阴影效果

............

这里辰哥就不一一演示了,感兴趣的小伙伴可以去搜索moviepy的文档教程进行学习。

以上就是哇哦 Python竟然能剪辑视频的详细内容,更多关于Python剪辑视频的资料请关注脚本之家其它相关文章!

相关文章

  • python 中的jieba分词库

    python 中的jieba分词库

    这篇文章主要介绍了python中的jieba分词库,jieba 库是优秀的中文分词第三方库,中文文本需要通过分词获得单个的词语,下面文章的的详细内容,需要的朋友可以参考一下
    2021-11-11
  • 对python:threading.Thread类的使用方法详解

    对python:threading.Thread类的使用方法详解

    今天小编就为大家分享一篇对python:threading.Thread类的使用方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • Python正则表达式的另类解答

    Python正则表达式的另类解答

    这篇文章主要为大家详细介绍了Python正则表达式,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • django admin管理工具自定义时间区间筛选器DateRangeFilter介绍

    django admin管理工具自定义时间区间筛选器DateRangeFilter介绍

    这篇文章主要介绍了django admin管理工具自定义时间区间筛选器DateRangeFilter介绍,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • python计算时间差的方法

    python计算时间差的方法

    这篇文章主要介绍了python计算时间差的方法,实例分析了Python时间操作的相关模块与技巧,需要的朋友可以参考下
    2015-05-05
  • Python导出依赖的五种方法

    Python导出依赖的五种方法

    本文主要介绍了Python导出依赖的五种方法,包括使用pip freeze、pipreqs、poetry、pip-tools和conda,具有一定的参考价值,感兴趣的可以了解一下
    2025-03-03
  • python使用re模块爬取豆瓣Top250电影

    python使用re模块爬取豆瓣Top250电影

    这篇文章主要介绍了python使用re模块爬取豆瓣Top250电影的示例,帮助大家更好的理解和学习python 爬虫,感兴趣的朋友可以了解下
    2020-10-10
  • Python绘制直方图的示例代码

    Python绘制直方图的示例代码

    本文主要介绍了如何使用Python绘制直方图,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • Python GUI编程学习笔记之tkinter界面布局显示详解

    Python GUI编程学习笔记之tkinter界面布局显示详解

    这篇文章主要介绍了Python GUI编程学习笔记之tkinter界面布局显示,结合实例形式分析了Python GUI编程中tkinter界面布局显示的相关操作技巧与使用注意事项,需要的朋友可以参考下
    2020-03-03
  • python如何输入根号

    python如何输入根号

    这篇文章主要介绍了python如何输入根号,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05

最新评论