PyQt+moviepy音视频剪辑实战文章目录

2023-10-30

☞ ░ 前往老猿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和去电视台标
7、实现两视频叠加时上层剪辑透明部分不遮挡下层内容的两种方案

三、moviepy实战案例

本部分主要介绍笔者用PyQt+moviepy实现的图形化视频剪辑工具,并提供相关工具的win7和win10下的打包可执行文件下载。
1、PyQt+moviepy音视频剪辑实战1:多个音视频合成顺序播放或同屏播放的视频文件实现详解
2、PyQt+moviepy音视频剪辑实战2:一个剪裁视频文件精华内容留存工具的实现
3、Moviepy音视频开发:视频转gif动画或jpg图片exe图形化工具开发案例
4、Python音视频开发:消除抖音短视频Logo的图形化工具实现
5、Moviepy音视频剪辑:视频添加雪花飘落特效
6、OpenCV-Python+Moviepy 结合进行视频特效处理

四、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,)
20、Python 3.8+moviepy报错:TypeError: ‘module‘ object is not callable

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

本部分主要是笔者这种图像及音视频处理小白在学习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音视频剪辑合成处理的类相关方法及使用相关方法进行相关剪辑合成场景的处理,都适合有一定Python基础但无相关专利知识的小白读者学习。这2个收费专栏都有对应免费专栏,只是收费专栏的文章介绍更具体、内容更深入、案例更多。

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

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

如果对文章内容存在疑问,可以在博客评论区留言,或关注:老猿Python 微信公号发消息咨询。
在这里插入图片描述

跟老猿学Python、学Moviepy!

☞ ░ 前往老猿Python博文目录

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

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

