MoviePy视频添加水印--python实现

本文介绍了如何使用Python库MoviePy为视频添加图像和文字水印。通过示例代码详细展示了如何设置水印的位置、大小、持续时间,并提供了Ubuntu环境下安装ImageMagick的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

不点赞关注白嫖的都是流氓

MoviePy视频添加水印–python实现

视频添加图像水印demo

import moviepy.editor as mp

# 视频
video = mp.VideoFileClip("/home/huangjx/视频/heng_5_sec.mp4")

# 水印
logo = (mp.ImageClip("/home/huangjx/图片/test.jpg")
        # 水印持续时间
        .set_duration(video.duration)
        # 水印高度,等比缩放
        .resize(height=300)
        # 水印的位置
        .set_pos(('left', 'top')))

output = mp.CompositeVideoClip([video, logo])
# 加上aac才有声音
output.write_videofile("/home/huangjx/视频/heng_5_sec.mp42.mp4", audio_codec="aac", codec="libx264")

视频添加文字水印demo

from moviepy.editor import *

# 本地视频位置
from moviepy.video.VideoClip import TextClip

# subclip视频截取开始时间和结束时间
video = VideoFileClip("/home/huangjx/视频/heng_5_sec.mp4")

# 制作文字,指定文字大小和颜色
txt_clip = (TextClip("My Holidays 2020")
            .set_position(lambda t: (150*t, 50*t))  # 随着时间移动
            .set_duration(video.duration))  # 水印持续时间

result = CompositeVideoClip([video, txt_clip])  # 在视频上覆盖文本
result.write_videofile("/home/huangjx/视频/heng_5_sec.mp43.mp4", fps=25)  # fps:视频文件中每秒的帧数

里面的函数选项具有很大的调节性,建议自己进入源码进行查询尝试并且使用

logo = (mp.ImageClip("/home/huangjx/图片/test.jpg")
        # 水印持续时间
        .set_duration(video.duration)
        # 水印高度,等比缩放
        .resize(height=300)
        # 水印的位置
        .set_pos(('left', 'top')))
# 制作文字,指定文字大小和颜色
txt_clip = (TextClip("My Holidays 2020")
            .set_position(lambda t: (150*t, 50*t))  # 水印内容居中
            .set_duration(video.duration))  # 水印持续时间

例如水印的位置,它涉及到水印的浮动问题。水印的大小,水印的颜色、水印的字体、水印的背景颜色等等。

安装ImageMagick

值得说明的一点是,给视频添加文字水印的时候,会要求你给机器安装ImageMagick,我这里举例ubuntu18安装ImageMagick,对于windows,我会给出参考链接https://imagemagick.org/script/install-source.php。

首先从官方仓库克隆代码

git clone https://github.com/ImageMagick/ImageMagick.git

官方克隆的网速会非常非常慢,所以我提供下面的国内码云链接

git clone https://gitee.com/hjx840694/ImageMagick.git

然后

cd ImageMagick/

然后

./configure --with-modules

然后

sudo make install

然后

sudo ldconfig /usr/local/lib/

然后

/usr/local/bin/convert logo: logo.gif

到这一步如果没有报错,说明安装完成,最后我们再测试一次

make check

我不想解释每一步都做了些什么,你只需要知道,这样做就可以安装好ImagesMagics就行。因为有些人就算解释了也看不懂啥意思,反而更加感觉到复杂。

安装之后,你再使用视频添加文字水印的demo应该就没问题啦

到此,完结。不点赞关注白嫖的都是流氓

以下是使用MoviePy视频添加水印的步骤: 1. 导入MoviePy库和所需的字体文件 ```python from moviepy.editor import * from moviepy.video.tools.subtitles import SubtitlesClip # 导入所需的字体文件 FONT_PATH = 'path/to/font.ttf' ``` 2. 加载视频水印图片 ```python # 加载视频 video = VideoFileClip('path/to/video.mp4') # 加载水印图片 watermark = ImageClip('path/to/watermark.png') ``` 3. 调整水印大小和位置 ```python # 调整水印大小 watermark = watermark.resize(height=50) # 调整水印位置 watermark = watermark.set_position(('right', 'bottom')) ``` 4. 将水印添加视频上 ```python # 将水印添加视频上 video_with_watermark = CompositeVideoClip([video, watermark]) ``` 5. 导出带有水印视频 ```python # 导出带有水印视频 video_with_watermark.write_videofile('path/to/output.mp4') ``` 完整代码示例: ```python from moviepy.editor import * from moviepy.video.tools.subtitles import SubtitlesClip # 导入所需的字体文件 FONT_PATH = 'path/to/font.ttf' # 加载视频 video = VideoFileClip('path/to/video.mp4') # 加载水印图片 watermark = ImageClip('path/to/watermark.png') # 调整水印大小 watermark = watermark.resize(height=50) # 调整水印位置 watermark = watermark.set_position(('right', 'bottom')) # 将水印添加视频上 video_with_watermark = CompositeVideoClip([video, watermark]) # 导出带有水印视频 video_with_watermark.write_videofile('path/to/output.mp4') ```
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值