← 返回 Skills 市场
gprecious

AI Music Video

作者 Taejin Yoo · GitHub ↗ · v1.2.4
cross-platform ✓ 安全检测通过
1340
总下载
1
收藏
10
当前安装
7
版本数
在 OpenClaw 中安装
/install ai-music-video
功能描述
Generate AI music videos end-to-end. Creates music with Suno (sunoapi.org), generates visuals with OpenAI/Seedream/Google/Seedance, and assembles into music...
使用说明 (SKILL.md)

AI Music Video Generator

Create complete music videos: AI music + AI visuals + ffmpeg assembly.

Quick Start

"90년대 보이밴드 풍 한국어 노래 만들어줘" → music only
"발라드 뮤비 만들어줘" → music + slideshow MV
"EDM 뮤비 풀영상으로" → music + video clips MV
"Suno 뮤비로 만들어줘" → Suno native music video

Workflow

1. Plan scenes from lyrics/mood

Before generating, create prompts.json — array of scene descriptions derived from the song's lyrics, mood, and narrative. 8-12 scenes for a 3-min song.

[
  {"prompt": "Neon-lit city street at night, rain reflections", "type": "image"},
  {"prompt": "Camera slowly panning across a rooftop at sunset", "type": "video"},
  "A lone figure walking through cherry blossoms"
]

2. Generate music

bash scripts/suno_music.sh \
  --prompt "가사 또는 설명" \
  --style "90s boy band pop, korean" \
  --title "너만을 원해" \
  --model V4_5ALL --custom \
  --outdir /tmp/mv_project

Options:

  • --model V4_5ALL (default), V5, V4_5PLUS, V4_5, V4
  • --instrumental — no vocals
  • --vocal-gender m|f — vocal gender hint
  • --negative-tags "Heavy Metal, Drums" — styles to avoid
  • --music-video — generate Suno native music video (MP4)
  • --dry-run — cost check only

Persona (일관된 스타일 유지):

  • --persona-id ID — 기존 페르소나 사용 (같은 보컬/스타일로 여러 곡 생성)
  • --create-persona — 생성된 곡에서 페르소나 생성 → persona.json 저장
  • --persona-name "이름" / --persona-desc "설명" / --persona-style "스타일"

Auto features:

  • 🎤 Timestamped Lyrics: Non-instrumental tracks automatically fetch lyrics timestamps and save as {outdir}/lyrics.srt
  • 🎬 Suno Native MV: With --music-video, Suno generates a visualized MP4 video directly
  • 🎭 Persona: With --create-persona, extracts voice/style identity for reuse

3. Generate visuals (custom MV flow)

bash scripts/gen_visuals.sh \
  --mode slideshow \
  --prompts-file /tmp/mv_project/prompts.json \
  --image-provider seedream \
  --outdir /tmp/mv_project

Or with OpenAI (cheaper, lower res):

bash scripts/gen_visuals.sh \
  --mode slideshow \
  --prompts-file /tmp/mv_project/prompts.json \
  --image-provider openai --image-model gpt-image-1-mini --image-quality medium \
  --outdir /tmp/mv_project

Add --dry-run first to show cost estimate before spending.

4. Assemble

bash scripts/assemble_mv.sh \
  --audio /tmp/mv_project/track_0_xxx.mp3 \
  --outdir /tmp/mv_project \
  --output /tmp/mv_project/final_mv.mp4 \
  --transition fade

Subtitle behavior:

  • Auto-detects {outdir}/lyrics.srt and overlays lyrics automatically
  • --subtitle /path/to/custom.srt — use custom SRT file
  • --no-subtitle — disable lyrics overlay entirely

Modes

Mode Visual Best For Cost (10 scenes)
slideshow AI images Fast, cheap ~$0.02 (mini low) / ~$0.09 (mini med) / ~$0.45 (Seedream)
video AI video clips Premium ~$1.40 (Seedance Lite) / ~$8.00 (Sora 2)
hybrid Mix of both Balanced ~$0.50-$4.00
suno-native Suno MV Easiest Suno credits only

Image cost is token-based — actual billing may be lower than listed estimates. Use --dry-run for precise cost.

Provider Options

Images: --image-provider seedream (recommended), openai, or google-together Image Model (OpenAI): --image-model gpt-image-1-mini (default, cheap) or gpt-image-1 (premium) Videos: --video-provider sora (default), sora-pro, seedance-lite, seedance-pro, veo-fast, veo-audio Quality: --image-quality low|medium|high

Cost Tracking

Every script outputs cost before and after. Always --dry-run first. Cost data saved to {outdir}/cost_estimate.json and {outdir}/visuals_meta.json.

