Media Inbox Sync

unlisted

by diyiwuyan

Import Xiaoyuzhou, Bilibili, YouTube, and web media into structured local Markdown notes with transcripts, annotations, and optional AI summaries.

Updated 1mo agoMIT
View on GitHub

Media Inbox Sync

把小宇宙、B站、YouTube 和普通网页变成 Obsidian 里的本地 Markdown 知识资产:有意义的目录、带时间戳逐字稿、可持续批注,以及可选 AI 知识卡。

能做什么

  • 自动归档为 平台 / 播客、UP主或频道 / 标题.md,来源 ID 只存在 YAML 中,不污染文件名。
  • 小宇宙:标题、节目、作者、Shownotes、封面、音频、时长、发布时间,以及账号有权访问的官方逐字稿。
  • B站:标题、UP 主、简介、分区、封面、时长、发布时间和可用 CC 字幕。
  • 无字幕时可选 Deepgram 云端转写;也可手工粘贴逐字稿。
  • 每个时间片段都有稳定锚点。选中文字后运行“为选中逐字稿添加批注”,自动保存原文、时间点和心得。
  • 再次同步只更新机器生成内容,绝不覆盖“我的批注与心得”。
  • 可选 OpenAI 兼容接口,生成核心观点、章节、金句和追问。
  • 最近导入、连接状态、失败恢复和已有笔记一键整理。

安装与更新

Obsidian 社区插件

仓库已准备提交社区目录。通过审核后,在 Obsidian → 设置 → 第三方插件中搜索 Media Inbox Sync,以后可以直接在 Obsidian 内更新。

现在就用:BRAT 公测更新

  1. 在 Obsidian 社区插件中安装 BRAT
  2. 打开 BRAT 设置,选择 Add Beta plugin
  3. 粘贴仓库地址:https://github.com/diyiwuyan/media-inbox-sync
  4. BRAT 会安装发布版,并可检查后续更新。

手动安装

Releases 下载 main.jsmanifest.jsonstyles.css,放入:

<你的 Vault>/.obsidian/plugins/media-inbox-sync/

重启 Obsidian,在“设置 → 第三方插件”中启用。

使用

  1. 点击左侧收件箱图标,粘贴链接。

  2. 如平台没有字幕,可开启 Deepgram 转写,或展开高级选项粘贴自己的逐字稿。

  3. 笔记默认保存为:

    Media Inbox/小宇宙/节目名/标题.md
    Media Inbox/B站/分区或UP主/标题.md
    Media Inbox/YouTube/频道/标题.md
    Media Inbox/网页/网站域名/标题.md
    
  4. 阅读逐字稿时选中一句话,打开命令面板,运行“Media Inbox Sync: 为选中逐字稿添加批注”。

升级到 0.3.0 后,旧的 来源ID - 标题.md 会自动迁移;也可在插件设置点击“立即整理”。

逐字稿为什么有时没有

“简介 / Shownotes”和“逐字稿”是两种内容。插件按以下优先级处理:

  1. 平台已有字幕或用户有权访问的官方逐字稿。
  2. 用户主动开启的 Deepgram 云端转写。
  3. 用户手工粘贴的逐字稿。

如果只看到 Shownotes,说明平台没有向当前登录权限提供逐字稿。配置 Deepgram 后重新导入即可从公开音频生成带时间戳文本。长音频可能产生 Deepgram 费用。

隐私

  • 所有笔记都写入本地 Vault。
  • AI、Deepgram Key、B站 SESSDATA 和小宇宙 Access Token 都是可选项,明文保存在当前 Vault 的插件 data.json,请勿提交到 Git。
  • 只有在用户开启相应功能时,内容才会发送给用户配置的 AI 服务或 Deepgram;凭证不会发送给本项目作者。
  • 请只处理自己有权访问和用于个人知识管理的内容,并遵守来源平台条款与版权规则。

开发

npm install
npm run check

项目基于 Obsidian 官方插件 API,MIT 开源。产品调研和竞品借鉴见 docs/PRODUCT-RESEARCH.md

License

MIT

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.