moviepy这个版本,除了字幕,基本可用
只是注意,开头要坚拍,中间要横拍,结尾图左上右下。
哈哈,如果不是这样,那就要调调角度了。
from moviepy.editor import *
from moviepy.video.tools.subtitles import SubtitlesClip
from moviepy.video.fx import resize
from moviepy.video.tools.segmenting import findObjects
# 导入字幕
generator = lambda txt: TextClip(txt, font='SimHei', fontsize=24, color='black')
sub = SubtitlesClip("welcome.srt", generator)
txt_clip = TextClip("good!", fontsize=70, color='white')
txt_clip = txt_clip.set_pos('center').set_duration(10)
# 片头
start_clip = VideoFileClip("start_clip.mp4").subclip(0, 3.0).rotate(90).resize((1500, 750))
# 合成字幕
# start_clip = CompositeVideoClip([start_clip, sub])
# start_clip = CompositeVideoClip([start_clip, txt_clip])
# 片尾
end_clip = ImageClip("end.jpg")
end_clip = end_clip.set_duration(2).resize((1500, 750))
# 内容
main_clip = VideoFileClip("demo.wmv", audio=False).without_audio().subclip(0, 10.0).on_color(color=(255, 255, 255)).resize((1050, 750)).crossfadein(0.5).crossfadeout(0.5)
left_clip1 = VideoFileClip("left_clip.mp4", audio=False).without_audio().subclip(0, 10.0).rotate(90).on_color(color=(255, 255, 255))
# 另一种实现,通过画好的线框来安置视频
# Load the image specifying the regions.
im = ImageClip("BACK.png").resize((1500, 750))
# Loacate the regions, return a list of ImageClips
regions = findObjects(im)
clips = [left_clip1, main_clip]
comp_clips = [c.resize(r.size).set_mask(r.mask).set_position(r.screenpos) for c, r in zip(clips, regions)]
mid_clip = CompositeVideoClip(comp_clips, im.size)
# 剪辑合成
final_clip = concatenate_videoclips([start_clip, mid_clip, end_clip])
# 输出视频
final_clip.write_videofile("my_stack.mp4", fps=10)
moviepy这个版本,除了字幕,基本可用的更多相关文章
- #npm install# MSBUILD : error MSB4132: 无法识别工具版本“2.0”。可用的工具版本为 "4.0"。
0.问题描述 Windows 10 最近使用npm install安装项目依赖包,当自动执行至node-gyp rebuild时报错: C:\Users\dsl\Desktop\Pros\ant-de ...
- Visual Studio 2017版本15.9现在可用
本文转自 https://blogs.msdn.microsoft.com/visualstudio/2018/11/19/visual-studio-2017-version-15-9-now-av ...
- 阿里开源 Dragonwell JDK 重磅发布 GA 版本:生产环境可用
今年 3 月份,阿里巴巴重磅开源 OpenJDK 长期支持版本 Alibaba Dragonwell的消息,在很长一段时间内都是开发者的讨论焦点,该项目在 Github 上的 Star 数迅速突破 1 ...
- Navicat15最新版本破解 亲测可用!!!
1.下载Navicat Premium官网https://www.navicat.com.cn/下载最新版本下载安装 2.本人网盘链接:https://pan.baidu.com/s/1ncSaxId ...
- 资源:Navicat15最新版本破解 亲测可用(2020-11-14)
1.下载Navicat Premium 官网https://www.navicat.com.cn/下载最新版本下载安装 2.网盘下载破解 本人网盘链接:https://pan.baidu.com/s/ ...
- Navicat15最新版本破解 亲测可用!!!(Navicat Premium 注册出现 No All Pattern Found! File Already Patched)
1.下载Navicat Premium官网https://www.navicat.com.cn/下载最新版本下载安装 2.本人网盘链接:https://pan.baidu.com/s/1ncSaxId ...
- 解决修改完系统默认python版本后yum不可用的问题!!!!!!
文章转自: http://www.linuxidc.com/Linux/2013-05/84727.htm #vi /usr/bin/yum 将文件头部的: #!/usr/bin/python 改为: ...
- VS2013个版本密钥(亲测可用)
Visual Studio Ultimate 2013 KEY(密钥):BWG7X-J98B3-W34RT-33B3R-JVYW9 Visual Studio Premium 2013 KEY(密钥) ...
- SQLyog 最新版本12.5-64bit 完美破解,亲测可用!
声明:本文只是提供一个网络上找到的针对12.5版本的注册码使用方式做一个说明,不建议企业用户破解,有条件的还是希望大家购买原版.当然个人学习用的但又不想购买原版的,这里只是提供个途径,请勿用做商业用途 ...
随机推荐
- typescript导入图片报找不到模块的错误
https://www.cnblogs.com/chen-cong/p/10445635.html images.d.ts: declare module '*.svg' declare module ...
- [精] UBOOT2017+FIT 启动流程详尽分析
开发环境:Nanopi-neo-plus2 软件版本:uboot-2017 软件版本:linux-4.14 买这个板子有一段时间了,并没有全身心的投入在上面,有时间了的话就搞一搞, 这篇随笔算是对这个 ...
- 页码0~N ,其中0,1....9都出现了几次
/* 这道题目可以暴力解答:对1~n的每个数进行从低位到高位分析 一旦这个数字num出现,a[num]++即可 第二种方法: 由0,1,...9组成的所有n位数,从n个0到n个9共10^n个数,0,1 ...
- PHP7之Trait详解
转自: https://www.jianshu.com/p/fc053b2d7fd1 php从以前到现在一直都是单继承的语言,无法同时从两个基类中继承属性和方法,为了解决这个问题,php出了Trait ...
- sqlserver 数据类型 C# clr 数据类型 映射
https://docs.microsoft.com/zh-cn/dotnet/framework/data/adonet/sql/linq/sql-clr-type-mapping#default- ...
- Go基础编程实践(一)—— 操作字符串
修剪空格 strings包中的TrimSpace函数用于去掉字符串首尾的空格. package main import ( "fmt" "strings" ) ...
- nginx静态文件不设置缓存
找到nginx安装目录下的nginx.conf文件,再nginx里面添加如下的内容 location / { add_header Cache-Control no-cache; add_header ...
- ubuntu Docker安装部署Rancher
一.Rancher简介 Rancher是一个开源的企业级容器管理平台.通过Rancher,企业再也不必自己使用一系列的开源软件去从头搭建容器服务平台.Rancher提供了在生产环境中使用的管理Dock ...
- 关于java中是引用传递还是值传递的问题
关于JAVA中参数传递问题有两种,一种是按值传递(如果是基本类型),另一种是按引用传递(如果是對象).首先以两个例子开始:1)public class Test2 { public static vo ...
- java之spring之配置讲解
首先目录结构如下: 1. User.java package cn.sxt.vo; import java.util.Date; public class User { private String ...