diff --git a/utils/video.py b/utils/video.py index 5566cd1..6b9866c 100644 --- a/utils/video.py +++ b/utils/video.py @@ -1,12 +1,15 @@ from __future__ import annotations from ast import Str import re +import math from typing import Tuple +from utils import settings from PIL import ImageFont, Image, ImageDraw, ImageEnhance from moviepy.video.VideoClip import VideoClip, ImageClip from moviepy.video.compositing.CompositeVideoClip import CompositeVideoClip +from moviepy.video.io.VideoFileClip import VideoFileClip class Video: @@ -56,3 +59,17 @@ class Video: # Overlay the img clip on the first video clip self.video = CompositeVideoClip([self.video, img_clip]) return self.video + + def add_overlay(self): + # Get duration for the entire video to place the overlay at the correct time + video_duration = self.video.duration + + overlayName = settings.config["settings"]["sub_overlay_name"] + + subOverlayClip = VideoFileClip((f"assets/subOverlay/{overlayName}.mov"), has_mask=True) + subOverlayClip.set_pos('center') + + placeTime = math.floor(video_duration - subOverlayClip.duration) - 3 + + self.video = CompositeVideoClip([self.video, subOverlayClip.set_start(placeTime)]) + return self.video \ No newline at end of file