Twocast

一键把文章变成双人对话播客,多语言多音色,替代 NotebookLM

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 音频音乐 🍴 复刻 134 🐛 待处理 5 👀 关注 8
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 1290
维护状态 低维护
是否开源 开源
定价模式 🏷️完全免费 开源项目,可自行部署使用,无在线服务,全部功能免费。

项目预览

Twocast 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类音频音乐
开发团队panyanyany
定价模式🏷️完全免费
价格说明开源项目,可自行部署使用,无在线服务,全部功能免费。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
主要语言TypeScript
技术栈/模型podcast,podcast-generator,voice-cloning,voice-synthesis
GitHub 星标★ 1290
上线时间2025-06-20 00:00:00
代码更新2025-07-01
仓库体积4.4 MB
本站数据更新2026-11-07
维护状态低维护
收录时间2026-08-09
浏览次数6

项目介绍

Twocast 是一个开源的 AI 播客生成器,专注于生成双语音频节目,支持多语言和多音色,被视为 NotebookLM 的替代方案。它主要解决用户快速将文本内容(如文章、文档)转化为自然流畅的多人对话式播客的需求。核心能力包括:基于大型语言模型生成双人对话脚本,支持多种语言(如中英双语),提供多种 AI 音色选择,并能输出逼真的音频文件。项目采用 TypeScript 开发,架构清晰,适合开发者二次集成或自托管。目前项目处于成长阶段,社区活跃度较高,但文档和生态仍在完善中。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1290

使用教程

难度:进阶 约 20 分钟 部署方式:本地安装 6 步

环境要求

  • Node.js 与 yarn 包管理器(用于执行 yarn && yarn start)
  • Docker(用于启动 textract 和 ffmpeg-api 依赖服务,或使用 Docker 一键启动)
  • PostgreSQL 数据库,需手动创建名为 twocast 的库
  • Fish Audio API Key(TTS 必填),可选 Minimax、Google Gemini
  • OpenRouter 的 LLM API Key 与 x.ai 的 Search API Key

安装与启动步骤

  1. 1克隆项目代码

    从 GitHub 拉取 Twocast 源码到本地,之后所有命令都在项目根目录执行。

    git clone https://github.com/panyanyany/Twocast.git
    cd Twocast
  2. 2启动依赖服务

    用 Docker 启动 textract(文档解析,映射 8080)与 ffmpeg-api(音频处理,映射 8081)两个容器。

    docker run -t -d --restart always -p 8080:8080 -e PORT=8080 --name textract bespaloff/textract-rest-api:v4.0.2
    docker run -d --restart always --name ffmpeg-api -p 8081:3000 kazhar/ffmpeg-api
  3. 3配置环境变量

    复制示例文件生成 .env,然后按下方配置项填写 TTS 与 LLM 的密钥。

    cp .env.example .env
  4. 4初始化数据库

    先手动创建名为 twocast 的数据库,修改 .env 中 DATABASE_URL 指向它,再推送表结构。

    npx drizzle-kit push
  5. 5启动项目

    安装依赖并启动服务,首次会下载较多 npm 包,请耐心等待。

    yarn && yarn start
  6. 6Docker 一键启动

    不想本地配置依赖时,改用 Docker 方式启动;README 提示遇到问题应优先回到本地安装。

    cp .env.docker .env
    docker compose up

关键配置

配置项必填说明示例
FISH_AUDIO_TOKEN是Fish Audio 的 TTS API Key,语音合成主通道your_fish_audio_token
LLM_API_KEY是OpenRouter 的对话模型 API Key,用于生成播客脚本sk-or-v1-xxxxxxxx
LLM_SEARCH_API_KEY否x.ai 的搜索 API Key,用于话题/链接检索xai-xxxxxxxx
DATABASE_URL是PostgreSQL 连接串,需指向已创建的 twocast 库postgres://user:pass@localhost:5432/twocast
MINIMAX_TOKEN否Minimax 平台 API Key,启用后可作为 TTS 备选your_minimax_token
GEMINI_TOKEN否Google Gemini API Key,可选且成本更高your_gemini_token

