关于 instagram-reel-editor
Instagram Reel Editor 是一项将旅行视频素材文件夹制作成竖屏 Instagram Reels 的技能,适用于需要批量整理目的地片段的创作者。它按目的地生成独立视频,并可加入音乐、文字叠加和电影风格效果。
主要功能
- 01按目的地文件夹生成 Reels
- 02扫描并整理视频素材信息
- 03竖屏 1080 × 1920 输出
- 04添加音乐和地点文字
- 05应用色彩预设与转场效果
适用场景
- 01将旅行片段剪成目的地短片
- 02为 Reels 添加地点标题和音乐
- 03批量处理多个目的地的视频
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ eigent-ai/ agent-skills --skill instagram-reel-editor安装后在 Claude Code 中输入/instagram-reel-editor确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/travel-reel-trends.mdscripts/build_reel.pyscan_footage.py详细介绍
Instagram Reel 编辑器
将原始旅行素材文件夹转换为电影感 Instagram Reels(9:16 竖屏,1080×1920px)。 每个目的地文件夹都会生成一个独立的 Reel,包含音乐、文字叠加和电影感效果。
要求: ffmpeg、Python 3 和 moviepy>=2.0。Agent 应能够运行 shell 命令、写入文件并向用户展示输出文件。
文件夹约定
用户提供一个遵循以下结构的根文件夹:
travel-project/
├── bali/ ← destination folder (one reel per folder)
│ ├── clip1.mp4
│ ├── clip2.MOV
│ └── ...
├── tokyo/
│ └── ...
├── _music/ ← shared background music (randomly selected per reel)
│ ├── track1.mp3
│ └── track2.wav
└── _fonts/ ← shared fonts for text overlays
└── Montserrat-Bold.ttf
规则:
- 目的地文件夹 = 名称不以
_开头的任何文件夹 _music/= 共享音乐库;每个目的地随机选择一首曲目_fonts/= 文字叠加所用字体;使用找到的第一个.ttf或.otf文件- 支持的片段格式:
.mp4、.mov、.MOV、.MP4、.avi、.mkv
Reel 规格(Instagram 标准)
| 属性 | 值 |
|---|---|
| 分辨率 | 1080 × 1920 px(9:16 竖屏) |
| FPS | 30 fps |
| 时长 | 15–60 秒(目标:30 秒) |
| 音频 | 立体声,44.1kHz,标准化至 -14 LUFS |
| 格式 | H.264 MP4,AAC 音频 |
| 文字安全区 | 顶部和底部各留 250px 边距 |
电影感风格参考(Instagram 旅行 Reels,2024–2025)
参考当前顶尖旅行创作者(@muradosmann、@expertvagabond、@thewanderinglens)的流行趋势:
节奏:
- 开场片段:1.5–2.5s(最具戏剧性或最美的时刻)
- 中间片段:每段 2–4s
- 结尾片段:3–5s,并渐隐至黑屏
- 片段总数:30s 的 Reel 使用 8–15 段
转场(按当前流行度排序):
xfade=fade– 干净的淡入淡出(通用)xfade=wipeleft/wiperight– 定向擦除xfade=slideleft/slideright– 动态滑动xfade=circlecrop– 电影感圆形揭示- 在节拍处切换(不使用转场滤镜)– 高能量片段
色彩分级预设(按目的地氛围选择):
warm_golden– 巴厘岛、摩洛哥、墨西哥(暖色阴影,提亮高光)cool_teal– 冰岛、挪威、山区(青绿色阴影,橙色肤色)moody_dark– 夜景、丛林(压暗黑色,提高对比度)bright_airy– 海滩、欧洲城市(提亮白色,柔和的粉彩色调)cinematic– 通用默认预设(轻微 S 曲线、暗角、轻度降低饱和度)
文字叠加样式:
- 地点标题:大写、粗体、白色、居中,80–100px
- 副标题(可选):常规字重,40px,60% 不透明度
- 显示方式:在 0.5s 时淡入,保持显示,在片段结束时淡出
- 位置:下三分之一处(在 1920 像素高的画布上距顶部 1400–1600px)
- 投影:偏移 3px,70% 黑色
音频:
- 音乐在开头用 1s 淡入
- 如果原始片段音量较大,则将音乐音量压至 20%
- 在结束前 2s 将音乐淡出
执行工作流
用户提供素材文件夹后,按以下顺序执行:
步骤 1:扫描并建立清单
python3 /path/to/scripts/scan_footage.py --root <project_root>
输出 JSON 清单:片段路径、时长、分辨率、has_audio 标志。
步骤 2:确定氛围和预设
根据目的地文件夹名称推断氛围:
bali、mexico、marrakech、portugal、italy→warm_goldeniceland、norway、patagonia、alaska、swiss→cool_tealtokyo、ny、berlin、singapore(夜景/都市)→moody_darksantorini、maldives、amalfi、greece→bright_airy- 其他任何名称 →
cinematic(稳妥的默认选项)
请用户确认或更改预设。
步骤 3:选择音乐
从 _music/ 随机选择一首曲目。如果 _music/ 为空或不存在,则不添加音乐并通知用户。
步骤 4:生成 Reel
运行主编辑器脚本:
python3 /path/to/scripts/build_reel.py \
--clips-dir <destination_folder> \
--music <selected_track> \
--font <font_path> \
--preset <mood_preset> \
--location-name "<Destination Name>" \
--output <output_path>
步骤 5:提供输出
使用 present_files 向用户交付最终 .mp4 文件。
报告:时长、使用的片段、音乐曲目、应用的预设,以及跳过的任何片段。
脚本
参见 scripts/scan_footage.py——扫描项目根目录并返回 JSON 清单。
参见 scripts/build_reel.py——主编辑器:片段 → Reel 处理流程。
执行前请完整阅读两个脚本。它们均为独立脚本,并处理所有 ffmpeg 子进程调用。
错误处理
| 问题 | 处理方式 |
|---|---|
| 片段没有视频流 | 跳过,并记录警告 |
| 片段为竖屏但分辨率较低 | 添加填充后放大 |
| 片段为横屏 | 裁剪为 9:16(默认居中裁剪) |
缺少 _music/ | 静默生成短片,并在报告中注明“无音乐” |
缺少 _fonts/ | 回退使用 ffmpeg 内置字体(DejaVu) |
| 片段短于 1s | 跳过 |
| 素材总时长少于 10s | 警告用户,使用所有片段,并通过慢动作延长时长 |
输出命名
<destination-name>_reel_<YYYYMMDD>.mp4
示例:bali_reel_20250414.mp4
多目的地模式
如果根文件夹中包含多个目的地子文件夹,请询问用户:
“我找到了 [N] 个目的地:[list]。要编辑全部目的地,还是先从一个开始?”
按顺序处理,每个目的地生成一条短片。