Post

FFMPEG 常用命令

FFMPEG 常用命令

时间计算

适用于 <起点><终点>hh:mm:ss[.xxx]

其中 $.xxx = \frac{当前帧号}{帧率}$

剪辑视频

ffmpeg.exe -i <输入文件名> -c:v copy -c:a copy -ss <起点> -to <终点> <输出文件名>

合并视频

ffmpeg.exe -f concat -i <文件列表 .\concat_list.txt> -c copy <输出文件名>

concat_list.txt 示例

1
2
file 'file1.mp4'
file 'file2.mp4'

格式转换

ffmpeg.exe -i <输入文件名> -c:v copy -c:a copy <输出文件名>

添加章节

章节信息:

1
2
3
4
5
6
7
8
9
[CHAPTER]
# 一个 tick 为 1/1000 秒
TIMEBASE=1/1000
# 起始 tick
START=1108000
# 终止 tick
END=1274000
# 章节标题
title=
  1. 提取 metadata ffmpeg.exe -i <输入文件名> -f ffmetadata metadata.txt
  2. 在 metadata.txt 末尾添加上文所示的章节信息
  3. 将 metadata.txt 写回视频文件 ffmpeg.exe -i <输入文件名> -i metadata.txt -map_metadata 1 -codec copy <输出文件名>

提取音频

ffmpeg.exe -i <输入文件名> -vn -ss <起点> -to <终点> -c:a flac output.flac

替换音频

ffmpeg.exe -i <输入视频名> -i <输入音频名> -c:v copy -c:a copy -map 0:v:0 -map 1:a:0 <输出视频名>

This post is licensed under CC BY 4.0 by the author.