FFmpeg- 常用的滤镜命令

这篇具有很好参考价值的文章主要介绍了FFmpeg- 常用的滤镜命令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

下面来熟悉一下常用的对视频操作的几个命令。这次需要完成的命令也包括在其中。 视频的画面大小的剪切(crop filter) 将输入的视频的帧,以左上角为坐标的原点,剪切成x,y坐标开始的指定大小。 语法:

# []包裹的选项是可选的
crop= ow[:oh[:x[:y[:keep_aspect]]]]
#example
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

简单的解释:

  • x,y :是偏移量。

  • ow,oh :是输出的宽和高。

  • iw ih :还可以使用来表示输入的宽和高

  • a: 表示比例 ,和 iw/ih 一样

如果想从中间开始剪切,命令就编程了

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

视频的Padding(应该是增加内边距)(pad filter)

给视频添加一个内边距。通常是视频需要在不同显示比例的画面中显示时,需要的命令。 语法:

#[]中的同样是可选的#坐标系与之前相同pad=width[:height[:x[:y[:color]]]]
#example
ffmpeg -i photo.jpg -vf pad=860:660:30:30:pink frame_photo.jpg

FFmpeg- 常用的滤镜命令

更常用的是将4:3的画面转换成16:9

# 如果不给color的话。默认将会是黑色的背景
# 将画面从4:3 切换成16:9
ffmpeg -i input -vf pad=ih*16/9:ih:(ow-iw)/2:0:color output
# 16:9 转换成 4:3
ffmpeg -i input -vf pad=iw:iw*3/4:0:(oh-ih)/2:color output

其实标准的公式如下

# ar是画面的比例。如果是增加画面的宽度,则是
ffmpeg -i input -vf pad=ih*ar:ih:(ow-iw)/2:0:color output
# 如果是增加画面的高度,则是
ffmpeg -i input -vf pad=iw:iw*ar:0:(oh-ih)/2:color output

★文末名片 可以免费领取下方音视频开发学习资料

FFmpeg- 常用的滤镜命令

 文章来源地址https://www.toymoban.com/news/detail-414873.html

翻转和旋转视频(flip filter)

对视频进行翻转和旋转 语法:

#水平翻转(Horizontal flip)
-vf hfilp
#竖直翻转(Vertical flip)
-vf vfilp
# 旋转 
#0 - 逆时针旋转+竖直翻转
#1- 顺时针旋转 90
#2- 逆时针旋转 90
#3- 顺时针旋转90 + 竖直的翻转
transpose={0,1,2,3}

模糊、锐化和其他添加噪点的滤镜

模糊滤镜

boxblur

语法:
# r=radius p=powerboxblur=luma_r:luma_p[:chroma_r:chroma_p[:alpha_r:alpha_p]]
#example
ffmpeg -i input.mpg -vf boxblur = 1.5:1 output.mp4

smartblur

#t = threashold
smartblur = luma_r:luma_s:luma_t[:chroma_r:chroma_s:chroma_t]
#example
ffmpeg -i halftone.jpg -vf smartblur= 5:0.8:0 blurred_halftone.png

FFmpeg- 常用的滤镜命令

锐化

滤镜的名称竟然是 unsharp

语法:

l_msize_x:l_msize_y:l_amount:c_msize_x:c_msize_y:c_amount
#all parameters are optional, if not set, the default is 5:5:1.0:5:5:0.0

默认的明亮度矩阵是5x5 而明亮度(luma)的效果强度是1.0.如果想创造高斯模糊的效果的话,可以使用一个负数的明亮度或者是浓度(chroma)

#高斯模糊的效果
ffmpeg -i input -vf unsharp= 6:6:-2 output.mp4

下面4张图是NASA的拍摄的图片。

  1. 是原图。

  2. -vf unsharp

  3. -vf unsharp=6:6:3

  4. -vf unsharp = 6:6:-2

FFmpeg- 常用的滤镜命令

有部分降噪的fliter暂且略过

覆盖(Overlay)

可以实现画中画的功能。这里只是简单的覆盖的实例,更加复杂的例子需要在后面的进阶单元里看到。 语法:

