有趣的python- 为视频加水印
#!/usr/bin/env python
# _*_ coding:utf-8 _*_
# DevVersion: Python3.6.8
# Date: 2020-09-13 21:59
# Author: SunXiuWen
# PyCharm|moviepy_test
import os
import threading
import moviepy.editor as mp
# 本地视频位置
def get_video_list(file_path):
dirs = os.listdir(file_path)
video_list = []
for i in dirs:
if i.endswith('mp4'):
# path = os.path.join(file_path, os.sep, i)
path = file_path + r'/' + i
print(path)
video_list.append(path)
return video_list, dirs
def dis_video(args, kw):
# 创建对象
video = mp.VideoFileClip(args)
# 准备log图片
logo = (
mp.ImageClip(r"E:\head.jpg") # 图片必须是rgb解析成3个值才行,不然报错
.set_duration(video.duration) # 水印持续时间
.resize(height=100) # 水印的高度,会等比缩放
# .margin(left=0, right=0, top=0, opacity=1.0) # 水印的边距与透明度
.set_pos(('left', 'center'))) # 水印的位置
final = mp.CompositeVideoClip([video, logo])
# 文件存放的路劲及文件名 mp4文件默认用libx264编码,比特率单位bps
final.write_videofile(f"E:/save_video/{kw}")
def main():
path_ = r'E:/video_dir'
v_list, d_list = get_video_list(path_)
video_list_dir_list = zip(v_list, d_list)
for j in video_list_dir_list:
print(j)
dis_video(*j)
# t = threading.Thread(target=dis_video, args=j)
# t.start()
if __name__ == '__main__':
main()
人生苦短,我用python!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具