如何在使用moviepy使用django保存时为视频文件添加水印

问题描述

完成:带水印的视频
流程如下:

  1. 使用 user、video_file、upload_date 字段创建一个 models.py
  2. 创建一个 forms.py 以接受带有验证的 video_file
  3. 最后使用 views.py 链接文件并在上传视频时处理水印过程。

这是我的views.py

def upload_video(request):
    if request.method == "POST":
        form = VideoUploaderForm(
            data    =   request.POST,files   =   request.FILES,)

        if form.is_valid():
            obj = form.save(commit = False)
            vid = request.FILES['video_file']
            clip = VideoFileClip(vid.temporary_file_path())
            #watermark
            video   = VideoFileClip(clip)
            logo    = (ImageClip(logo_PATH)
                    .set_duration(video.duration)
                    .resize(height=50)
                    .margin(right=8,top=8,opacity=0)
                    .set_pos(("center","bottom")))
            final_  = CompositeVideoClip([video,logo])
            final_.write_videofile("watermarked.mp4")
            obj.save()
            return redirect(page_to_load)
    else:
        form=VideoUploaderForm()
    return render(request,'page.html',{"form":form})

引用我也想给视频添加logo,可以是简单的PNG图片

我得到的错误 'VideoFileClip' object has no attribute 'endswith'

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...