天天看点

ffmpeg使用个人记录更改视频格式截取视频

在cmd中输入命令

更改视频格式

ffmpeg -i 原文件 要改文件带格式全名

-i

表示源视频文件

例如

ffmpeg -i D:\movie.MOV D:\output.avi
           

注:手打的文件名不能带空格,有特殊符号的文件名要加双引号,可以直接拖动文件进命令行

ffmpeg -i 原文件 -c:v 编码格式 输出文件

另一种方法是通过-c:v参数来控制,

例如:想要输出的视频格式是H.265

ffmpeg -i D:\Media\IMG_0873.MOV -c:v libx265 D:\Media\output265.avi
           

注:命令

fmpeg -encoders

可以查看所有可选的编码格式对应的代码。

截取视频

ffmpeg -ss 开始时间 -t 截取时长 -i 原视频 输出视频

注:-ss和-t参数必须放在-i前面,表示是限定后面跟着的输入文件的。

例如:从第2秒的地方开始,往后截取10秒钟

ffmpeg -ss 2 -t 10 -i D:\Media\IMG_0873.MOV D:\Media\output4.avi
           

ffmpeg -ss 开始时间 -to 结束时间 -i 原视频 输出视频

ffmpeg -ss 00:00:00 -to 00:23:10 -i "E:\PM\3 CBE guidance2.mp4" E:\PM\out.mp4
           

-ss-to 和 -i 前后顺序好像不影响,上下两条命令都可以用:

ffmpeg  -i "E:\PM\3 CBE guidance2.mp4" -ss 00:00:00 -to 00:23:00 E:\PM\out.mp4 -y
           

-y

表示如果输出文件已存在则覆盖。

ffmpeg -i 源文件名 -vcodec copy -acodec copy -ss 00:00:10 -to 00:00:15 目标文件名 -y

-vcodec copy

表示使用跟原视频一样的视频编解码器。

-acodec copy

表示使用跟原视频一样的音频编解码器。

合并视频音频

注意两者时长要相同

ffmpeg -i 视频 -ss 开始时间 -t 时长 -i 音频 -vcodec copy 输出地址

例如

ffmpeg -i D:\Media\tmp.mov -ss 30 -t 52 -i D:\Media\music.mp3 -vcodec copy D:\Media\output5.avi
           

做动图

ffmpeg -i 视频文件 -ss 开始时间 -t 时长 -f gif 动图.gif

例如

ffmpeg -i "E:\PM\PartA 1 Absorption costing & Marginal costing .mp4" -ss 00:00:10 -t 5 -f gif E:\同济研究生\5找工作准备\ACCA\PM\g0.gif
           

播放动图name.gif

ffplay name.gif