接着介绍视频画面的旋转缩放和镜像,即几何变换。用视频对象的fx方法实现视频画面的几何变换。
进行旋转变换时,设置fx方法的第1个参数的值为vfx.rotate,用angle参数设置逆时针方向旋转的角度;进行缩放变换时,设置第1个参数的值为vfx.resize,用newsize参数设置缩放的比例,值大于1时放大,介于0到1之间时缩小;进行镜像变换,第1个参数的值设置为vfx.mirror_x时进行垂直镜像变换,设置为vfx.mirror_y时进行水平镜像变换。
下面的代码打开指定的视频,实现视频画面的几何变换,并保存到指定文件。
code.python
>>> from moviepy.editor import *
>>> mv=VideoFileClip('D:\\leaves.mp4')
>>> mv2=mv.fx(vfx.rotate,angle=90) #旋转
>>> mv2.write_videofile('D:\\rotate.mp4')
>>> mv3=mv.fx(vfx.resize,newsize=2) #放大
>>> mv3.write_videofile('D:\\resize1.mp4')
>>> mv4=mv.fx(vfx.resize,newsize=0.5) #缩小
>>> mv4.write_videofile('D:\\resize2.mp4')
>>> mv5=mv.fx(vfx.mirror_x) #垂直镜像
>>> mv5.write_videofile('D:\\mirrorx.mp4')
>>> mv6=mv.fx(vfx.mirror_y) #水平镜像
>>> mv6.write_videofile('D:\\mirrory.mp4')