合并视频

把多个片段首尾相接合成一个视频。我们会处理常见格式差异,但片段分辨率一致时最稳定。

合并视频

选择文件
或拖放到此

登录后即可使用,注册送 100 积分

这个工具用到的 FFmpeg 参数

速查每个参数实际做什么。

-i x -i y -i z ...
每个 -i 添加一个输入流。filtergraph 用 0 起始的位置引用:[0:...]、[1:...]、[2:...]。
-filter_complex
复杂滤镜图 —— 滤镜需要多输入或多输出时必用。普通 -vf 处理不了 concat。
concat=n=N:v=1:a=1
首尾连接输入。n=N 是片段数,v=1 a=1 表示每段一路视频一路音频。
[0:v][0:a]...[N-1:v][N-1:a]
流选择器:i:v / i:a 是第 i 个输入的视频 / 音频。这里的顺序就是输出里的顺序。
-map [v] -map [a]
按名字从 filtergraph 取输出。没 -map 的话 FFmpeg 走默认自动选流,会忽略滤镜结果。

处理流程

  1. 01

    添加片段

    每段都可以上传 / 粘 URL / 从「最近用过」选。每次最多 10 段。

  2. 02

    调整顺序

    用上下箭头排序。列表最上面那段最先播。

  3. 03

    合并片段

    按顺序处理并合并片段,导出一个可播放的视频文件。分辨率不同请先统一尺寸。

  4. 04

    下载合并结果

    处理完直接给临时下载链接,文件 7 天后自动删除。

常见问题

为什么要重编码?不能直接 stream-copy 吗?

直接合并只有在输入非常一致时才可靠。重编码会慢一些,但对来自不同手机、App 或剪辑软件的视频更稳。

最多能拼多少段?

网页端每次最多 10 段。API 没有固定上限 —— 用 concat=n=N 传任意 N。

片段分辨率不同怎么办?

所有片段必须分辨率一致。次要差异(像素格式、SAR、音频采样率)我们自动归一化,但宽高不同会直接失败 —— 先用 Resize 工具把它们统一到同一分辨率。

片段之间会有过渡效果吗?

没有 —— 这是硬切。要交叉淡化等过渡,调 API 用 xfade 滤镜(文档里有专门页面)。

能在合并前剪辑每段吗?

先用剪辑工具切好每段,再把结果加到这里。或者一次 API 调用里把 trim + concat 滤镜串起来。

免费吗?

注册送 100 积分。一次合并大约 5 积分/分钟(按输出总时长)。没有订阅,用完充值即可。

相关工具

在代码里也想合并?

这个工具就是我们 REST API 的封装。三行 curl 就能在构建脚本或后端跑同样的活。

查看 API 文档
curl -X POST https://api.ffhub.io/v1/tasks \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d {
    "command": "-i https://you.com/a.mp4 -i https://you.com/b.mp4 -i https://you.com/c.mp4 -filter_complex [0:v][0:a][1:v][1:a][2:v][2:a]concat=n=3:v=1:a=1[v][a] -map [v] -map [a] -c:v libx264 -c:a aac output.mp4"
  }
在线合并视频 — 把多段拼成一段 | FFHub