《ffmpeg basics》中文版 -- 7.翻转和旋转视频

7.翻转和旋转视频

​ 对视频帧进行翻转和旋转是很常见的视觉操作,它可以创建一些有趣的效果,比如把输入文件作出一个镜像对称的版本。

水平翻转

​ 我们使用 hflip filter 执行水平翻转操作,其详细描述如下:

在这里插入图片描述

​ 对 testsrc 进行水平翻转,命令如下:

ffplay -f lavfi -i testsrc -vf hflip

在这里插入图片描述

垂直翻转

​ 我们使用 vflip filter 执行垂直翻转操作,其详细描述如下:

在这里插入图片描述

​ 下面左侧的图是一个 rgbrestsrc 模式(在第25章节中描述),想要获得它的垂直翻转的版本,我们的命令如下:

ffplay -f lavfi -i rgbtestsrc -vf vflip

在这里插入图片描述

旋转介绍

​ 在之前版本的FFmpeg中,有 rotate filter 可旋转视频,它可以按照传入的任意角度值来进行旋转操作。这个 filter 现在已经废弃,转而使用名为 transpose filter 的过滤器,它仅有有限的选项可以使用,其详细描述如下:

在这里插入图片描述

  • 0 :逆时针方向旋转90度,然后垂直翻转
  • 1:顺时针方向旋转90度
  • 2:逆时针方向旋转90度
  • 3:顺时针方向旋转90度,然后垂直翻转

​ 请注意,0 和 3 选项对视频帧同时做了两个操作:旋转和垂直翻转。这意味着,以下两条命令的结果是一样的:

ffmpeg -f lavfi -i samtebars -vf transpose=0
ffmpeg -f lavfi -i samtebars -vf transpose=2,vflip

​ 类似的,3 选项也是两个 filter 效果的结合,下面的命令效果也相同:

ffmpeg -f lavfi -i samtebars -vf transpose=3
ffmpeg -f lavfi -i samtebars -vf transpose=1,vflip

​ transpose的每个取值都会在接下来说明。

逆时针旋转90度然后垂直翻转

​ 对 transpose filter 取值为 0 时,就是这样的效果:

ffmpeg -i CMYK.avi -vf transpose=0 CMYK_transposed.avi

在这里插入图片描述

顺时针旋转90度

​ 对 transpose filter 取值为 1 时,就是这样的效果:

ffmpeg -i CMYK.avi -vf transpose=1 CMYK_transposed.avi

在这里插入图片描述

逆时针旋转90度

​ 对 transpose filter 取值为 2 时,就是这样的效果:

ffmpeg -i CMYK.avi -vf transpose=2 CMYK_transposed.avi

在这里插入图片描述

顺时针旋转90度然后垂直翻转

​ 对 transpose filter 取值为 3 时,就是这样的效果:

ffmpeg -i CMYK.avi -vf transpose=3 CMYK_transposed.avi

ranspose filter 取值为 3 时,就是这样的效果:

ffmpeg -i CMYK.avi -vf transpose=3 CMYK_transposed.avi

在这里插入图片描述

H&A
发布了7 篇原创文章 · 获赞 4 · 访问量 827

猜你喜欢

转载自blog.csdn.net/qq_34305316/article/details/102881045