☞ ░ 前往老猿Python博文目录

本专栏为moviepy音视频剪辑合成相关内容介绍的免费专栏,对应的收费专栏为《moviepy音视频开发专栏》。

一、moviepy基础能力系统介绍

本部分主要以类为单位介绍moviepy相关知识,相关内容主要来自moviepy官网、代码文档字符串以及源代码阅读。

1、moviepy简介及安装

2、moviepy音视频剪辑:moviepy中的剪辑基类clip属性和方法详解

3、moviepy音视频剪辑:视频剪辑基类VideoClip的属性及方法详解

4、moviepy音视频剪辑:视频基类VideoClip子类DataVideoClip、UpdatedVideoClip、ImageClip、ColorClip、TextClip类详解

5、moviepy音视频剪辑:视频基类VideoClip子类VideoFileClip、CompositeVideoClip、ImageSequenceClip介绍

6、moviepy音视频剪辑:颜色相关变换函数blackwhite、colorx、fadein/out、gamma_corr、invert_colors、lum_contrast、mask_color介绍

7、moviepy音视频剪辑:与time时间线相关的变换函数freeze_region、make_loopable、speedx、time_mirror、time_symmetrize介绍

8、moviepy音视频剪辑:与大小相关的视频变换函数crop、even_size、margin、resize介绍

9、moviepy音视频剪辑:视频变换处理与内容相关的变换函数headblur、mask_and/or、mirror_x/y、rotate、painting、scroll介绍

10、moviepy音视频开发:音频剪辑基类AudioClip

11、moviepy音视频开发:音频文件存取类AudioFileClip属性和方法介绍

12、moviepy音视频开发:音频合成类CompositeAudioClip介绍

13、moviepy音视频开发:音频合成类AudioArrayClip介绍

14、moviepy音视频开发:音频拼接函数concatenate_audioclips介绍

15、moviepy音视频开发:audio_fadein、fadeout实现声音淡入淡出

16、moviepy音视频开发:audio_loop实现音频内容循环重复

17、moviepy音视频开发:audio_normalize调整剪辑音量大小到正常

二、moviepy场景化功能的支撑能力介绍

本部分主要是针对要实现某种应用场景如视频拼接等需使用的moviepy对应能力,以场景将相关功能串联介绍。

1、moviepy音视频剪辑:使用VideoFileClip、AudioFileClip和write_videofile、write_audiofile进行音视频的加载和输出

2、moviepy音视频剪辑:使用concatenate_videoclips和clips_array将多个视频合成一个顺序播放或同屏播放的视频

3、moviepy音视频剪辑:输出文件前预览剪辑和视频帧的preview和imdisplay方法

4、moviepy1.03音视频剪辑:使用manual_tracking和headblur实现追踪人脸打马赛克

5、moviepy音视频开发:使用credits1给视频加片头片尾字幕

6、Python音视频开发:消除抖音短视频Logo和去电视台标

三、moviepy实战案例

本部分主要介绍笔者用PyQt+moviepy实现的图形化视频剪辑工具,并提供相关工具的win7和win10下的打包可执行文件下载。

1、PyQt+moviepy音视频剪辑实战1:多个音视频合成顺序播放或同屏播放的视频文件实现详解

2、PyQt+moviepy音视频剪辑实战2:一个剪裁视频文件精华内容留存工具的实现

3、Moviepy音视频开发:视频转gif动画或jpg图片exe图形化工具开发案例

4、Python音视频开发:消除抖音短视频Logo的图形化工具实现

四、moviepy部分关键知识点

本部分针对学习中笔者认为重要的知识点单独列出,这些知识点可能在第一部分的文章内包含,是笔者学习过程中耗费了一定的时间和精力去研究的要点总结。

1、moviepy音视频剪辑:moviepy中的剪辑相关类及关系

2、moviepy音视频剪辑:使用fl_time进行诸如快播、慢播、倒序播放等时间特效处理的原理和可能遇到的坑

