基于 CNB 平台的 FFmpeg 智能助手 NPC,一站式处理音视频任务
# 拉取 Docker 镜像
docker pull docker.cnb.cool/scaffold/examples/ffmpeg:latest
# 运行
docker run -it --gpus all docker.cnb.cool/scaffold/examples/ffmpeg:latest bash
# 测试
ffmpeg -version
| 组件 | 版本 |
|---|---|
| Docker | 20.10+ |
| GPU(可选) | NVIDIA + CUDA |
| 平台 | CNB |
FFmpeg/ ├── .cnb.yml # NPC 配置 ├── .cnb/ # CNB 平台配置 ├── Dockerfile # NPC 运行环境定义 ├── README.md # 本文件 ├── assets/ # 静态资源 └── skills/ └── ffmpeg/ ├── SKILL.md # NPC 技能定义(命令手册) └── README.md # 技能子说明
# 格式转换
ffmpeg -i input.avi output.mp4
# 裁剪视频(从第 10 秒开始,持续 30 秒)
ffmpeg -i input.mp4 -ss 10 -t 30 -c copy output.mp4
# 压缩视频(CRF 值越大质量越低)
ffmpeg -i input.mp4 -crf 23 -preset medium output.mp4
# 提取音频
ffmpeg -i input.mp4 -vn -acodec copy output.m4a
# 添加字幕
ffmpeg -i input.mp4 -vf subtitles=sub.srt output.mp4
# 视频转 GIF
ffmpeg -i input.mp4 -vf "fps=10,scale=480:-1:flags=lanczos,split[s0][s1];[s0]palettegen[p];[s1][p]paletteuse" output.gif
# GPU 加速编码
ffmpeg -i input.mp4 -c:v h264_nvenc -preset p4 -cq 23 output.mp4