def test_rotate(): clip = get_test_video() clip1 = rotate(clip, 90) # rotate 90 degrees assert clip1.size == (clip.size[1], clip.size[0]) clip1.write_videofile(os.path.join(TMP_DIR, "rotate1.webm")) clip2 = rotate(clip, 180) # rotate 90 degrees assert clip2.size == tuple(clip.size) clip2.write_videofile(os.path.join(TMP_DIR, "rotate2.webm")) clip3 = rotate(clip, 270) # rotate 90 degrees assert clip3.size == (clip.size[1], clip.size[0]) clip3.write_videofile(os.path.join(TMP_DIR, "rotate3.webm")) clip4 = rotate(clip, 360) # rotate 90 degrees assert clip4.size == tuple(clip.size) clip4.write_videofile(os.path.join(TMP_DIR, "rotate4.webm")) clip5 = rotate(clip, 50) clip5.write_videofile(os.path.join(TMP_DIR, "rotate5.webm")) # Test rotate with color clip clip = ColorClip([600, 400], [150, 250, 100]).set_duration(1).set_fps(5) clip = rotate(clip, 20) clip.write_videofile(os.path.join(TMP_DIR, "color_rotate.webm")) close_all_clips(locals())
def test_rotate(angle_offset): # Run several times to ensure that adding 360 to rotation angles has no effect clip = BitmapClip([["AAAA", "BBBB", "CCCC"], ["ABCD", "BCDE", "CDEA"]]).set_fps(1) clip1 = rotate(clip, 0 + angle_offset) target1 = BitmapClip([["AAAA", "BBBB", "CCCC"], ["ABCD", "BCDE", "CDEA"]]).set_fps( 1 ) assert clip1 == target1 clip2 = rotate(clip, 90 + angle_offset) target2 = BitmapClip( [["ABC", "ABC", "ABC", "ABC"], ["DEA", "CDE", "BCD", "ABC"]] ).set_fps(1) assert clip2 == target2, clip2.to_bitmap() clip3 = rotate(clip, 180 + angle_offset) target3 = BitmapClip([["CCCC", "BBBB", "AAAA"], ["AEDC", "EDCB", "DCBA"]]).set_fps( 1 ) assert clip3 == target3 clip4 = rotate(clip, 270 + angle_offset) target4 = BitmapClip( [["CBA", "CBA", "CBA", "CBA"], ["CBA", "DCB", "EDC", "AED"]] ).set_fps(1) assert clip4 == target4
def Rotate180( path='C:/Users/hp/PycharmProjects/Editor_de_Videos/Videos Invertidos/' ): print('Your videos are being rotated...') directory = os.listdir(path) for clip in directory: vid_file = VideoFileClip(path + clip) rotate(vid_file, 180).write_videofile(clip)
def generate(self, avatars, text, usernames, kwargs): name = uuid.uuid4().hex + '.gif' @after_this_request def remove(response): # pylint: disable=W0612 try: os.remove(name) except (FileNotFoundError, OSError, PermissionError): pass return response clip = VideoFileClip("assets/kowalski/kowalski.gif") text = TextClip(text, fontsize=36, method='caption', size=(245, None), align='West', color='black', stroke_color='black', stroke_width=1, font='Verdana').set_duration(clip.duration) text = text.set_position((340, 65)).set_duration(clip.duration) text = rotate(text, angle=10, resample='bilinear') video = CompositeVideoClip([clip, text]).set_duration(clip.duration) video.write_gif(name) clip.close() video.close() return send_file(name, mimetype='image/gif')
def test_rotate(): clip = VideoFileClip("media/big_buck_bunny_432_433.webm") clip1 = rotate(clip, 90) # rotate 90 degrees assert clip1.size == (clip.size[1], clip.size[0]) clip1.write_videofile(os.path.join(TMP_DIR, "rotate1.webm")) clip2 = rotate(clip, 180) # rotate 90 degrees assert clip2.size == tuple(clip.size) clip2.write_videofile(os.path.join(TMP_DIR, "rotate2.webm")) clip3 = rotate(clip, 270) # rotate 90 degrees assert clip3.size == (clip.size[1], clip.size[0]) clip3.write_videofile(os.path.join(TMP_DIR, "rotate3.webm")) clip4 = rotate(clip, 360) # rotate 90 degrees assert clip4.size == tuple(clip.size) clip4.write_videofile(os.path.join(TMP_DIR, "rotate4.webm"))
def test_rotate(): clip = VideoFileClip("media/big_buck_bunny_432_433.webm") clip1=rotate(clip, 90) # rotate 90 degrees assert clip1.size == (clip.size[1], clip.size[0]) clip1.write_videofile(os.path.join(TMP_DIR, "rotate1.webm")) clip2=rotate(clip, 180) # rotate 90 degrees assert clip2.size == tuple(clip.size) clip2.write_videofile(os.path.join(TMP_DIR, "rotate2.webm")) clip3=rotate(clip, 270) # rotate 90 degrees assert clip3.size == (clip.size[1], clip.size[0]) clip3.write_videofile(os.path.join(TMP_DIR, "rotate3.webm")) clip4=rotate(clip, 360) # rotate 90 degrees assert clip4.size == tuple(clip.size) clip4.write_videofile(os.path.join(TMP_DIR, "rotate4.webm"))
def test_rotate(): clip = get_test_video() clip1 = rotate(clip, 90) # rotate 90 degrees assert clip1.size == (clip.size[1], clip.size[0]) clip1.write_videofile(os.path.join(TMP_DIR, "rotate1.webm")) clip2 = rotate(clip, 180) # rotate 90 degrees assert clip2.size == tuple(clip.size) clip2.write_videofile(os.path.join(TMP_DIR, "rotate2.webm")) clip3 = rotate(clip, 270) # rotate 90 degrees assert clip3.size == (clip.size[1], clip.size[0]) clip3.write_videofile(os.path.join(TMP_DIR, "rotate3.webm")) clip4 = rotate(clip, 360) # rotate 90 degrees assert clip4.size == tuple(clip.size) clip4.write_videofile(os.path.join(TMP_DIR, "rotate4.webm")) close_all_clips(locals())
def test_rotate(): clip = get_test_video() clip1 = rotate(clip, 90) # rotate 90 degrees assert clip1.size == (clip.size[1], clip.size[0]) clip1.write_videofile(os.path.join(TMP_DIR, "rotate1.webm")) clip2 = rotate(clip, 180) # rotate 90 degrees assert clip2.size == tuple(clip.size) clip2.write_videofile(os.path.join(TMP_DIR, "rotate2.webm")) clip3 = rotate(clip, 270) # rotate 90 degrees assert clip3.size == (clip.size[1], clip.size[0]) clip3.write_videofile(os.path.join(TMP_DIR, "rotate3.webm")) clip4 = rotate(clip, 360) # rotate 90 degrees assert clip4.size == tuple(clip.size) clip4.write_videofile(os.path.join(TMP_DIR, "rotate4.webm")) close_all_clips(locals())
def rotate_video(video_name, start_time=0, end_time=None, degree=0): clip = VideoFileClip(video_name) if not end_time: end_time = clip.duration clip = rotate(clip.subclip(start_time, end_time), degree) dot_index = video_name.rfind('.') cut_video_name = video_name[:dot_index] + '_{}_{}'.format( start_time, end_time) + video_name[dot_index:] clip.write_videofile(cut_video_name) return cut_video_name
def test_rotate_nonstandard_angles(): # Test rotate with color clip clip = ColorClip([600, 400], [150, 250, 100]).with_duration(1).with_fps(5) clip = rotate(clip, 20) clip.write_videofile(os.path.join(TMP_DIR, "color_rotate.webm"))