def label_clip(video_path, label, start_second, end_second): clip = VideoFileClip(video_path) text_clip = TextClip(label, fontsize=40, color='white', bg_color='red') text_clip = text_clip.set_pos(('center', 'bottom')) text_clip = text_clip.set_start(start_second).set_duration(end_second - start_second) return CompositeVideoClip([clip, text_clip])
(','.join(map(str, [s + 1 for s in override_only_scene])))) print('using audio %s' % INPUT_AUDIO) print('using onsets %s' % INPUT_ONSETS) # setup the frame generator frame_gen = VideoFrameGenerator(SCENES, onset_frame_ampl) gen_clip = VideoClip(lambda t: frame_gen.make_video_frame(t), duration=duration) # setup intro text introtext = "kiriloff – fortschritt" introtext_clip = TextClip(introtext, color='white', font='Menlo-Bold', fontsize=20 if gen_clip.size[0] <= 640 else 45, method='caption', size=(frame_gen.w, frame_gen.h)) # create full clip as composite of generate frames and intro text main_clip = CompositeVideoClip([ gen_clip, introtext_clip.set_start(0.5).set_end(6.5).crossfadein(0.5).crossfadeout( 0.5) ]) # generate frames main_clip = main_clip.set_audio(audioclip).set_duration(gen_clip.duration) main_clip.write_videofile(OUTPUT_VIDEO, fps=CLIP_FPS) print('done.')