Files
MediaCrawler/mac-agent-os-main/05_tools/09_ave/PLANS/BGM_LIBRARY.md
T
butubb 2112c1a870
Deploy VitePress site to Pages / build (push) Canceled after 0s
Deploy VitePress site to Pages / Deploy (push) Canceled after 0s
feat(monitor): 抖音 Web 接口客户端 —— 绕开爬虫子进程,直接发 HTTP
移植自 mac-agent-os 的 mediacrawler_adapter:不起子进程、不开页面,用浏览器里那份
登录态直接调抖音 Web 接口。产物键名照抄 store/douyin,所以 ingest 那条链路一个字不用改。

**目前能用的(真环境实测,非推断)**:

    profile/other : 200, 7075 字节  —— 博主主页指标(粉丝/获赞/作品数/昵称)
    aweme/detail  : 200, 45425 字节 —— 单条作品详情(含点赞/评论/收藏/分享)

**目前不能用的:作品列表 `aweme/post`。** 两个互相独立的原因:
  1. 这个接口被抖音单独升级成了真校验:不带 x-tt-argus 回 403「Uifid Not Found」,
     带上 dummy 值回 200 + **空 body**。也就是说「头在不在」骗得过,「真校验」过不了。
     同一套头打 profile/other 和 aweme/detail 都是通的 —— 抖音是挑着接口加保护的,
     挑中的恰好是「批量拉作品列表」这个最敏感的动作。
  2. 改走页面截获也不行:CDP 浏览器打开博主主页会落到「验证码中间页」(当天大量探测的
     代价,过几小时要重测)。

  所以现在的边界是:**已知作品的指标刷新能做,自动发现新作品做不了**。

**排查中控住变量后得到的两条事实**(都写进注释了):
  · `Accept` / `Accept-Language` / `Referer` 才是主页接口能返回真数据的原因 —— 只有
    UA+client hints+Cookie 时是 200 但仅 121 字节的空壳,补上这三个头变 7074 字节。
    (我先前猜的 sec-ch-ua 不是关键。)
  · 因此 UA 与 client hints 必须**成套地取自同一个浏览器**,所以 BrowserIdentity 一次
    从 CDP 取齐 cookie + UA + hints,而不是各自写死。

「200 + 空 body 必须当场报错」也是刻意写死的:放过去它会在下游变成「这个博主没作品」,
把一次失败伪装成一条正常结果 —— 爬虫那条路正是这么栽的,还被翻译成「账号被封」。

测试 +11:cookie 解析、请求头成套性(含 uifid 缺失/回退)、产物键名与 store 对齐、
以及 _get 的三条失败路径(空 body / 403 带网关原话 / 正常返回)。
2026-10-10 17:12:25 +08:00

8.8 KiB

AVE BGM 素材库 v1.0

版本: 1.0 | 更新: 2026-05-13 用途: 人工选曲参考 + AI 生成参考 (mlx-audiocraft prompt 模板) 路径索引: 按情绪/场景/节奏三级分类


一、分类体系

按情绪 (Mood)

情绪 标签 BPM 范围 适用场景
激昂 epic, triumphant, powerful 100-130 科技突破、企业里程碑、颁奖
大气 cinematic, majestic, grand 70-90 新闻联播、国家成就、纪录片
紧张 suspenseful, intense, urgent 120-150 科技竞争、局势分析、倒计时
温馨 warm, gentle, cozy 60-80 励志金句、生活记录、情感故事
励志 inspiring, uplifting, motivational 80-110 金句合集、个人成长、正能量
轻松 happy, cheerful, light 90-120 Vlog、日常分享、旅游记录
科技感 futuristic, electronic, tech 110-130 芯片、AI、数码产品、演示
悬疑 mysterious, dark, ambient 50-70 深度分析、悬疑故事、揭秘
悲伤 sad, emotional, melancholic 55-75 感人故事、离别、怀旧

按场景 (Scene)

