FFmpegAndroid开发经验谈程序员

每天一点FFmpeg(3)

2017-07-13  本文已影响271人  maimingliang

FFmpeg命令系列

在Mac下编译 FFmpeg ,并在Android中使用
每天一点FFmpeg(1)
每天一点FFmpeg(2)
每天一点FFmpeg(3)
每天一点FFmpeg(4)
每天一点FFmpeg(5)
每天一点FFmpeg(6)

裁剪视频

从输入的视频文件截取你想要的矩形区域到输出视频。通常用来处理视频的黑边。
命令:
-vf crop =ow[:oh[:x[:y]]]
参数说明:
ow:输出视频文件的宽度
oh:输出视频文件的高度
x,y:从(x,y)坐标点开始裁剪

图示说明:

008.png

举例:

剪辑输入视频的的左三分之一,中间三分之一,右边三分之一。
ffmpeg -y -i demo.mp4 -vf crop=iw/3:ih: 0:0 demo-crop-l.mp4

ffmpeg -y -i demo.mp4 -vf crop=iw/3:ih: iw/3:0 demo-crop-c.mp4

ffmpeg -y -i demo.mp4 -vf crop=iw/3:ih: iw/3*2:0 demo-crop-r.mp4

运行效果,截取其中一帧图片对比:

009.png

视频填充

在输入视频文件添加一块额外的区域到输出视频。通常处理显示不同的横纵比。

命令:-vf pad=ow:[:oh[:x[:y][:color]]]

参数说明:
ow:输出视频文件的宽度(填充宽度+源视频宽度(iw)) 必须 > iw
oh:输出视频文件的高度(填充高度+源视频高度(ih))必须 > ih
x,y:从(x,y)坐标点开始填充(经测试,只能正值)
color:填充颜色

举例:

用30个像素的粉色包围整个视频

ffmpeg -y -i demo.mp4 -vf pad=iw+60:ih+60:30:30:pink

效果:

1000.png

改变视频的横纵比

4:3到16:9

ffmpeg -y -i dem0.mp4 -aspect 1.7777 demo-16_9.mp4

16:9到4:3

ffmpeg -y -i dem0.mp4 -aspect 1.3333 demo-4_3.mp4

说明:-aspect 设置横纵比 4:3为1.3333 16:9为1.7777

旋转

使用的参数选项为 transpose
transpose={0,1, 2,3}
0:逆时针旋转90度然后垂直翻转
1:顺时针旋转90度
2:逆时针旋转90度
3:顺时针旋转90度然后水平翻转

水平翻转(Horizontal flip)

-vf hfilp

竖直翻转(Vertical flip)

-vf vfilp

举例:
ffmpeg -y -i dem0.mp4 -vf transpose=1 demo-roate.mp4

ffmpeg -y -i dem0.mp4 -vf hfilp demo-hfilp.mp4

ffmpeg -y -i dem0.mp4 -vf vfilp demo-vfilp .mp4

上一篇 下一篇

猜你喜欢

热点阅读