jonathanjordan21 commited on
Commit
0ccc722
·
1 Parent(s): 66e09ed

Update components/utils.py

Browse files
Files changed (1) hide show
  1. components/utils.py +24 -7
components/utils.py CHANGED
@@ -1,17 +1,18 @@
1
  from moviepy.editor import VideoFileClip, concatenate_videoclips,vfx
2
- from moviepy.editor import AudioFileClip, CompositeAudioClip
 
3
  import os
4
 
5
- def combine_videos(folder_name):
6
 
7
  length = len(os.listdir(folder_name))
8
 
9
  vids = [VideoFileClip(os.path.join(folder_name,x)) for x in sorted(os.listdir(folder_name))]
10
 
11
- print(vids, length)
12
 
13
  combined = concatenate_videoclips(
14
- [vid.subclip(0,7).fx(vfx.fadein,0.5).fx(vfx.fadeout,0.5) if vid.duration > 7 else vid.fx(vfx.fadein,0.5).fx(vfx.fadeout,0.5) for vid in vids],
15
  # [VideoFileClip(os.path.join(folder_name,x)).subclip(0,7).fx(vfx.fadein,0.5).fx(vfx.fadeout,0.5) for x in sorted(os.listdir(folder_name))],
16
  "compose",bg_color=None, padding=0
17
  )
@@ -25,10 +26,26 @@ def combine_videos(folder_name):
25
  # combined.write_videofile(os.path.join(folder_name, "Ad_Video.mp4"))
26
  print("Done! Your ads video has been created")
27
 
28
- def combine_audio_video(folder_name, vid, speech):
 
29
  videoclip = VideoFileClip(vid)
30
  audioclip = AudioFileClip(speech)
31
 
32
- new_audioclip = CompositeAudioClip([audioclip])
33
- videoclip.audio = new_audioclip
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
34
  videoclip.write_videofile(os.path.join(folder_name,"new_filename.mp4"))
 
1
  from moviepy.editor import VideoFileClip, concatenate_videoclips,vfx
2
+ from moviepy.editor import AudioFileClip, CompositeAudioClip, TextClip,
3
+ from moviepy.video.tools.subtitles import SubtitlesClip
4
  import os
5
 
6
+ def combine_videos(folder_name, length_speech):
7
 
8
  length = len(os.listdir(folder_name))
9
 
10
  vids = [VideoFileClip(os.path.join(folder_name,x)) for x in sorted(os.listdir(folder_name))]
11
 
12
+ print(vids, length, len(length_speech))
13
 
14
  combined = concatenate_videoclips(
15
+ [vid.subclip(0,ls).fx(vfx.fadein,0.5).fx(vfx.fadeout,0.5) if vid.duration > ls else vid.fx(vfx.fadein,0.5).fx(vfx.fadeout,0.5) for vid, ls in zip(vids, length_speech)],
16
  # [VideoFileClip(os.path.join(folder_name,x)).subclip(0,7).fx(vfx.fadein,0.5).fx(vfx.fadeout,0.5) for x in sorted(os.listdir(folder_name))],
17
  "compose",bg_color=None, padding=0
18
  )
 
26
  # combined.write_videofile(os.path.join(folder_name, "Ad_Video.mp4"))
27
  print("Done! Your ads video has been created")
28
 
29
+
30
+ def combine_audio_video(folder_name, vid, speech, sentences, length_speech):
31
  videoclip = VideoFileClip(vid)
32
  audioclip = AudioFileClip(speech)
33
 
34
+ generator = lambda txt: TextClip(txt, font='Arial', fontsize=24, color='white')
35
+ # subs = [((0, 4), 'subs1'),
36
+ # ((4, 9), 'subs2'),
37
+ # ((9, 12), 'subs3'),
38
+ # ((12, 16), 'subs4')]
39
+
40
+ ls = [0] + length_speech
41
+ subs = [ ( (ls[i],ls[i+1]), sub) for i,sub in enumerate(sentences)]
42
+
43
+ subtitles = SubtitlesClip(subs, generator)
44
+
45
+
46
+ videoclip = CompositeVideoClip([videoclip, subtitles.set_pos(('center','bottom'))])
47
+
48
+ # new_audioclip = CompositeAudioClip([audioclip])
49
+ # videoclip.audio = new_audioclip
50
+ videoclip_audio = CompositeAudioClip([audioclip])
51
  videoclip.write_videofile(os.path.join(folder_name,"new_filename.mp4"))