场景 首选情绪 备选 典型时长
科技新闻/芯片突破 激昂 科技感、紧张 15-45s
励志金句/正能量 励志 温馨、轻松 30-60s
品牌宣传/企业视频 大气 激昂、科技感 30-90s
故事讲述/叙事 温馨 悬疑、悲伤 60-180s
卡点视频/节奏混剪 激昂 轻松、励志 15-30s
片头/片尾 大气 激昂、励志 3-8s
科普/知识分享 轻松 温馨、科技感 30-120s

二、推荐曲库

🏆 激昂 · Epic (科技新闻/芯片突破)

曲名 BPM 时长 版权 获取 AI Prompt
Heroes Today 120 2:30 CC0 YouTube Audio Library epic orchestral, brass and strings, powerful drums, triumphant, building tension, 120 BPM, no vocals
The Rising 115 3:00 CC0 Free Music Archive cinematic orchestral, rising strings, heroic brass, driving percussion, 115 BPM, no vocals
Epic Cinematic 110 2:45 CC0 Pixabay Music epic cinematic, orchestral hits, powerful crescendo, 110 BPM, no vocals
Beyond the Stars 105 3:30 CC0 YouTube Audio Library uplifting cinematic, building strings, triumphant brass, space ambient, 105 BPM, no vocals

🏆 大气 · Cinematic (品牌/新闻/纪录片)

曲名 BPM 时长 版权 获取 AI Prompt
Inspire 85 3:15 CC0 YouTube Audio Library cinematic ambient, gradual build, orchestral swells, inspiring, 85 BPM, no vocals
Echoes of Truth 75 4:00 CC0 Free Music Archive cinematic ambient, serious tone, orchestra and choir, majestic, 75 BPM, no vocals
Last Dawn 80 2:50 CC0 Pixabay Music cinematic slow build, atmospheric pads, emotional strings, 80 BPM, no vocals
Documentary Background 90 3:00 CC0 Pixabay Music documentary style, soft piano, ambient strings, professional, 90 BPM, no vocals

🏆 励志 · Inspiring (金句/正能量/成长)

曲名 BPM 时长 版权 获取 AI Prompt
Uplifting Piano 95 2:30 CC0 Pixabay Music uplifting piano, soft strings, warm and emotional, inspirational, 95 BPM, no vocals
Never Give Up 100 3:00 CC0 YouTube Audio Library motivational rock, driving beat, uplifting melody, 100 BPM, no vocals
Warm Hope 85 2:40 CC0 Pixabay Music warm acoustic guitar, soft piano, hopeful, gentle rise, 85 BPM, no vocals
Morning Motivation 105 2:20 CC0 YouTube Audio Library upbeat motivational, light percussion, cheerful piano, 105 BPM, no vocals

🏆 科技感 · Tech (数码/AI/产品演示)

曲名 BPM 时长 版权 获取 AI Prompt
Digital Horizon 120 3:00 CC0 Pixabay Music electronic futuristic, synth pads, glitch beats, tech, 120 BPM, no vocals
Neon Lights 125 2:30 CC0 YouTube Audio Library electronic ambient, pulsing synth, modern tech feel, 125 BPM, no vocals
Innovation 110 2:45 CC0 Free Music Archive corporate tech, clean synth, modern electronic, professional, 110 BPM, no vocals

🏆 温馨/轻松 · Warm (生活/Vlog/故事)

曲名 BPM 时长 版权 获取 AI Prompt
Gentle Breeze 70 3:00 CC0 Pixabay Music soft ambient, gentle piano, nature sounds, relaxing, 70 BPM, no vocals
Sunny Day 95 2:15 CC0 YouTube Audio Library happy ukulele, cheerful melody, light percussion, 95 BPM, no vocals
Cozy Morning 80 2:30 CC0 Pixabay Music warm acoustic, soft guitar, cozy atmosphere, 80 BPM, no vocals

三、AI 生成参考 (mlx-audiocraft Prompt 模板)

以下 prompt 与上述曲库风格对应, 可用于 --use-mlx 模式生成类似风格的 BGM:

# 激昂 (对标 Heroes Today)
python main.py bgm --mood epic --duration 60 --use-mlx
# → prompt: epic orchestral, brass and strings, powerful drums, 120 BPM

