如何用FFmpeg实现视频四方向旋转与水平翻转?
使用FFmpeg实现视频旋转+水平镜像翻转
以下是针对四个旋转角度,结合水平镜像翻转的FFmpeg实用命令,核心通过-vf参数组合transpose(旋转)和hflip(水平翻转)滤镜实现:
1. 0°旋转(原方向)+ 水平镜像翻转
直接应用水平翻转滤镜即可:
ffmpeg -i input.mp4 -vf "hflip" -c:a copy output_0deg_flip.mp4
2. 90°顺时针旋转 + 水平镜像翻转
先顺时针旋转90度,再执行水平翻转:
ffmpeg -i input.mp4 -vf "transpose=1,hflip" -c:a copy output_90deg_flip.mp4
注:
transpose=1代表顺时针旋转90°,滤镜按逗号分隔的顺序依次执行
3. 180°旋转 + 水平镜像翻转
两种方式效果一致,任选其一即可:
# 方式1:先旋转180°再水平翻转 ffmpeg -i input.mp4 -vf "rotate=180,hflip" -c:a copy output_180deg_flip.mp4 # 方式2:180°旋转+水平翻转等价于仅垂直翻转(简化写法) ffmpeg -i input.mp4 -vf "vflip" -c:a copy output_180deg_flip.mp4
4. 270°顺时针旋转(即90°逆时针)+ 水平镜像翻转
先逆时针旋转90度,再执行水平翻转:
ffmpeg -i input.mp4 -vf "transpose=2,hflip" -c:a copy output_270deg_flip.mp4
注:
transpose=2代表逆时针旋转90°
额外提示
-c:a copy表示直接复制原音频流,避免重新编码以节省时间;若需调整音频编码可移除该参数- 此前命令仅旋转不翻转,大概率是未正确组合两个滤镜或滤镜顺序错误,务必用逗号分隔多个滤镜
- 可添加
-crf 23参数(数值越小质量越高)控制输出视频的编码质量
内容的提问来源于stack exchange,提问作者Tarsila Costalonga
相关产品推荐
相关产品推荐

