A collection of MoviePy scripts for one-off / recurring tasks
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.5 KiB

  1. #!/bin/python3
  2. import moviepy.editor as mp
  3. COMPILATION_CLIP = "../autohighlights/test.mkv"
  4. LOGO = "/home/robert/downloads/ror2_logo_512-1.png"
  5. def blur(img):
  6. from skimage.filters import gaussian
  7. return gaussian(img.astype(float), sigma=1.5)
  8. def blur_more(img):
  9. from skimage.filters import gaussian
  10. return gaussian(img.astype(float), sigma=3.5)
  11. mainclip = mp.VideoFileClip(COMPILATION_CLIP, audio=True)
  12. mainclip = mainclip.volumex(0.1)
  13. mainclip = mainclip.fx(mp.vfx.speedx, 1.3)
  14. mainclip = mainclip.fl_image(blur)
  15. logoclip = mp.ImageClip(LOGO)
  16. textclip = mp.TextClip("Risk of Rain 2 Prerelease",
  17. font="RiskofRainFont-Regular",
  18. fontsize=85,
  19. color="#e0e0e0",
  20. stroke_color="#1a1a1a",
  21. stroke_width=2)
  22. textclip2 = mp.TextClip("Risk of Rain 2 Prerelease",
  23. font="RiskofRainFont-Regular",
  24. fontsize=86,
  25. color='#101010')
  26. textclip = textclip.set_duration(mainclip.duration)
  27. logoclip = logoclip.set_duration(mainclip.duration)
  28. composite = mp.CompositeVideoClip(
  29. [mainclip.fadein(0.5).fadeout(0.5),
  30. logoclip.set_position((0.7, 0.8), relative=True),
  31. textclip.set_position((0.05, 0.05), relative=True)])
  32. # composite.preview()
  33. composite.write_videofile("ror2_prerelease_intro.mkv", codec="libx264",
  34. audio_codec="aac")
  35. # ffmpeg_params=["-crf", "20"], codec="h264")