zoukankan      html  css  js  c++  java
  • python截取视频制作动态表情包+文字

    1:安装moviepy库

     2:安装IPython库

     代码如下:

    from moviepy.editor import *
    from IPython.display import Image
    
    
    def Base(path="2.mp4", duration=((0, 4.8), (0, 6.3)), savepath=r"out11.gif"):
        VideoFileClip(path).
            subclip(duration[0], duration[1]).
            speedx(0.3).
            resize(0.5).
            write_gif(savepath, fps=10, program="ffmpeg")
    
    # 截取想要的部分的小姐姐图像
    def SecondLevel(path="2.mp4", duration=((0, 4.8), (0, 6.3)), savepath="out1.gif", region=(0, 0, 540, 480)):
        VideoFileClip(path).
            subclip(duration[0], duration[1]).
            crop(x1=region[0], y1=region[1], x2=region[2], y2=region[3]).
            speedx(0.3).
            resize(0.5).
            write_gif(savepath, fps=10, program="ffmpeg")
    
    
    def ThirdLevel(path="2.mp4", duration=((0, 4.8), (0, 6.3)), savepath="out2.gif", region=(0, 0, 540, 480), text="菜鸟学python"):
        video = VideoFileClip(path). 
            subclip(duration[0], duration[1]). 
            crop(x1=region[0], y1=region[1], x2=region[2], y2=region[3]). 
            speedx(0.3). 
            resize(0.5)
        # 创建文字
        text = TextClip(text, fontsize=20, color='white', interline=25, font="FangSong")
            .set_position((2,1)).
            set_duration(video.duration)
        compose = CompositeVideoClip([video, text])
        compose.write_gif(savepath, program="ffmpeg")
    
    
    if __name__ == '__main__':
       ThirdLevel()

    代码解析

    这里运行会报一个错误:

     解决办法:https://blog.csdn.net/kd_2015/article/details/80157713  此文章又详细的解决步骤,我就不再记录了

    然后重新运行你的代码,生成新的图片就是你需要的动态表情包加文字了

  • 相关阅读:
    赋值问题
    构造方法的作用
    this的使用
    三目运算符和形参的使用
    构造方法作用:给所有对象进行相同的初始化操作
    成员变量和局部变量
    相关开发的书籍名汇集
    html ---- web sql 例子
    让input表单输入框不记录输入过信息的方法
    css实现两端对齐的3种方法
  • 原文地址:https://www.cnblogs.com/huny/p/13090572.html
Copyright © 2011-2022 走看看