Environment Variables

export SUNO_API_KEY="your-sunoapi-key"      # Required — sunoapi.org
export OPENAI_API_KEY="your-openai-key"     # Required — images + Sora video
export BYTEPLUS_API_KEY="your-byteplus-key" # Optional — Seedream 4.5 (recommended for images)
export TOGETHER_API_KEY="your-together-key" # Optional — Seedance, Veo, Imagen
export SUNO_CALLBACK_URL=""                 # Optional — see Callback URL below

⚠️ Required keys: SUNO_API_KEY and OPENAI_API_KEY must be set before running any script. BYTEPLUS_API_KEY is needed for Seedream image provider (sign up at console.byteplus.com, 200 free images). TOGETHER_API_KEY is only needed for Seedance/Veo/Imagen providers.

Callback URL

The Suno API requires a callBackUrl field for music generation requests. By default, if SUNO_CALLBACK_URL is not set, the script uses https://localhost/noop as a harmless no-op endpoint (an unreachable localhost URL that effectively disables callbacks).

To customize: set SUNO_CALLBACK_URL to your own endpoint, or set it to any dummy URL you control. The callback payload contains task metadata and audio URLs — no API keys are sent.

To disable: set SUNO_CALLBACK_URL=https://localhost/noop or any unreachable URL. Generation still works via polling; the callback is not required for the script to function.

Persona Workflow (채널 컨셉 유지)

YouTube 채널처럼 일관된 스타일로 여러 곡을 만들 때:

# 1. 첫 곡 생성 + 페르소나 만들기
bash scripts/suno_music.sh \
  --prompt "코드 리뷰하며 듣는 노래" \
  --style "indie rock, energetic, coding vibe" \
  --title "Pull Request" \
  --custom --create-persona \
  --persona-name "개발자 노동요 싱어" \
  --persona-desc "개발자가 코딩하며 듣기 좋은 에너지 넘치는 보컬. 인디록, 일렉, 팝 장르를 넘나든다." \
  --persona-style "indie rock, electronic, developer work music" \
  --outdir /tmp/dev-bgm-01

# 2. persona.json에서 personaId 확인
cat /tmp/dev-bgm-01/persona.json

# 3. 같은 페르소나로 다음 곡 생성 — 보컬/스타일 일관성 유지
bash scripts/suno_music.sh \
  --prompt "야근하면서 듣는 노래" \
  --style "electronic pop, night coding" \
  --title "Midnight Deploy" \
  --custom --persona-id \x3CPERSONA_ID> \
  --outdir /tmp/dev-bgm-02

페르소나는 보컬 특성 + 음악 스타일을 기억해서, 채널 전체의 통일감을 유지해줌.

Prerequisites

  • curl, python3, ffmpeg (for assembly)

References

  • SunoAPI details: Read references/sunoapi.md
  • Visual provider details: Read references/visual-providers.md
