我是靠谱客的博主 飞快百合,最近开发中收集的这篇文章主要介绍ffmpeg_Cropping Video(剪裁视频)1.Cropping Basics2.Cropping frame center3.Automatic detection of crop area4.Cropping of timmer,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1.Cropping Basics

老版本的ffmpeg有bottom, left, right, top选项,但是现在已经被废弃了,而改用crop filter来进行描述。



值ow可从oh中得到,反之亦然,但是不可以从x和y中得到,因为x和y是从ow和oh中推断出来的。值x可从y中获取,反之亦然。比如:剪切输入帧的左第三,中第三,右第三,可以用下面的命令。

ffmpeg -i input -vf crop=iw/3:ih:0:0 output

ffmpeg -i input -vf crop=iw/3:ih:iw/3:0 output

ffmpeg -i input -vf crop=iw/3:ih:iw/3*2:0 output



2.Cropping frame center

当我们想剪裁帧的中间区域的时候,crop filter可以不使用x和y参数。默认的x和y是:



这就意味着剪切区域就在输入帧的中间位置。剪切语法如下:

ffmpeg -i input_file -vf crop=w:h out_file

剪切中间的一般帧,用命令:

ffmpeg -i input.avi -vf crop=iw/2:ih/2 output.avi



3.Automatic detection of crop area

为了探索一个非黑的区域,我们可以使用cropdetect filter。此自动剪切对于输入帧中包含一些黑色区域的情况非常有用,通常用于分辨率在4:3和16:9之间切换的时候。



limit参数描述了多少的黑色颜色被使用,0意味着全部的黑色都被剪切掉。下面是一个例子:

ffmpeg -i input.mpg -vf cropdetect=limit=0 output.mp4


4.Cropping of timmer

播放器一般都有一个进度条,能切换跳过多少时间等。但是大部分的实现是鼠标先拖动一段时间才能进行显示。ffmpeg有一个testsrc视频源包含一个timer,可以用下面的命令看到。

ffplay -f lavfi -i testsrc


testsrc默认是320*240pixels,并且里面的计时的数字有29*52像素,位置是从左上角为水平256像素,垂直94像素,为了剪切这个数字区域,我们可以用下面的命令。

ffmpeg -f lavfi -i testsrc -vf crop=29:52:256:94f -t 10 timer1.mpg



然后我们想用这个命令创建定时器显示多个数字,filter的描述和可以持续显示的时间都在下面表内:


如果我们想要高于52像素的数字,可以使用下面的命令:

ffplay -f lavfi -i testsrc=size=vga,然后就可以尝试上面表格中的命令。



尝试改变数字的颜色,可以使用lut filter,会在Color Correction章节进行介绍。





最后

以上就是飞快百合为你收集整理的ffmpeg_Cropping Video(剪裁视频)1.Cropping Basics2.Cropping frame center3.Automatic detection of crop area4.Cropping of timmer的全部内容,希望文章能够帮你解决ffmpeg_Cropping Video(剪裁视频)1.Cropping Basics2.Cropping frame center3.Automatic detection of crop area4.Cropping of timmer所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(65)

评论列表共有 0 条评论

立即
投稿
返回
顶部