SuperAPI AI 工具集

ffmpeg-cicd-runners

设计与创作

查看项目

更新于 10-15 23:41

技能介绍

用途:在持续集成与持续交付流水线中自动完成视频处理任务,例如视频校验、转码为多格式或多分辨率、生成缩略图、提取音频、检查编码参数以及测试视频处理流程。

主要能力:提供 GitHub Actions、GitLab CI 和 Jenkins 的配置模式。GitHub Actions 可用 apt-get 安装、直接调用 FedericoCarboni/setup-ffmpeg@v3、从 BtbN/FFmpeg-Builds 下载指定版本,或使用 jrottenberg/ffmpeg:7.1-ubuntu2404 容器;也可用 actions/cache@v4 缓存 FFmpeg 及库、用 actions/upload-artifact@v4 上传产物、用 matrix 并行执行多格式任务,并支持 self-hosted GPU 运行器(如 -hwaccel cuda 与 h264_nvenc)。GitLab CI 侧以 Docker 镜像加 script 和 artifacts 实现基础转码、多格式转码、parallel 并行分辨率处理与 GPU 标签运行器。Jenkins 侧给出声明式流水线中用 docker 镜像挂载目录、sh 执行 ffmpeg 以及 parallel 并行转码的写法。另附视频校验工作流,使用 ffprobe 检查文件有效性与时长限制。

使用方式:按流水线平台选择安装方法,优先使用预编译二进制或 Docker 镜像而非在 CI 中编译;通过缓存减少安装时间,通过 artifacts 保存输出,通过 matrix 或 parallel 提升吞吐。命令行参数和控制文件片段需按原文使用。

适用场景:需要在 CI 阶段自动处理或校验视频的团队与项目。

限制与注意事项:FFmpeg 自行编译通常需 20 至 40 分钟以上,Windows 运行器可能更慢,建议使用预编译包;运行器 CPU 与内存会影响处理效果,可用 -threads、-preset 调整;不同平台存在差异,Windows 路径与 PATH 需要单独处理;编解码库可能需要额外安装。具体收费、价格或更多平台支持信息暂未提供。