@ -8,12 +8,18 @@ from moviepy.editor import (
CompositeVideoClip ,
)
from utils . console import print_step
from dotenv import load_dotenv
import os
W , H = 1080 , 1920
def make_final_video ( number_of_clips ) :
# Calls opacity from the .env
load_dotenv ( )
opacity = os . getenv ( ' OPACITY ' )
print_step ( " Creating the final video... " )
VideoFileClip . reW = lambda clip : clip . resize ( width = W )
VideoFileClip . reH = lambda clip : clip . resize ( width = H )
@ -24,6 +30,11 @@ def make_final_video(number_of_clips):
. resize ( height = H )
. crop ( x1 = 1166.6 , y1 = 0 , x2 = 2246.6 , y2 = 1920 )
)
try :
float ( os . getenv ( " OPACITY " ) )
except :
print ( f " Please ensure that OPACITY is set between 0 and 1 in your .env file " )
configured = False
# Gather all audio clips
audio_clips = [ ]
for i in range ( 0 , number_of_clips ) :
@ -39,14 +50,16 @@ def make_final_video(number_of_clips):
ImageClip ( f " assets/png/comment_ { i } .png " )
. set_duration ( audio_clips [ i + 1 ] . duration )
. set_position ( " center " )
. resize ( width = W - 100 ) ,
. resize ( width = W - 100 )
. set_opacity ( float ( opacity ) ) ,
)
image_clips . insert (
0 ,
ImageClip ( f " assets/png/title.png " )
. set_duration ( audio_clips [ 0 ] . duration )
. set_position ( " center " )
. resize ( width = W - 100 ) ,
. resize ( width = W - 100 )
. set_opacity ( float ( opacity ) ) ,
)
image_concat = concatenate_videoclips ( image_clips ) . set_position (
( " center " , " center " )