我常用的ffmpeg命令

参考链接
1: 视频提取aac
config : --enable-libfaac
ffmpeg -i input.mp4 -acodec copy -vn output.aac
ffmpeg -i input.mp4 -vn -c:a copy output.aac

Note:提取视频
ffmpeg -i input.mp4 -acodec copy -an output.264

2:视频提取MP3
config : --enable-libmp3lame
ffmpeg -i input.f4v -b 1500 -ar 8000 -ac 2 -ab 32 -f mp3 output.mp3

3:切割分段MP3
./ffmpeg -ss 00:00:40 -t 00:01:35 -i input.mp3 -acodec copy output.mp3

4:切割分段MP4
ffmpeg -ss 00:00:30 -t 00:00:35 -i input.mp4 -vcodec copy -acodec copy output.mp4

5:裁剪MP4
ffmpeg -y -i input.mp4 -filter_complex "crop=720:720:420:0,scale=480:480" -vcodec libx264 -b:v 800000 -acodec aac -strict -2 output.mp4

6:裁剪jpg
ffmpeg -i input.jpg -vf "crop=w:h:x:y,scale=480:480" input_crop.jpg

7:
ffmpeg -i "1.mp4" -r 1 -q:v 2 -f image2 image-3%d.jpg
-r选项设置每秒提取图片的帧数。我想要每秒提取一帧。

之后有一个重要的选项是-q:v,应该留意这个选项并且我很喜欢用它,它用来设置提取到的图片质量。我总是设置值为2来从视频中获取高质量图片。

8: 保证质量的情况下压缩视频
ffmpeg -i 1.mp4 -c:v libx264 -preset veryslow -crf 18 -c:a copy test.mp4

源 46.3M
crf = 18 36.7M 21%
crf = 19 31.2M 33%
crf = 20 26.5M 43%
crf = 28 7.95M 83%
crf = 51 1.25M 97%

参考

ffmpeg -i input.mp4 -y -f image2 -ss 00:10:00 -vframes 1 -s 640x360 test%03d.jpg
-i 输入
-y 覆盖
-f 格式 image2 一种格式
-ss 起始值
-vframes 帧 如果大于1 那么 输出加%03d
-s 格式大小 size

ffmpeg -i input.mp4 -vf fps=10 ./frames/out%6d.png

9 To resize video:
ffmpeg -strict -2 -i input.mp4 -vf scale=256:144 output.mp4 -strict -2

10 旋转任意角度
PI 180 顺时针为正
ffmpeg -i 1.mp4 -y -vf rotate=PI/2 out.mp4

  1. 图片推流
    ffmpeg -loop 0 -f image2 -i png/%d.png -vcodec libx264 -pix_fmt yuv420p -r 10 -f flv rtmp://****
    -loop 1循环读输入 0读完就不读了
    -vcode 编码格式libx264
    -b 指定200k码率
    参考链接

mp3 ==> wav
把mp3文件转换为百度语音识别要求的wav文件(单声道,采样率16k,16bit位深度)
ffmpeg -i ./1.mp3 -ac 1 -ar 16000 2.wav

你可能感兴趣的:(我常用的ffmpeg命令)