半亩花草 发表于 2025-11-11 02:06:00

ffmpeg常用下令及先容

FFmpeg 是一个非常强盛的多媒体处理惩罚工具,可以用来举行视频和音频的转换、剪辑、归并、提取等多种操纵。以下是一些常用的 FFmpeg 下令及其功能先容:
1. 根本下令布局

FFmpeg 的根本下令布局如下:

ffmpeg [全局选项] [输入文件选项] -i 输入文件 [输出文件选项] 输出文件2. 常用下令

2.1 查察媒体文件信息

使用 ffprobe 或 ffmpeg -i 查察媒体文件的具体信息。

ffprobe -i input.mp4或

ffmpeg -i input.mp42.2 视频格式转换

将一个视频文件从一种格式转换为另一种格式。


ffmpeg -i input.mp4 -c:v libx264 -c:a aac output.mp42.3 音频格式转换

将一个音频文件从一种格式转换为另一种格式。

ffmpeg -i input.wav -c:a libmp3lame output.mp32.4 提取音频

从视频文件中提取音频并生存为单独的音频文件。


ffmpeg -i input.mp4 -q:a 0 -map a output.mp32.5 提取视频

从视频文件中提取视频流(无音频)。



ffmpeg -i input.mp4 -c copy -an output.mp42.6 裁剪视频

裁剪视频的指定时间段。


ffmpeg -i input.mp4 -ss 00:00:10 -to 00:00:30 -c copy output.mp42.7 归并视频

将多个视频文件归并为一个文件。

ffmpeg -i "concat:input1.mp4|input2.mp4" -c copy output.mp4大概使用 concat 文件列表:

echo "file 'input1.mp4'" > filelist.txt echo "file 'input2.mp4'" >> filelist.txt ffmpeg -f concat -safe 0 -i filelist.txt -c copy output.mp42.8 调解分辨率

将视频文件调解为指定的分辨率。


ffmpeg -i input.mp4 -vf scale=1280:720 output.mp42.9 调解比特率

设置视频和音频的比特率。


ffmpeg -i input.mp4 -b:v 1000k -b:a 128k output.mp42.10 添加水印

在视频上添加水印。


ffmpeg -i input.mp4 -i watermark.png -filter_complex "overlay=10:10" output.mp42.11 旋转视频

旋转视频 90 度。



ffmpeg -i input.mp4 -vf "transpose=1" output.mp42.12 截取视频帧

从视频中截取一帧图像。


ffmpeg -i input.mp4 -ss 00:00:01 -vframes 1 output.jpg2.13 更改帧率

更改视频的帧率。


ffmpeg -i input.mp4 -r 30 output.mp42.14 更改音频采样率

更改音频的采样率。

ffmpeg -i input.mp3 -ar 44100 output.mp32.15 更改音频声道数

更改音频的声道数。

ffmpeg -i input.mp3 -ac 2 output.mp32.16 静音或删除音频

删除视频中的音频。



ffmpeg -i input.mp4 -c copy -an output.mp42.17 添加音频到视频

将音频文件添加到视频文件中。


ffmpeg -i input.mp4 -i audio.mp3 -c copy -shortest output.mp42.18 天生缩略图

天生视频的缩略图。


ffmpeg -i input.mp4 -vf fps=1/60 thumbnails_%03d.jpg
3. ffmpeg的filter使用方式

3.1常用filter

3.1.1 缩放 (scale)

调解视频的分辨率。


ffmpeg -i input.mp4 -vf "scale=1280:720" output.mp43.1.2 裁剪 (crop)

裁剪视频的一部分。


ffmpeg -i input.mp4 -vf "crop=640:360:0:0" output.mp4

[*]crop=out_w:out_h:x:y:此中 out_w 和 out_h 是输出宽度和高度,x 和 y 是裁剪地区的起始坐标。
3.1.3 叠加 (overlay)

在视频上叠加另一个视频或图像。

ffmpeg -i input.mp4 -i watermark.png -filter_complex "overlay=10:10" output.mp4

[*]overlay=x:y:此中 x 和 y 是叠加位置的坐标。
3.1.4 旋转 (transpose)

旋转视频。