安全使用建议
This skill appears to do what it says: it will call Suno and OpenAI (and optionally BytePlus/Together) using the API keys you provide, download generated media, and assemble a final MP4 with ffmpeg. Before installing or running: 1) Only supply SUNO_API_KEY and OPENAI_API_KEY you trust for this use; treat optional keys (BYTEPLUS_API_KEY, TOGETHER_API_KEY) the same. 2) Run dry-run modes first (scripts support --dry-run) to verify cost estimates and behavior without spending credits. 3) Do not set SUNO_CALLBACK_URL to an endpoint you don't control — callbacks include task metadata and media URLs and could leak information if pointed at an attacker-controlled server. 4) Ensure you understand and accept the potential costs of image/video generation. 5) Review and run the bundled tests in a safe environment (no production keys) if you want to validate behavior before use.
功能分析
Type: OpenClaw Skill Name: ai-music-video Version: 1.2.4 The skill bundle appears benign. All scripts (`suno_music.sh`, `gen_visuals.sh`, `assemble_mv.sh`) use standard tools (`curl`, `python3`, `ffmpeg`) for their stated purpose of AI music and video generation. API keys are handled via environment variables and sent to legitimate AI service endpoints. Notably, `suno_music.sh` includes a strong security control by validating `SUNO_CALLBACK_URL` to only allow HTTPS or `https://localhost/noop`, preventing potential data exfiltration via arbitrary HTTP callbacks. Input sanitization is also present in `assemble_mv.sh` for `ffmpeg` arguments. No evidence of malicious execution, persistence, data exfiltration, or prompt injection against the agent was found in the code or `SKILL.md`.
能力评估
Purpose & Capability
The skill requires SUNO_API_KEY and OPENAI_API_KEY and the binaries curl, python3, ffmpeg — all are directly used by the included scripts for music generation, image/video generation, and assembly. Optional env vars (BYTEPLUS_API_KEY, TOGETHER_API_KEY) match documented optional providers. No unrelated credentials or binaries are requested.
Instruction Scope
Runtime instructions and scripts call external provider APIs (Suno, OpenAI, BytePlus, Together) using declared env keys, download generated media to the specified outdir, and write metadata/cost files. The Suno callback URL is supported and will be invoked if you set SUNO_CALLBACK_URL to an https endpoint — the code defaults to a no-op localhost URL if unset. This is expected for the workflow but is an avenue for sending task metadata (audio URLs, task ids) to an external endpoint if you configure it.
Install Mechanism
There is no install spec (instruction-only with bundled scripts). Nothing is downloaded or installed by the skill itself; scripts run with system binaries already required. This minimizes install-time risk.
Credentials
Requested environment variables (SUNO_API_KEY, OPENAI_API_KEY) are proportionate and required for the services the skill uses. Optional keys (BYTEPLUS_API_KEY, TOGETHER_API_KEY) are justified for the documented providers. No unrelated secrets (cloud provider keys, SSH keys, etc.) are requested.
Persistence & Privilege
The skill is not marked always:true and does not modify other skills or system-wide agent configs. It only writes outputs and metadata into user-specified outdir paths. Model invocation is allowed (default) which is normal for skills.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install ai-music-video
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /ai-music-video 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.2.4
Security fix: shell injection in assemble_mv.sh (filename escaping for ffmpeg concat lists), subtitle path escaping, python3 safe argv passing, SUNO_CALLBACK_URL restricted to https only
v1.2.3
- Changed the default SUNO_CALLBACK_URL to "https://localhost/noop" (previously "https://httpbin.org/post"), disabling callbacks by default instead of using a no-op echo service. - Updated SKILL.md documentation to clarify the new default and recommended practices for SUNO_CALLBACK_URL. - No functional script changes; documentation update only.
v1.2.2
- Improved robustness in scripts/assemble_mv.sh and scripts/suno_music.sh. - Minor fixes in test configuration (tests/conftest.py). - Updated metadata in _meta.json. - Documentation unchanged.
v1.2.1
Security fixes: default callback URL changed from httpbin.org to localhost/noop, fixed shell injection in prompt handling (temp file pattern), fixed broken conditional in gen_visuals.sh hybrid mode, added filename quoting in assemble_mv.sh
v1.2.0
v1.2.0: Add Seedream 4.5 (BytePlus) as recommended image provider. Add gpt-image-1-mini as default OpenAI model. Token-based cost tracking for accurate billing. Updated pricing tables and provider guide.
v1.1.0
v1.1.0: Security & metadata fixes per ClawHub review. - FIXED: Declared required env vars (SUNO_API_KEY, OPENAI_API_KEY) and optional (TOGETHER_API_KEY) in SKILL.md metadata - FIXED: callBackUrl is now configurable via SUNO_CALLBACK_URL env var (defaults to httpbin.org/post as harmless no-op; can be overridden or disabled) - FIXED: Corrected Suno API endpoints — /mp4/generate (music video), /generate/get-timestamped-lyrics (lyrics), /generate/generate-persona (persona), /mp4/record-info (MV polling) - FIXED: Sora 2 video API endpoint updated to POST /v1/videos (OpenAI) - Added documentation explaining callback behavior and how to disable it - Added Korean font note for subtitle rendering (fonts-nanum)
v1.0.0
Initial release: Suno V4.5/V5 music + OpenAI image/Sora video + ffmpeg assembly. Slideshow/video/hybrid modes. Timestamped lyrics SRT. Suno native MV. Persona support. Cost tracking. 25/25 tests passing.
元数据
Slug ai-music-video
版本 1.2.4
许可证
累计安装 10
当前安装数 10
历史版本数 7
常见问题

AI Music Video 是什么?

Generate AI music videos end-to-end. Creates music with Suno (sunoapi.org), generates visuals with OpenAI/Seedream/Google/Seedance, and assembles into music... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 1340 次。

如何安装 AI Music Video?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install ai-music-video」即可一键安装,无需额外配置。

AI Music Video 是免费的吗?

是的,AI Music Video 完全免费(开源免费),可自由下载、安装和使用。

AI Music Video 支持哪些平台?

AI Music Video 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 AI Music Video?

由 Taejin Yoo(@gprecious)开发并维护,当前版本 v1.2.4。

💬 留言讨论