如何确认成功

docker ps 能看到 textract 与 ffmpeg-api 容器在运行,且 yarn start 终端输出无报错,即视为启动成功。

常见问题

Q:Docker 一键启动报错怎么办?

A:README 明确建议:如果使用 Docker 方式遇到问题,请优先改用 Method 1 本地安装方式部署。

Q:如何生成 5-9 分钟的长播客?

A:选择 List Page(列表页)生成方式即可,普通话题、链接、文档方式生成的是 3-5 分钟节目。

Q:必须配置三种 TTS 平台吗?

A:不必。Fish Audio 的 FISH_AUDIO_TOKEN 填入即可,Minimax 和 Gemini 为可选,需分别设置 MINIMAX_ENABLED=1、GEMINI_ENABLED=1 才生效。

Q:npx drizzle-kit push 报数据库错误?

A:确认 PostgreSQL 中已创建 twocast 数据库,并且 .env 里的 DATABASE_URL 指向正确的主机、端口与库名后再执行。

注意事项

  • 项目支持 Fish Audio、Minimax、Google Gemini 三种语音合成平台,可多语言输出。
  • 生成结果包含音频、大纲和脚本三部分,音频支持下载。
  • Gemini 方案成本更高,属于可选配置。
  • 官方在线版为 twocast.app,可先体验效果再决定自托管。

核心亮点

  • 直接对标 NotebookLM,但开源可自托管,数据隐私可控
  • 支持多语言混合生成,适合双语学习或国际内容创作
  • 提供多种 AI 音色,对话自然度较高,生成流程自动化

不足之处

  • 文档和社区生态尚在早期,示例和教程不够丰富
  • 音色和语言覆盖有限,部分小众语言支持可能不完善

适用场景

  • 将博客文章或报告快速转化为双语播客,用于内容分发
  • 语言学习者通过 AI 对话音频练习听力与口语
  • 自媒体创作者批量生成音频内容,降低制作成本

替代项目

NotebookLM、Podcastly、AudioPen

上一篇:ComfyUI-Qwen3-TTS

下一篇:GenVC

同类项目推荐

wavegrad 开源

几步生成高保真语音,比 WaveNet 快几十倍

A fast, high-quality neural vocoder.

★ 300 2026-08-09
opencode-smart-voice-notify 开源

编码时用语音播报任务结果,不错过任何关键状态。

Smart voice notification plugin for OpenCode with multiple TTS engines (ElevenLabs, ···

★ 78 2026-08-09
ng2-pdfjs-viewer 开源

在 Angular 里快速嵌入 PDF 查看器,支持表单和自定义

#1 Angular PDF viewer

★ 253 2026-08-09
metavoice-src 开源

几秒样本克隆音色,生成有情感的真人级语音

Foundational model for human-like, expressive TTS

★ 4203 2026-08-09
ElevenLabs-DotNet 开源

用 C# 快速接入 ElevenLabs,实现高质量语音合成。

A Non-Official ElevenLabs RESTful API Client for dotnet

★ 99 2026-08-09
riffusion-hobby 开源

用 Stable Diffusion 实时生成音乐,输入文字即出旋律

Stable diffusion for real-time music generation

★ 3905 2026-08-09
ComfyUI-VoxCPM 开源

在 ComfyUI 里拖拽节点,即可生成高表现力语音并克隆任意声音。

ComfyUI node for highly expressive speech and realistic zero-shot voice cloning

★ 521 2026-08-09
TTS 开源

Java 项目直接调用的文本转语音工具

★ 2728 2026-11-08
voicefixer 开源

一键修复受损语音,去噪去混响去削波,让声音更清晰

General Speech Restoration

★ 1398 2026-08-09