ffmpeg -i input.mp4 -vf "transpose=1" output.mp4

[*]transpose=1:顺时针旋转90度。
[*]transpose=2:逆时针旋转90度。
[*]transpose=3:顺时针旋转90度并垂直翻转。
[*]transpose=4:逆时针旋转90度并垂直翻转。
3.1.5 淡入淡出 (fade)

添加淡入淡出效果。


ffmpeg -i input.mp4 -vf "fade=t=in:st=0:d=1,fade=t=out:st=59:d=1" -c:a copy output.mp4

[*]fade=t=in:st=0:d=1:从第0秒开始,连续1秒的淡入效果。
[*]fade=t=out:st=59:d=1:从第59秒开始,连续1秒的淡出效果。
3.1.6 颜色调解 (eq)

调解视频的颜色、亮度、对比度等。


ffmpeg -i input.mp4 -vf "eq=brightness=0.1:contrast=1.5:saturation=1.2" output.mp4

[*]brightness:亮度。
[*]contrast:对比度。
[*]saturation:饱和度。
3.1.7 含糊 (gblur)

添加高斯含糊效果。


ffmpeg -i input.mp4 -vf "gblur=sigma=5" output.mp4

[*]sigma:控制含糊水平。
3.1.8 抽取帧 (select)

抽取特定条件的帧。


ffmpeg -i input.mp4 -vf "select='gt(scene,0.4)',setpts=N/FRAME_RATE/TB" -vsync vfr output_%d.jpg

[*]select='gt(scene,0.4)':选择场景变革大于0.4的帧。
[*]setpts=N/FRAME_RATE/TB:重新设置时间戳。
[*]-vsync vfr:保持原始帧率。
3.2 常用音频滤镜

3.2.1 音量调解 (volume)

调解音频的音量。

ffmpeg -i input.mp3 -af "volume=0.5" output.mp3

[*]volume=0.5:将音量低沉到50%。
3.2.2 均衡器 (equalizer)

调解音频的频率相应。

ffmpeg -i input.mp3 -af "equalizer=f=1000:t=h:width_type=o:width=2:g=10" output.mp3

[*]f=1000:中央频率为1000 Hz。
[*]t=h:范例为高通。
[*]width_type=o:带宽范例为八度。
[*]width=2:带宽为2个八度。
[*]g=10:增益为10 dB。
3.2.3 混响 (aecho)

添加混响效果。

ffmpeg -i input.mp3 -af "aecho=0.8:0.88:60:0.4" output.mp3

[*]aecho=in_gain:out_gain:delays:decays:分别控制输入增益、输出增益、耽误时间和衰减系数。
3.2.4 动态范围压缩 (compand)

压缩音频的动态范围。

ffmpeg -i input.mp3 -af "compand=attacks=0:points=-80/-80|-40/-40|0/-30|20/-20|40/-20|60/-20|80/-20:gain=10" output.mp3

[*]attacks=0:攻击时间为0。
[*]points:界说压缩点。
[*]gain=10:增益为10 dB。
3.3. 复杂滤镜链

多个滤镜可以组合成一个复杂的滤镜链。


ffmpeg -i input.mp4 -vf "scale=1280:720,crop=1000:1000:100:100,transpose=1,fade=t=in:st=0:d=1,fade=t=out:st=59:d=1" -c:a copy output.mp43.4. 使用 filter_complex

对于更复杂的操纵,可以使用 filter_complex 选项。


ffmpeg -i input.mp4 -i watermark.png -filter_complex "overlay=10:10,format=yuv420p; volume=0.8" -map "" -map "" output.mp4

[*] 和  分别表现第一个和第二个输入文件的视频流。
[*] 表现第一个输入文件的音频流。
[*]overlay=10:10 将水印叠加在视频上。
[*]format=yuv420p 确保输特殊式兼容性。
[*]volume=0.8 调解音频音量。
4. 总结

FFmpeg 是一个极其强盛的工具,实用于各种音视频处理惩罚使命。通过上述下令,你可以完成大多数常见的音视频处理惩罚需求。假如你有更具体的需求或碰到题目,可以通过查阅 FFmpeg 的官方文档或社区资源来获取更多信息。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: ffmpeg常用下令及先容