如何用n8n结合ffmpeg实现视频处理?
摘要:背景 n8n-ffmpeg 这是一个为 n8n 工作流自动化平台集成 FFmpeg 功能的 Docker 镜像项目。通过此项目,您可以在 n8n 中使用 FFmpeg 进行音视频处理、转码、分析等多媒体操作。 项目:with-ffmpeg
背景
n8n-ffmpeg
这是一个为 n8n 工作流自动化平台集成 FFmpeg 功能的 Docker 镜像项目。通过此项目,您可以在 n8n 中使用 FFmpeg 进行音视频处理、转码、分析等多媒体操作。
项目:with-ffmpeg
成品:docker pull skyjilygao/n8n-with-ffmpeg:1.122.5-20251216154621
可以直接用现成镜像执行即可
📋 项目背景
随着短视频和内容创作需求爆发式增长,企业急需将专业的音视频处理能力集成到自动化工作流中。然而 FFmpeg 命令复杂、学习成本高,缺乏可视化操作界面。n8n-ffmpeg 项目应运而生,通过将 FFmpeg 集成到 n8n 平台,让媒体处理变得简单高效,助力企业数字化转型。
项目概述
本项目基于官方 n8n 镜像(1.122.5),集成了 FFmpeg 7.0.2 静态编译版本,提供了完整的音视频处理能力。适用于需要在 n8n 工作流中进行媒体文件处理的各种场景。
主要特性
🎬 FFmpeg 功能
音视频转码: 支持各种格式之间的转换
视频处理: 剪辑、合并、添加水印、调整分辨率等
音频处理: 提取、合并、转换音频格式
媒体分析: 获取媒体文件详细信息
VMAF 支持: 包含完整的 VMAF 模型库,用于视频质量评估
🐳 Docker 集成
基于官方 n8n 镜像构建
中国时区配置 (Asia/Shanghai)
优化的容器配置
支持外部数据卷持久化
📊 VMAF 模型库
包含完整的 VMAF (Video Multimethod Assessment Fusion) 模型库:
标准模型: vmaf_v0.6.1, vmaf_b_v0.6.3 等
4K 模型: vmaf_4k_v0.6.1, vmaf_4k_rb_v0.6.2 等
浮点模型: vmaf_float 系列
Netflix 模型: 多种 Netflix 训练模型
快速开始
前提条件
Docker 和 Docker Compose 已安装
可用的域名和 SSL 证书(用于生产环境)
1. 克隆项目
git clone <项目地址>
cd n8n-ffmpeg
2. 构建镜像
./build-image.sh
# 或docker build -t n8n-with-ffmpeg:latest .
脚本说明:build-image.sh
3. 启动服务
./restart.sh
# 或 docker-compose up -d
脚本说明:restart.sh
4. 使用便捷脚本
项目提供了几个便捷的 shell 脚本来简化容器管理:
🔨 构建镜像脚本 (build-image.sh)
自动化构建新镜像并更新 docker-compose.yml 文件:
./build-image.sh
功能特点:
自动构建带有时间戳标签的镜像
备份原有的 docker-compose.yml 文件
智能替换镜像名称(支持变量和直接引用格式)
验证 docker-compose 文件语法
自动清理旧镜像(保留最新3个)
构建过程:
检查必要文件是否存在
构建新的 Docker 镜像(格式:n8n-with-ffmpeg:1.122.5-YYYYMMDDhhmmss)
备份当前的 docker-compose.yml 文件
更新 docker-compose.yml 中的镜像引用
验证配置文件语法
提供部署和清理指导
🔄 重启脚本 (restart.sh)
快速重启 n8n 容器:
./restart.sh
执行流程:
停止当前运行的容器
等待1秒确保完全停止
重新启动容器
⏹️ 停止脚本 (stop.sh)
停止 n8n 容器:
./stop.sh
功能:
优雅地停止 n8n 容器
释放相关资源
5. 访问 n8n
打开浏览器访问 http://localhost:5678 即可使用 n8n。