# 大气 (对标 Inspire)
python main.py bgm --mood inspiring --duration 60 --use-mlx  
# → prompt: uplifting cinematic, building strings, triumphant, 85 BPM

# 励志
python main.py bgm --mood happy --duration 60 --use-mlx
# → prompt: bright ukulele, cheerful melody, acoustic guitar, 90 BPM

# 科技感 (使用 custom prompt)
HF_ENDPOINT=https://hf-mirror.com python main.py bgm --mood normal --duration 60 --use-mlx
# → 用自定义 prompt 覆盖: electronic futuristic, synth pads, 120 BPM

Prompt 优化技巧

效果 关键词
更激昂 epic, triumphant, powerful crescendo, building tension
更柔和 soft, gentle, warm, relaxing, smooth
更快节奏 driving beat, fast tempo, energetic
更有电影感 cinematic, orchestral, dramatic swells
更科技感 electronic, synth, futuristic, digital
更真实乐器 acoustic, piano, strings, live instruments
不要打击乐 no percussion, no drums
纯背景 ambient, background, subtle, pad

四、版权合规指南

来源 商用 需署名 费用 安全等级
Pixabay Music ✅ 可 ❌ 不强制 免费 🟢 安全
YouTube Audio Library ✅ 可 ⚠️ 部分需 免费 🟢 大部分安全
Free Music Archive (CC0) ✅ 可 ❌ 不强制 免费 🟢 安全
Free Music Archive (CC BY) ✅ 可 ⚠️ 必须 免费 🟡 需标注
爱给网 ✅ 可 ❌ ¥19-99/首 🟢 付费安全
曲多多 ✅ 可 ❌ ¥10-30/首 🟢 付费安全
耳聆网 ⚠️ 视具体 ⚠️ 视具体 免费/付费 🟡 需逐首确认
mlx-audiocraft AI 生成 ⚠️ 见下 ❌ 免费 🟡 需确认

mlx-audiocraft 商用说明

  • 模型权重: CC-BY-NC 4.0 (Meta 许可, 非商业)
  • 生成结果: 法律灰色地带, 建议非商用途
  • 替代: 如果用 Suno API 付费生成则无此顾虑

五、使用方式

人工选曲

# 查看此文档 → 按情绪/场景定位 → 按链接下载 → 放入对应目录
python bgm_generator/bgm_download.py list

AI 生成 (替代选曲)

# 直接生成对应情绪的 BGM (如激昂类型)
HF_ENDPOINT=https://hf-mirror.com python main.py bgm --mood epic --duration 60 --use-mlx

# 效果不满意可以加自定义 prompt
python -c "
from bgm_generator.suno import generate_bgm
generate_bgm(
    mood='custom',
    duration=60,
    output='/tmp/custom_bgm.wav',
    use_mlx=True,
)
# 内部会使用自定义 mood 的 prompt
"

与视频工厂集成

# 口播 + BGM (选 AI 生成或已有曲目)
python main.py video-factory --strategy 口播 --script script.yaml --bgm /path/to/bgm.wav --duck

# 卡点 + BGM (自动节拍检测)
python main.py video-factory --strategy 卡点 --bgm /path/to/bgm.wav --search "nature"

六、扩展曲库

如需扩充曲库, 推荐以下免费渠道:

渠道 数量 质量 获取方式
Pixabay Music 5万+ ⭐⭐⭐⭐ search --mood happy 打开浏览器下载
YouTube Audio Library 2万+ ⭐⭐⭐⭐⭐ 需科学上网
Free Music Archive 10万+ ⭐⭐⭐⭐ 需筛选 CC0 标签
耳聆网 3万+ ⭐⭐⭐ 含音效+音乐
爱给网 5万+ ⭐⭐⭐⭐ 付费商用 ¥19起
# 快速添加新曲目:
# 1. 下载 MP3 到 bgm_library/{mood}/ 目录
# 2. 运行 scan 入库
python bgm_generator/bgm_download.py scan