overlay[=x:y[[:rgb={0,1}]]
# x,y是可选的。默认参数是0 # rgb 也是可选的。它的值是 0或者1

命令行的构成

ffmpeg -i input1 -i input2 -filter_complex overlay=x:y output

这里需要注意是的 filter_complex 来替代-vf,因为有两个输入源。但是如果使用flitergraph和 link labels.这样我们就可以使用 movie 视频源,囊括第二输入和使用-vf

# 使用 movie 和 -vf
ffmpeg -i input1 -vf movie=input2[logo];[in][logo] overlay=x:y output#Logo in top-left corner
ffmpeg -i pair.mp4 -i logo.png -filter_complex overlay pair1.mp4

FFmpeg- 常用的滤镜命令

# Logo in top-right corner
#W 表示输入的视频的width w表示图片的宽度
ffmpeg -i pair.mp4 -i logo.png -filter_complex overlay=W-w pair2.mp4

FFmpeg- 常用的滤镜命令

#Logo in bottom-right corner
ffmpeg -i pair.mp4 -i logo.png -filter_complex overlay=W-w:H-h pair3.mp4

FFmpeg- 常用的滤镜命令

添加文字到视频上

video filter:drawtext 语法:

drawtext=fontfile = font_f:text=text1[:p3=v3[:p3=v4[...]]]
#最简单的example就是。 此时需要注意的是,这个字体文件必须在当前目录下
ffmpeg -i input -vf drawtext=fontfile=arial.ttf:text=Welcome output

混音

amerge

ffmpeg -y -i  video_bgm.mp4 -i  src2.aac -filter_complex [0:a][1:a]amerge=inputs=2[a] -map 0:v -map [a] -c:v copy -c:a aac -ac 2 -shortest after_compose3.mp4

amix

ffmpeg -i test.aac -i test.mp3 -filter_complex amix=inputs=2:duration=first:dropout_transition=2  mix.aac

参数

-shortest 取最短的时长

-shortest : duration = MIN(inputs)

实例:

ffmpeg -i test.mp4 -i test.mp3 -vcodec copy -acodec aac -map 0:v:0 -map 1:a:0 -shortest mix_test.mp4

调节音量(整体调节)

ffmpeg -i test.mp4 -i test.mp3 -vcodec copy -acodec aac -map 0:v:0 -map 1:a:0 -vol 60 mix_test.mp4

设置时长(amix )

amix : setup duration

ffmpeg -i test.mp4 -i test.mp3 -filter_complex "[0:a][1:a]amix=inputs=2:duration=first[aout]" -map "[aout]" -c:v copy -map 0:v:0 mix_amerge.mp4

调节音量(amix)

ffmpeg -i test.mp4 -i test.mp3 -filter_complex "[0:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=0.9[a0]; [1:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=0.5[a1]; [a0][a1]amix=inputs=2:duration=first[aout]" -map "[aout]" -ac 2 -c:v copy -map 0:v:0 mix_amerge.mp4

作者:deep_sadness

★文末名片可以免费领取音视频开发学习资料,内容包括(C/C++,Linux 服务器开发,FFmpeg ,webRTC ,rtmp ,hls ,rtsp ,ffplay ,srs)以及音视频学习路线图等等。

见下方↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

 

到了这里,关于FFmpeg- 常用的滤镜命令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 简历上写熟悉Linux下常用命令?直接寄

                     大家写简历技术栈时,都觉得越多越好,其中一条,熟悉Linux下常用命令?其实开发中Linux不是必备考点,除了运维,真正用的多的仅仅cd ls mkdir等,但当面试官问到上面命令时,是不是就傻眼了。         面试中最忌讳的就是简历上写了,但答不出来

    2024年04月15日
    浏览(35)
  • [FFmpeg] 常用ffmpeg命令

    去水印  ffmpeg -i water.jpeg -strict -2 -vf delogo=x=300:y=250:w=56:h=18:show=0 no_water.jpeg 打时间戳 ffmpeg -i perf_60Hz_Raw.mp4 -vf \\\"drawtext=fontsize=160:fontcolor=red:text=\\\'%{pts:hms}\\\'\\\" -c:v libx264 -an -f mp4 perf_output.mp4 -y ffmpeg -i perf_8k.mp4 -vf \\\"drawtext=fontsize=160:fontcolor=red:text=\\\'%{pts:hms}\\\'\\\" -c:v libx264 -an -f mp4 perf_outpu

    2024年02月10日
    浏览(37)
  • 6 FFmpeg从入门到精通-FFmpeg滤镜使用

    1 FFmpeg从入门到精通-FFmpeg简介 2 FFmpeg从入门到精通-FFmpeg工具使用基础 3 FFmpeg从入门到精通-FFmpeg转封装 4 FFmpeg从入门到精通-FFmpeg转码 5 FFmpeg从入门到精通-FFmpeg流媒体 6 FFmpeg从入门到精通-FFmpeg滤镜使用 7 FFmpeg从入门到精通-FFmpeg中Linux设备操作 8 FFmpeg从入门到精通-FFmpeg接口lib

    2024年02月09日
    浏览(39)
  • FFmpeg进阶:视频滤镜大全

    在做视频特效的时候,很多特效其实不用自己写,FFmpeg的视频滤镜里面提供了很丰富的滤镜特效。这里翻译了一下FFmpeg官方文档的所有视频滤镜的介绍,供大家参考。由于很多地方概念比较生疏,翻译的可能不恰当,欢迎反馈修改意见。 滤镜名称 滤镜介绍 addroi 在视频帧中标

    2024年02月03日
    浏览(38)
  • ffmpeg的滤镜

    FFmpeg 是一款开源的跨平台音视频处理工具,它提供了众多功能强大的滤镜用于视频/音频的加工处理。其中,滤镜(Filter)是 FFmpeg 中一个十分重要且常用的组件,它们可以实现对视频和音频的各种操作和变化,如转码、编解码、剪裁、裁剪、缩放、旋转、倒置、加水印、去除噪

    2023年04月18日
    浏览(36)
  • FFmpeg进阶: 音频滤镜大全

    在做音频处理模块的时候,为了对声音进行优化处理,我很多时候会使用各种算法对音频进行变换,效果包括变音变调、声音降噪等等。其实FFmpeg库里的滤镜模块包含了很多有用的音频滤镜算法,这对于提升开发效率避免重复造轮子是很有帮助的。这里翻译了一下FFmpeg官方文

    2024年02月02日
    浏览(33)
  • ffmpeg简介及常用命令

    ffmpeg即使一款音视频编解码工具,同时也是一组音视频编解码开发套件,作为编解码开发套件,它为开发者提供了丰富的音视频处理的调用接口。 ffmpeg提供了多种媒体格式的封装和解封装,包括多种音视频编码、多种协议的流媒体、多种色彩格式转换、多种采样率转换、多种

    2024年02月11日
    浏览(33)
  • FFMPEG小白常用命令行

    序列帧转H264视频 ffmpeg -r 60 -f image2 -s 1920x1080 -i fram%d.jpg -vcodec libx264 -crf 25  -pix_fmt yuv420p test.mp4 -vcodec h264  .ffmpeg -r 60 -f image2 -s 1920x1080 -i %04d.jpeg -vcodec h264 test.mp4 %04d 表示用零来填充直到长度为4,i.e 0001…0020…0030…2000 and so on. 如果没有填充,需要相应更改,如 pic%d.png or %d

    2024年02月11日
    浏览(41)
  • 常用 FFmpeg 命令

    视频添加字幕 或:(烧录为 mp4,速度慢) 视频提取字幕 这将下载第一个字幕轨。如果有多个,则使用 0:s:1 下载第二个, 0:s:2 下载第三个,以此类推。可以生成任意所需的格式,改一下扩展名即可。 图片压缩 -q 4 为压缩级别,数字越大压缩级别越高 约束比例压缩 scale=-1:

    2023年04月08日
    浏览(52)
  • ffmpeg 常用命令行详解

    ffmpeg 是一个命令行音视频后期处理软件 参数说明 -i 文件,orgin.mp3 为待处理源文件 -ss 裁剪时间,后跟裁剪开始时间,或者开始的秒数 -t 裁剪时间 output.mp3 为处理结果文件 2. 合成命令 2.1 混合合成 参数说明 -i 文件 1.mp3 和 2.mp3 为待合成的两个源文件 -filter_complex 过滤器参数

    2024年01月20日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包