随机推荐

  • Kettle变量和自定义java代码的实例应用

    1 kettle properties参数配置数据源连接和FTP连接 由于测试环境和生产环境中数据库连接FTP等配置会在部署过程中变更 所以预先定义成配置项 在配置文件中修改 这样测试和发布将会变得简单 下面以数据库为例说明这类配置的使用
  • sys.exc_info()异常处理Python内置

    sys系统相关的参数和函数 Python内置于系统相关的库 sys exc info 此函数返回一个三值元组 包含当前正在处理的异常信息 返回的信息同时针对当前线程和当前堆栈框架 如果当前堆栈框架不是在处理一个异常 该信息取自调用的堆栈信息
  • 用科学计数法表示二进制小数_数值数据的表示

    在学习之前 我们先来看一段代码的计算 为什么会出现这样的结果呢 std 在计算机中最主要的数据类型有无符号整型 有符号整型 浮点数 布尔值 布尔值 就是真 假 1或者0 在计算机中用最小的1个字节表示 即8位 无符号整型 即我们数学中的正整
  • android本地xml配置,Android Studio创建的Android项目一般需要忽略

    1 idea文件夹 2 gradle文件夹 3 所有的build文件夹 4 所有的 iml文件 5 local properties文件 第一种 在Android Studio中设置 第二种 在项目的 idea workspace xml的
  • Java多线程文件下载器高文件下载速度

    使用多线程下载器提高文件下载速度 在进行大文件下载时 使用多线程技术可以显著提高下载速度 本文将介绍如何使用多线程下载器来实现并行下载 以加快文件下载过程 多线程下载器简介 多线程下载器是一种利用多线程同时下载文件的工具 它将大文件分割成多
  • SSD(pytorch)自建数据集训练及测试

    一 数据集准备 SSD代码 GitHub amdegroot ssd pytorch A PyTorch Implementation of Single Shot MultiBox Detector 采用的VOC格式的数据集 在data文
  • odoo16安装教程,全球第一开源ERP平台

    虚拟机版本 ubuntu 22 10 本人用的是这个版本的ubuntu系统 也可以使用最新版本的 准备工作 打开虚拟机 ubuntu系统 进入终端 更新系统 sudo apt get update sudo apt get upgrade
  • js 获取两个时间之间相差月份

    话不多说 直接上代码 获取两个时间月份差 function getMonths start end var result var starts start split var ends end split var staYear start
  • Unity UGUI 添加 Material(材质)

    在给 UGUI 添加 Material 时 如果 Material 中的 Shader 不做特殊处理的话 那么此组件将会变成纯黑色 如果需要添加 Material 则需要在 Shader 中做 UGUI 专门的处理 Properties U
  • Android 11以下DialogFragment里弹出PopWindow显示问题

    最近在写UI的时候发现一个非常有意思的事情 Android 11以下在DialogFragment里面弹出PopWindow 最终会被截取 尝试过一些方法以后将解决方案做一个记录 mPopWindow setClippingEnabled
  • 华为手机连电脑当摄像头用_今天才知道,华为手机摄像头还能这样用!还不会用你买什么华为?...

    大家都知道 华为手机的摄像头十分给力 拍照效果很好看 但是你知道吗 华为手机摄像头 不仅仅能拍照 它还有很多隐藏的高级用法 比如今天说的这两个 不到10 的花粉会用 挺可惜的 一 华为手机摄像头高级用法 1 扫描文档 10分钟后就下班了 领
  • Python Tkinter Menu使用教程

    Menu类控件用来实现顶层 下拉 弹出菜单 Patterns Toplevel menus被用来显示在标题栏 root窗口或者其他顶层窗口上 创建一个顶层菜单 创建Menu类的实例 然后使用add方法添加命令或者其他菜单内容 root Tk
  • 30分钟掌握STL系列(二)

    30分钟掌握STL系列 二 迭代器 迭代器提供对一个容器中的对象的访问方法 并且定义了容器中对象的范围 迭代器就如同一个指针 事实上 C 的指针也是一种迭代器 但是 迭代器不仅仅是指针 因此你不能认为他们一定具有地址值 例如 一个数组索引
  • 滴滴前端高频react面试题总结

    当调用 setState的时候 发生了什么操作 当调用 setState时 React做的第一件事是将传递给setState的对象合并到组件的当前状态 这将启动一个称为和解 reconciliation 的过程 和解的最终目标是 根据这个新
  • iOS开发——在 OC 项目中使用基于 Swift 的 CocoaPods 库

    在 OC 项目中使用基于 Swift 的 CocoaPods 库 随着 Swift 的流行 各种神奇的库也开始有对应的 Swift 版本了 而其中一些更神奇的库却只有 Swift 版本 正巧接手了一个前人用 Swift 写的项目 里面有一个
  • element中checkbox触发change事件时同时传递状态和自定义参数

    element中checkbox触发change事件时同时传递状态和自定义参数 div div
  • 高质量程序设计指南C++ C 代码规范

    这里只是搬运作者对 匈牙利 命名规则做合理简化之后的命名规则 比较适合于 Windows应用程序的开发 建议1 类型名和函数名均以大写字母开头的单词组合而成 例如 class Node 类名 class LeafNode 类名 void D
  • 打开dll文件时模块加载失败,请确保二进制存储在指定的路径中,或者调试它以检查该二进制或相关的.DLL文件是否有问题

    打开dll文件时模块加载失败 请确保二进制存储在指定的路径中 或者调试它以检查该二进制或相关的 DLL文件是否有问题 打开dll文件时模块加载失败 电脑提示请确保二进制存储在指定的路径中 或者调试它以检查该二进制或相关的 DLL文件是否有问
  • Linux命令-fsync

    对fsync命令只做简单介绍 不做详细原理解释 通过man命令查看fsync 2 函数有以下共识 1 fsync函数是属于系统核心函数 2 调用fsync函数会将修改的数据和文件描述符的属性持久化到存储设备中 3 fsync函数将内核缓存的
  • PyQt+moviepy音视频剪辑实战文章目录

    前往老猿Python博文目录 本专栏为moviepy音视频剪辑合成相关内容介绍的免费专栏 对应的收费专栏为 moviepy音视频开发专栏 一 moviepy基础能力系统介绍 本部分主要以类为单位介绍moviepy相关知识 相关内容主要来自m