3、Python+moviepy音视频剪辑:视频帧数据的本质、Clip的fl方法进行变换处理的原理以及滚屏案例

4、moviepy音视频剪辑VideoClip类to_mask方法、to_RGB、afx方法

5、moviepy音视频剪辑VideoClip类to_ImageClip方法使用注意事项

6、moviepy音视频剪辑VideoClip类set_position方法pos参数的使用方法及作用

7、moviepy音视频剪辑VideoClip类fl_image方法image_func报错ValueError: assignment destination is read-only解决办法

8、moviepy音视频剪辑VideoClip类fl_image方法及参数image_func的功能介绍

9、moviepy音视频剪辑基类VideoClip的write_gif方法opt、fuzz、dispose、colors、loop等参数的作用

10、moviepy音视频剪辑基类VideoClip的write_videofile方法codec、bitrate、preset、audio_bitrate、audio_nbytes等参数的作用

11、moviepy音视频剪辑:视频剪辑基类VideoClip的__init__构造方法参数has_constant_size的作用

12、moviepy音视频剪辑:mask clip遮罩剪辑、遮片、蒙版的作用以及其包含的构成内容

13、moviepy音视频剪辑:lum_contrast什么时候使用以及图像处理什么时候需要调整亮度与对比度

14、moviepy音视频剪辑:使用rotate函数实现视频变换处理以及expand取值为True时的花屏问题解决方案

15、moviepy音视频剪辑:headblur的参数r_blur卷积核以及fx、fy、r_zone的功能作用及用途

五、moviepy学习遇到的坑

本部分主要是笔者在使用moviepy开发碰到的一些棘手问题的解决情况介绍。

1、在Python中使用moviepy进行视频剪辑时输出文件报错 ‘NoneType’ object has no attribute 'stdout’问题

2、在Python中使用moviepy进行音视频剪辑混音合成时输出文件无声音问题

3、moviepy应用pyinstaller打包后执行报错AttributeError: module audio/video.fx.all has no attribute fadein、crop

4、moviepy用VideoFileClip加载视频时报UnicodeDecodeError: ‘utf-8’ codec can’t decode byte invalid start byte错误

5、moviepy用VideoFileClip加载视频时报UnicodeDecodeError: codec cant decode ,No mapping character 错误

6、关于moviepy打包报错AttributeError: module audio/video.fx.all has no attribute fadein、crop文章的纠错和抄袭

7、moviepy音视频剪辑:使用fl_time报错OSError: MoviePy error: failed to read the first frame of video file

8、moviepy音视频剪辑:使用fl_time进行时间特效处理报错ValueError: Attribute duration not set

9、moviepy音视频剪辑:使用fl_time进行时间特效处理报错OSError: Error in file xxxx, Accessing time

10、TextClip构造方法报OSError:MoviePy creation of None failed because of the following [WinError 2]系统找不到指定的文件

11、TextClip的list和search方法报错:UnicodeDecodeError: utf-8 codec canot decode byte 0xb7 in position 8

12、moviepy执行TextClip.search方法时报错TypeError: a bytes-like object is required, not str

13、moviepy音视频剪辑:TextClip.list(font)和search搜索字体报错UnicodeDecodeError:utf-8 codec cannott decode byte 问题

14、moviepy音视频剪辑:TextClip不支持中文字符以及OSError: magick.exe: unable to read font 仿宋_GB2312.ttf的解决办法

15、moviepy音视频剪辑:headblur函数遇到的TypeError: integer argument expected, got float错误的解决方案

16、*moviepy音视频剪辑:headblur函数遇到的ValueError assignment destination is read-only问题及解决办法

17、moviepy AudioClip帧处理ValueError: The truth value of array with more than one element is ambiguous

18、moviepy音视频剪辑:AudioClip帧处理时报TypeError: only size-1 arrays can be converted to Python scalar错

