sudo apt-get install ffmpeg
ffmpeg官网: https://www.ostechnix.com/install-ffmpeg-linux/
ffmpeg [全局选项] {[输入文件选项] -i 输入_url_地址} ...
{[输出文件选项] 输出_url_地址} ...
常用命令
获取音频、视频文件信息
ffmpeg -i video.mp4
或 ffmpeg -i video.mp4 -hide_banner
转换视频格式
ffmpeg -i video.mp4 video.avi
如果你想维持你的源视频文件的质量,使用 -qscale 0
参数:
ffmpeg -i input.webm -qscale 0 output.mp4
检查 FFmpeg 的支持格式的列表,运行:
ffmpeg -formats
将视频转成音频
ffmpeg -i input.mp4 -vn output.mp3
对输出文件使用各种各样的音频转换编码选项,如:
ffmpeg -i input.mp4 -vn -ar 44100 -ac 2 -ab 320 -f mp3 output.mp3
说明
-vn 表面我们已经在输出文件中禁止视频录制
-ar 设置输出文件的音频频率 通常是22050HZ 44100HZ 48000HZ
-ac 设置音频通道的数目
-ab 表明音频比特率
-f 输出文件格式
更改视频文件的分辨率
设置视频的分辨率为1280*720
ffmpeg -i input.mp4 -filter:v scale=1280:720 -c:a copy output.mp4
或
ffmpeg -i input.mp4 -s 1280x720 -c:a copy output.mp4
压缩视频文件
ffmpeg -i input.mp4 -vf scale=1280:-1 -c:v libx264 -preset veryslow -crf 24 output.mp4
减小视频文件的大小,视频质量会损失。如 24 太有侵略性,可以降低 -crf
值到或更低值。
你也可以通过下面的选项来转换编码音频降低比特率,使其有立体声感,从而减小大小。
-ac 2 -c:a aac -strict -2 -b:a 128k
压缩音频文件,如: 将文件压缩为128kbpsffmpeg -i input.mp3 -ab 128 output.mp3
音频的比特率列表有:
去掉视频中的声音
ffmpeg -i input.mp4 -an output.mp4
-an
表示没有音频录制
获取视频文件中的音频,命令转换所给定媒体文件为音频文件
ffmpeg -i input.mp4 -vn output.mp3
或 使用-ab
指定输出文件的比特率
ffmpeg -i input.mp4 -vn -ab 320 output.mp3
从视频中提前图像,从一个视频文件中创建一个相册.
ffmpeg -i input.mp4 -r 1 -f image2 image-%2d.png
说明:
-r 设置帧速度。即,每秒提取帧到图像的数字。默认值是 25。
-f 表示输出格式,即,在我们的实例中是图像。
image-%2d.png 表明我们如何想命名提取的图像。在这个实例中,命名应该像这样image-01.png、image-02.png、image-03.png 等等开始。如果你使用
%3d
,那么图像的命名像 image-001.png、image-002.png 等等开始。
裁剪视频
ffmpeg -i input.mp4 -filter:v "crop=w:h:x:y" output.mp4
说明:
input.mp4 源视频文件。
filter:v 表示视频过滤器。
crop 表示裁剪过滤器。
w 我们想自源视频中裁剪的矩形的宽度。
h 矩形的高度。
x 我们想自源视频中裁剪的矩形的 x 坐标 。
y 矩形的 y 坐标。
比如说你想要一个来自视频的位置 (200,150),且具有 640 像素宽度和 480 像素高度的视频,命令应该是:
ffmpeg -i input.mp4 -filter:v "crop=640:480:200:150" output.mp4
转换一个视频的具体部分
有时,你可能想仅转换视频文件的一个具体的部分到不同的格式。以示例说明,下面的命令将转换所给定视频input.mp4 文件的开始 10 秒到视频 .avi 格式。
ffmpeg -i input.mp4 -t 10 output.avi
在这里,我们以秒具体说明时间。此外,以 hh.mm.ss
格式具体说明时间也是可以的。
设置视频的屏幕高宽比
ffmpeg -i input.mp4 -aspect 16:9 output.mp4
通常使用的高宽比:
根据开始和结束时间裁剪一段视频文件
ffmpeg -i input.mp4 -ss 00:00:50 -codec copy -t 50 output.mp4
-s 表示视频剪辑的开始时间。在我们的示例中,开始时间是第 50 秒。
-t 表示总的持续时间。
或
ffmpeg -i audio.mp3 -ss 00:01:54 -to 00:06:53 -c copy output.mp3
原文来自: https://zhuanlan.zhihu.com/p/67878761
原文:https://www.cnblogs.com/liangyy/p/13219438.html