前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >moviepy,短视频生成

moviepy,短视频生成

作者头像
福贵
发布2021-01-08 15:33:49
1.7K0
发布2021-01-08 15:33:49
举报
文章被收录于专栏:合集合集

moviepy

moviepy是一个用于视频编辑的python模块,能够实现基本的操作,比如视频的裁剪,拼接,插入标题等等 甚至还自带了一些高级的特效,以后再说。当然,gif格式的读写也在其内。

简单说,moviepy可以作为服务端的视频处理,在服务端完成简单的处理,流水线工作。而且考虑到实际上所有的视频处理最后都追踪到 底层的数据处理,理论上知晓视频处理的原理,可以完成甚至开发新的功能。

pip安装

pip install moviepy即可完成安装

opencv

opencv也是我们最常用的视频读写库,但是opencv很明显,不太适合简单的视频剪辑,而更适合视频处理的用户,比如完成运动目标检测,运动目标跟踪等等。

基本使用

代码语言:javascript
复制
import random

from moviepy import editor


def merge_music_video(video, audio):
    return video.set_audio(audio)  # 返回用audio代替背景声的video


clip = editor.VideoFileClip('./origin/1.mp4')  # 读取视频
todo = clip.subclip(0, 5)  # 截取视频的前5秒
time_length = clip.duration  # 拿到视频的时长
count_length = int(time_length / 10)  # 以10秒为间隔,拿到全视频10s为片段的数量
count_list = range(0, count_length)  # 生成列表
random_list = random.sample(count_list, 9)  # 从列表中随机选取9个,共计90s

bg_audio = editor.AudioFileClip('./bg-music/1.mp3')  # 读取音乐
for item in random_list:
    todo = editor.concatenate_videoclips([todo, clip.subclip(item * 10, item * 10 + 10)])  # concatenate拼接两个视频
# todo=merge_music_video(todo,bg_audio)
todo.write_videofile('./output/1.mp4', threads=16)  # 以16个线程保存视频

这将是一个有趣的东西,计划完成到自动生成营销短视频的程度!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-01-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python与MySQL 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • moviepy
    • pip安装
      • opencv
        • 基本使用
        相关产品与服务
        媒体处理
        媒体处理(Media Processing Service,MPS)是一种云端音视频处理服务。基于腾讯多年音视频领域的深耕,为您提供极致的编码能力,大幅节约存储及带宽成本、实现全平台播放,同时提供视频截图、音视频增强、内容理解、内容审核等能力,满足您在各种场景下对视频的处理需求。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档