{"skill":{"slug":"accompaniment-generator","displayName":"伴奏提取器","summary":"从 YouTube 或本地音频文件分离人声和伴奏，生成纯伴奏音乐。当用户需要提取伴奏、消除人声、制作卡拉OK版音频时使用。支持三种模式：(1) 歌名+歌手搜索 YouTube 下载后分离，(2) 直接提供视频 URL，(3) 处理本地音频文件。","description":"---\nname: accompaniment-generator\ndescription: 从 YouTube 或本地音频文件分离人声和伴奏，生成纯伴奏音乐。当用户需要提取伴奏、消除人声、制作卡拉OK版音频时使用。支持三种模式：(1) 歌名+歌手搜索 YouTube 下载后分离，(2) 直接提供视频 URL，(3) 处理本地音频文件。\n---\n\n# 伴奏生成器 (Accompaniment Generator)\n\n## 概述\n\n从歌曲中分离人声，输出纯伴奏音乐。核心流程：获取音频 → Demucs AI 分离人声/伴奏 → 输出 MP3。\n\n> 💡 **无需手动导出 cookies！** 脚本会自动从本地 Chrome 浏览器提取登录态。\n> 只需在你自己的电脑上（已登录 Google）运行即可。\n\n## 核心脚本\n\n**`scripts/get_accompaniment.py`**\n\n### 使用模式\n\n```bash\n# 1. 搜索 YouTube + 下载 + 分离（自动用浏览器 cookies）\npython3 scripts/get_accompaniment.py \"歌名\" \"歌手名\"\n\n# 2. 直接提供视频 URL\npython3 scripts/get_accompaniment.py --url \"https://youtube.com/watch?v=xxx\"\n\n# 3. 处理本地音频文件\npython3 scripts/get_accompaniment.py --file /path/to/song.mp3\n\n# 4. 显式指定 cookies 文件（浏览器不可用时）\npython3 scripts/get_accompaniment.py \"歌名\" \"歌手\" --cookies cookies.txt\n```\n\n### 输出\n\n输出到 `~/accompaniment_output/` 目录，包含：\n- `{歌名}_伴奏.mp3` — 纯伴奏（已消除人声）\n- `{歌名}_人声.mp3` — 仅人声（可选）\n\n### 参数说明\n\n| 参数 | 说明 |\n|------|------|\n| `song` `artist` | 歌名和歌手（搜索用） |\n| `--url` | 直接指定视频 URL |\n| `--file (-f)` | 处理本地音频文件 |\n| `--output (-o)` | 输出目录 |\n| `--cookies` | YouTube cookies 文件路径（可选，默认用浏览器） |\n| `--json` | JSON 格式输出（供 agent 解析） |\n\n## 工作流程\n\n### 获取音频\n\n**YouTube 搜索 + 下载：**\n1. 用网页抓取 YouTube 搜索结果（无需 cookies）\n2. 选择第一个匹配结果\n3. 用 `yt-dlp` 下载音频（mp3，192kbps）\n4. 自动通过 `--cookies-from-browser chrome` 提取浏览器登录态\n\n> ⚠️ 如果 Chrome 不可用或未登录，脚本会报 \"NEEDS_COOKIES\"。\n> 此时可用 `--cookies cookies.txt` 手动指定 cookies 文件。\n>\n> **🔒 安全说明**：cookies 仅传递给 yt-dlp 用于 YouTube 下载认证，不会上传到其他服务。用完后建议删除 cookies 文件。\n\n**本地文件：**\n直接传入文件路径，跳过下载。\n\n### AI 分离\n\n使用 Demucs（htdemucs 模型）分离人声和伴奏：\n- `--two-stems vocals`：分离为 vocals + no_vocals\n- 输出 MP3 192kbps\n\n## 依赖安装\n\n```bash\n# yt-dlp（YouTube 下载）\npip install yt-dlp\n\n# Demucs（AI 人声分离，建议在虚拟环境中安装）\npip install demucs\n\n# ffmpeg（格式转换）\n# Ubuntu/Debian: sudo apt install ffmpeg\n# macOS: brew install ffmpeg\n\n# Deno（JS 运行时，可选，用于 YouTube 签名解算）\n# curl -fsSL https://deno.land/install.sh | sh\n```\n\n## Agent 集成\n\n使用 `--json` 参数获取结构化输出，便于自动化调用：\n\n```json\n{\"success\": true, \"song\": \"晴天\", \"accompaniment\": \"/path/to/伴奏.mp3\", \"vocals\": \"/path/to/人声.mp3\", \"accompaniment_size_mb\": 7.3}\n```\n","tags":{"latest":"1.0.1"},"stats":{"comments":0,"downloads":390,"installsAllTime":15,"installsCurrent":1,"stars":0,"versions":2},"createdAt":1778257125837,"updatedAt":1778776267493},"latestVersion":{"version":"1.0.1","createdAt":1778776184718,"changelog":"- Now extracts YouTube login cookies automatically from your local Chrome browser—no need to export cookies manually.\n- Added instructions and parameter options for both automatic and manual cookies handling.\n- Updated help and workflow explanation for easier use and improved troubleshooting if Chrome is unavailable.\n- No changes to core functionality or audio processing.","license":"MIT-0"},"metadata":null,"owner":{"handle":"gycdsj","userId":"s170qyets8z1f4rfcsxdc0a61n86ax5g","displayName":"GuoGe","image":"https://avatars.githubusercontent.com/u/44032706?v=4"},"moderation":{"isSuspicious":false,"isMalwareBlocked":false,"verdict":"clean","reasonCodes":["review.llm_review"],"summary":"Review: review.llm_review","engineVersion":"v2.4.24","updatedAt":1780090805343}}