19、moviepy AudioClip的max_volume方法报错ValueError: operands could not be broadcast together with shapes(2,)

六、图形图像及音视频处理的基础知识

本部分主要是笔者这种图像及音视频处理小白在学习moviepy过程中发现需要了解的一些图形图像及音视频处理的基础知识的总结:

1、图像处理术语解释:图像的灰度、色相、饱和度、亮度、明度、阿尔法通道、HSL、HSV、RGBA、ARGB和PRGBA概念以及Premultiplied Alpha(Alpha预乘)等基础概念详解

2、音视频处理基础知识扫盲:数字视频YUV像素表示法以及视频帧和编解码概念介绍

3、图像处理gamma修正(伽马γ校正)的原理和实现算法

注意:

本目录的内容主要是基于免费内容所列文章目录,如果为收费专栏文章,文章标题前会加星号(*)标记,如果该部分内容有对应收费专栏的文章,则可以在免费文章最后的“广告”部分能找到入口。

收费文章和免费文章在基础内容介绍上基本上差不多,主要区别可能在两个方面,一是可能案例更多一些,二是部分知识点介绍得更详细一些。可以参考一下如下两篇免费文章的对比:

1、moviepy音视频剪辑:使用fl_time进行诸如快播、慢播、倒序播放等时间特效处理的原理和可能遇到的坑

2、Python+moviepy音视频剪辑:视频帧数据的本质、Clip的fl方法进行变换处理的原理以及滚屏案例

前者是一篇免费文章,后者是一篇收费专栏风格文章,只不过发布成了免费文章。

关于收费专栏

本专栏为免费专栏,老猿同时提供了与此对应的付费专栏《moviepy音视频开发专栏》,与本专栏文章内容对比,部分文章内容介绍更深入或案例更多。

老猿的付费专栏《使用PyQt开发图形界面Python应用》专门介绍基于Python的PyQt图形界面开发基础教程,付费专栏《moviepy音视频开发专栏》详细介绍moviepy音视频剪辑合成处理的类相关方法及使用相关方法进行相关剪辑合成场景的处理,两个专栏加起来只需要19.9元,都适合有一定Python基础但无相关专利知识的小白读者学习。这2个收费专栏都有对应免费专栏,只是收费专栏的文章介绍更具体、内容更深入、案例更多。

对于缺乏Python基础的同仁,可以通过老猿的免费专栏《专栏:Python基础教程目录》从零开始学习Python。

如果有兴趣也愿意支持老猿的读者,欢迎购买付费专栏。

跟老猿学Python、学5G!

☞ ░ 前往老猿Python博文目录

PyQt+moviepy音视频剪辑实战文章目录的更多相关文章

  1. PyQt+moviepy音视频剪辑实战2:一个剪裁视频文件精华内容留存工具的实现

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.引言 ...

  2. PyQt+moviepy音视频剪辑实战1:多个音视频合成顺序播放或同屏播放的视频文件实现详解

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...

  3. PyQt+moviepy音视频剪辑实战2:实现一个剪裁视频文件精华内容留存工具

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.引言 ...

  4. PyQt+moviepy音视频剪辑实战1:多视频合成顺序播放或同屏播放的视频文件

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.引言 在<moviepy音视频剪辑:音视 ...

  5. moviepy音视频开发专栏文章目录

    ☞ ░ 前往老猿Python博文目录 ░ <moviepy音视频开发专栏>为收费专栏,基于老猿阅读moviepy1.03版本的源代码以及大量测试验证的基础上,详细介绍moviepy主要音视 ...

  6. moviepy音视频剪辑:AudioClip帧处理时报TypeError: only size-1 arrays can be converted to Python scalar错

    ☞ ░ 前往老猿Python博文目录 ░ 一.环境 操作系统:win7 64位 moviepy:1.0.3 numpy:1.19.0 Python:3.7.2 二.应用代码及报错信息 程序代码 if ...

  7. moviepy音视频剪辑:视频变换处理与内容相关的变换函数headblur、mask_and/or、mirror_x/y、rotate、painting、scroll介绍

    一.引言 在<moviepy音视频剪辑:moviepy中的剪辑基类Clip详解>介绍了剪辑基类的fl.fl_time.fx方法,在<moviepy音视频剪辑:视频剪辑基类VideoC ...

  8. moviepy音视频剪辑:headblur函数遇到的ValueError assignment destination is read-only问题及解决办法

    ☞ ░ 前往老猿Python博文目录 ░ 一.运行环境 运行环境如下: python版本:3.7 opencv-python版本:4.2.0.34 numpy版本:1.19.0 二.错误案例代码及报错 ...

  9. moviepy音视频剪辑:headblur函数遇到的TypeError: integer argument expected, got float错误的解决方案

    运行环境如下: python版本:3.7 opencv-python版本:4.2.0.34 numpy版本:1.19.0 错误信息: 在调用moviepy1.03版本的headblur函数执行人脸跟踪 ...

