marytts

用纯 Java 实现多语言语音合成,快速集成到你的应用

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

项目预览

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

项目数据

分类音频音乐
开发团队marytts
定价模式🏷️完全免费
价格说明开源项目,完全免费,可自行部署使用。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议NOASSERTION
主要语言Java
技术栈/模型java,speech-synthesis,text-to-speech,tts
GitHub 星标★ 2580
上线时间2011-12-20 00:00:00
代码更新2025-01-17
仓库体积146.4 MB
本站数据更新2026-11-09
维护状态低维护
收录时间2026-08-09
浏览次数6

项目介绍

MARY TTS 是一个用纯 Java 编写的开源多语言文本转语音合成系统。它解决了开发者需要将文本转换为自然语音但缺乏跨平台、可扩展 TTS 引擎的问题。核心能力包括支持多种语言(如英语、德语、法语、意大利语等)、提供基于 HMM 和 Unit Selection 的合成器、支持实时语音合成、具备模块化架构便于扩展新语言和音色,并提供 Web 接口和 API 集成。它适用于语音助手、无障碍应用、教育工具等场景,是研究者和开发者在 Java 生态中实现 TTS 功能的可靠选择。

Star 增长趋势

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

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

使用教程

ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。

难度:入门 约 15 分钟 部署方式:本地安装 6 步

环境要求

  • 安装 JDK(MaryTTS 为纯 Java 程序,README 未指明具体版本)
  • 本地已安装 Git(用于获取源码仓库)
  • 操作系统需能运行 Gradle Wrapper:Linux/macOS 用 ./gradlew,Windows 用 gradlew.bat
  • 可用端口 59125(默认)或自定义端口

安装与启动步骤

  1. 1准备 Java 环境

    MaryTTS 是纯 Java 编写的客户端-服务器系统,可跨平台运行,先确保机器上已装好 JDK。

  2. 2获取源码

    从 GitHub 拉取源码仓库并进入目录;若只想直接使用,可改用 releases 页面的打包版本。

    git clone https://github.com/marytts/marytts.git
    cd marytts
  3. 3启动 MaryTTS 服务

    用仓库自带的 Gradle Wrapper 启动服务器,Windows 上请改用 gradlew.bat run。

    ./gradlew run
  4. 4打开 Web 界面

    服务启动后用浏览器访问默认地址和端口,即可看到 MaryTTS 页面并试用合成。

  5. 5改地址与端口

    通过系统属性指定新端口与监听地址,0.0.0.0 表示监听所有网卡;--info 可提升日志级别。

    ./gradlew run -Dsocket.port=5920 -Dsocket.addr=0.0.0.0 --info
  6. 6下载安装语音

    运行安装器 GUI 下载并安装更多音色,安装完成后必须重启已运行的 MaryTTS 服务器才能使用。

    ./gradlew runInstallerGui

关键配置

配置项必填说明示例
socket.port否指定 MaryTTS 服务监听的端口5920
socket.addr否指定监听地址,0.0.0.0 表示监听所有网卡接口0.0.0.0
log4j.logger.marytts否通过系统变量设置 MaryTTS 日志级别为 INFO 或 DEBUGDEBUG

如何确认成功

浏览器打开 http://localhost:59125 能看到 MaryTTS 页面,说明服务已启动成功。

常见问题

Q:默认端口 59125 被占用了怎么办?

A:启动时加上 -Dsocket.port=5920 换成其它可用端口,README 中的示例用的是 5920。

Q:想让局域网内其他机器访问服务?

A:使用 -Dsocket.addr=0.0.0.0 启动,此时所有网络接口都会被监听,再通过实际 IP 加端口访问。

Q:怎样看到更详细的运行日志?

A:启动命令加 --info 将 gradle 和 MaryTTS 日志设为 INFO,加 --debug 则设为 DEBUG,也可设置系统变量 log4j.logger.marytts。

Q:在 Windows 上执行命令报错?

A:Windows 上不能用 ./gradlew,应改用 gradlew.bat,例如 gradlew.bat run。

Q:新装的语音不生效?

A:安装语音后必须重启正在运行的 MaryTTS 服务器,新语音才能被加载使用。

注意事项

  • README 面向源码编译与开发,普通用户若只想直接使用,建议到 GitHub releases 页面下载现成包。
  • 项目采用 LGPL v3 许可证,使用与二次分发时请遵守相应条款。
  • IDE 配置可参考 wiki,其中 IntelliJ IDEA 与 Eclipse 已有测试文档。
  • README 未给出 JDK 版本要求,如编译或启动失败可优先检查 Java 版本兼容性。

核心亮点

  • 纯 Java 实现,跨平台部署无需额外原生依赖
  • 支持多语言和多种合成器(HMM/Unit Selection),灵活切换
  • 提供 Web 服务接口和 Java API,集成简单

不足之处

  • 项目维护活跃度较低,更新频率不高
  • 文档和社区资源相对有限,新手入门可能费劲

适用场景

  • 开发需要语音播报的 Java 桌面或 Web 应用
  • 构建多语言语音助手或无障碍阅读工具
  • 学术研究中的语音合成实验和原型验证

替代项目

FreeTTS、eSpeakNG、MaryTTS(本身)

上一篇:ChatTTS_colab

下一篇:pyttsx3

同类项目推荐

vall-e 开源

3秒参考音频,零样本克隆你的声音

An unofficial PyTorch implementation of VALL-E

★ 88 2026-08-09
obsidian-voice 开源

让 Obsidian 笔记开口说话,通勤路上也能听知识

The Obsidian Voice plugin lets you listen to your written content being read aloud—···

★ 93 2026-08-09
c-rnn-gan.pytorch 开源

用对抗网络生成连贯钢琴曲,上手即用

PyTorch implementation of C-RNN-GAN for Music Generation

★ 67 2026-08-09
VibeVoice 开源

开源语音AI,一句话生成多人自然对话音频

Open-Source Frontier Voice AI

★ 56803 2026-10-27
tihu 开源

让波斯语文本开口说话,离线合成自然语音

Persian Text-To-Speech

★ 85 2026-08-09
Auralis 开源

快速将文本转语音,低延迟集成到你的应用

A Fast TTS Engine

★ 623 2026-08-09
tts-audiobook-tool 开源

一个工具集成多种TTS模型,轻松制作高品质有声书

Audiobook creation app supporting too many TTS models (Qwen3-TTS, OmniVoice, VibeVoi···

★ 247 2026-08-09