随机推荐

  1. 一个名为不安全的类Unsafe

    最近为了更加深入了解NIO的实现原理,学习NIO的源码时,遇到了一个问题.即在WindowsSelectorImpl中的 pollWrapper属性,当我点进去查看它的PollArrayWrapper ...

  2. .Net Newtonsoft.Json 转json时将枚举转为字符串

    1:非列表类型枚举 [JsonConverter(typeof(StringEnumConverter))] public SubjectTypeEnum subject_type { get; se ...

  3. 【JVM第八篇--垃圾回收】GC和GC算法

    写在前面的话:本文是在观看尚硅谷JVM教程后,整理的学习笔记.其观看地址如下:尚硅谷2020最新版宋红康JVM教程 1.垃圾 1.1.什么是垃圾 垃圾(Garbage)在Java语言中是指在运行程序中 ...

  4. mysql权限管理命令

    #创建用户 create user 'songwp' IDENTIFIED BY '1234' #用户授权 GRANT ALL ON DB01.* TO 'songwp' #撤销权限 REVOKE A ...

  5. mysql之事物

    1.事物,在事物中的sql语句,要么全部执行成功,要么全部执行失败,不会出现一条sql执行成功了,一条sql执行失败的问题. 2.开启事物:就是关闭mysql自己的自动提交事物的方式 3.commit ...

  6. Spark3.0.1各种集群模式搭建

    对于spark前来围观的小伙伴应该都有所了解,也是现在比较流行的计算框架,基本上是有点规模的公司标配,所以如果有时间也可以补一下短板. 简单来说Spark作为准实时大数据计算引擎,Spark的运行需要 ...

  7. Unity Lod

    LOD是Level Of Detais 的简称,多细节层次,根据摄像机与物体距离,unity会自动切换模型.一般离摄像机近的时候显示高模,离摄像机远的时候显示低模,借此来提升性能. 如果你在Blend ...

  8. 想换4K显示器了?那你搞懂啥是4K了吗?

    前言 我们在科技资讯以及电脑显示器.数字电视等电子产品的宣传语中,经常能够看见4K的字样.最近,B站(哔哩哔哩)升级了HTML5播放器和视频云等相关服务,为广大用户提供了超高清(UHD: Ultra ...

  9. SSTI Flask

    1.什么是SSTI?什么是Flask? ​ SSTI称为服务端模板注入,主要为Python.Java.PHP的框架在使用渲染函数时,由于代码不规范或者对于用户输入过于信任而导致产生了SSTI.类似于S ...

  10. C#设计模式-外观模式(Facade Pattern)

    引言 在软件测试中,一般都是在功能测试稳定的情况下再进行UI自动化测试.或者进行性能测试.如果一个一个进行太麻烦,此时可以使用对外提供一个简单接口,通过这个接口可以访问内部一群接口.例如进行UI自动化 ...