TTS-papers

GitHub
726 79 困难 1 次阅读 3天前MPL-2.0开发框架音频其他
AI 解读 由 AI 自动生成,仅供参考

TTS-papers 是一个专注于语音合成(TTS)领域的开源论文合集,旨在为研究者和开发者提供一份系统化的学术资源导航。面对 TTS 技术快速迭代、相关文献浩如烟海的现状,它有效解决了科研人员难以高效追踪前沿算法、对比不同模型优劣的痛点。

该资源特别适合从事语音技术研究的学者、AI 工程师以及希望深入理解 TTS 原理的高级开发者使用。与普通工具不同,TTS-papers 不仅罗列了从经典的 Tacotron 系列到 FastSpeech、FlowTron 等主流模型的论文链接,还包含了部分论文的扩展解读与技术要点分析。其独特亮点在于涵盖了音素对齐、半监督训练、对抗生成网络(GAN)在 TTS 中的应用以及歌唱合成等细分方向,并简要指出了各模型的核心机制(如 FlowTron 的逆自回归流架构)与性能特征。通过这份清单,用户可以快速定位关键文献,洞察技术演进脉络,从而加速实验复现或新模型的研发进程。

使用场景

某语音合成初创团队的算法工程师正在研发一款支持多情感表达的有声书朗读系统,急需寻找能解决发音过度平滑和对齐不准问题的前沿方案。

没有 TTS-papers 时

  • 文献检索效率低下:工程师需在 arXiv、IEEE 等多个平台手动搜索关键词,耗时数天才能凑齐关于"Phoneme Timing"或"Over-Smoothness"的零散论文。
  • 技术选型盲目试错:面对 Tacotron2 的过度平滑问题,因缺乏如 Es-Tacotron2 或 DurIAN 等针对性方案的指引,团队只能盲目复述基础模型,反复调整超参数却收效甚微。
  • 关键细节容易遗漏:在复现 FlowTron 等复杂模型时,由于未参考 README 中关于“高斯混合模型嵌入”或“判别器架构”的详细摘要,导致模型训练收敛困难或音质不达标。
  • 前沿趋势把握滞后:难以快速识别出 FastSpeech 的前馈架构优势或端到端对抗生成(GAN-TTS)的最新进展,致使产品技术路线落后于行业主流。

使用 TTS-papers 后

  • 一站式精准获取:直接通过 TTS-papers 索引定位到《Es-Tacotron2》和《AlignTTS》等核心论文,将文献调研周期从数天缩短至几小时。
  • 痛点方案直击要害:依据库中对“减少过度平滑”和“时长感知”的明确标注,迅速引入预训练估计网络和时长控制机制,显著提升了语音的自然度和节奏感。
  • 实现细节清晰透明:利用库中提供的扩展摘要(Expansive Summaries),快速掌握 GAN-TTS 中字符对齐的损失函数设计及动态时间规整(DTW)的具体用法,大幅降低复现门槛。
  • 技术迭代有的放矢:基于整理的模型对比(如 MOS 值差异和模型大小分析),团队果断放弃笨重的旧架构,转向更高效的前馈模型,加速了产品落地进程。

TTS-papers 通过结构化整理前沿论文与实战要点,将语音合成研发从“大海捞针”转变为“按图索骥”,极大提升了算法迭代的准确率与速度。

运行环境要求

GPU

未说明

内存

未说明

依赖
notes该仓库(TTS-papers)并非一个可运行的 AI 工具或代码库,而是一个语音合成(TTS)领域相关学术论文的整理列表。README 内容主要包含论文标题、链接以及对部分论文(如 Glow-TTS, FastSpeech2, Parallel Tacotron2 等)的技术摘要和评论。文中提到的'Code'链接均指向其他独立的项目仓库(如 mozilla/TTS, jaywalnut310/glow-tts),本仓库本身不包含模型代码、训练脚本或推理环境,因此没有具体的操作系统、GPU、内存、Python 版本或依赖库要求。
python未说明
TTS-papers hero image

快速开始

(欢迎提出修改建议)

论文

扩展摘要

端到端对抗性文本转语音:http://arxiv.org/abs/2006.03575(点击展开)
  • 端到端前馈式TTS学习。
  • 字符对齐是通过一个单独的对齐模块完成的。
  • 对齐模块预测每个字符的长度。 - 根据前面所有字符的总长度确定当前字符的中心位置。 - 根据实际音频长度,用高斯窗口插值计算字符的位置。
    • 音频输出是在mu-law域中计算的。(对此我没有明确的理由)
    • 训练时仅使用2秒的音频窗口。
    • 使用GAN-TTS生成器来产生音频信号。
    • RWD被用作音频级别的判别器。
    • MelD:他们使用BigGAN-deep架构作为频谱级别的判别器,将问题视为图像重建。
    • 频谱损失
      • 仅靠对抗性反馈不足以学习字符对齐。因此,他们使用预测频谱与真实频谱之间的频谱损失。
      • 需要注意的是,模型预测的是音频信号,上述频谱是从生成的音频中计算出来的。
      • 使用动态时间规整来计算生成频谱与真实频谱之间的最小代价对齐。
      • 这涉及一种动态规划方法,以找到最小代价的对齐方式。
    • 对齐模块的长度损失用于惩罚对齐模块预测的长度与实际音频长度不符的情况。
    • 他们使用多说话人数据集训练模型,但报告结果时只针对表现最好的说话人。
    • 各组件的重要性排序:(长度损失和频谱损失) > RWD > MelD > 音素 > 多说话人数据集。
    • 我的看法:这是一个前馈模型,可以提供端到端的语音合成,而无需单独训练声码器模型。然而,它是一个非常复杂的模型,有许多超参数和实现细节。此外,最终结果也远未达到最先进水平。我认为我们需要找到专门用于学习字符对齐的算法,这样就可以减少对多种不同算法组合进行调优的需求。
Fast Speech2:http://arxiv.org/abs/2006.04558(点击展开)
  • 使用由MFA生成的音素持续时间作为标签,来训练长度调节器。
  • 他们还使用帧级F0和L2谱范数(方差信息)作为附加特征。
  • 方差预测模块在推理时会预测这些方差信息。
  • 消融实验结果显示改进效果:模型 < 模型 + L2范数 < 模型 + L2范数 + F0 image
Glow-TTS:https://arxiv.org/pdf/2005.11129.pdf(点击展开)
  • 使用单调对齐搜索来学习文本与频谱之间的对齐关系。
  • 这种对齐关系用于训练持续时间预测器,以便在推理时使用。
  • 编码器将每个字符映射到一个高斯分布。
  • 解码器使用归一化流(Glow层)将每个频谱帧映射到潜在向量。
  • 编码器和解码器的输出通过MAS进行对齐。
  • 在每次迭代中,首先通过MAS找到最可能的对齐方式,然后利用该对齐方式更新模型参数。
  • 训练一个持续时间预测器,用于预测每个字符对应的频谱帧数。
  • 在推理时,不再使用MAS,而是直接使用持续时间预测器。
  • 编码器采用了TTS变压器的架构,并进行了两次改进。
  • 他们没有使用绝对位置编码,而是使用相对位置编码。
  • 编码器的Prenet部分也加入了残差连接。
  • 解码器的架构与Glow模型相同。
  • 他们同时训练单说话人和多说话人模型。
  • 实验表明,与原始Tacotron2相比,Glow-TTS在处理长句子时更加稳健。
  • 推理速度比Tacotron2快15倍。
  • 我的看法:他们的样本听起来不如Tacotron自然。我认为传统的注意力模型仍然能够生成更自然的语音,因为注意力机制可以直接学习将字符映射到模型输出。不过,对于一些困难的数据集来说,Glow-TTS可能是一个不错的替代方案。
  • 样本:https://github.com/jaywalnut310/glow-tts
  • 仓库:https://github.com/jaywalnut310/glow-tts image
非自回归神经网络文本转语音:http://arxiv.org/abs/1905.08459(点击展开)
  • 一种使用非因果卷积层的Deep Voice 3模型变体。
    • 教师-学生范式,利用来自自回归教师模型的多个注意力块来训练非自回归的学生模型。
    • 教师模型用于生成文本到频谱图的对齐信息,供学生模型使用。
    • 模型采用两种损失函数进行训练:一种用于注意力对齐,另一种用于频谱图生成。
    • 多个注意力块逐层细化注意力对齐。
    • 学生模型使用点积注意力机制,包含查询、键和值向量。查询仅由位置编码向量构成,而键和值则来自编码器的输出。
    • 提出的模型与位置编码紧密相关,且依赖于不同的常数值。 image
双解码器一致性:https://erogol.com/solving-attention-problems-of-tts-models-with-double-decoder-consistency(点击展开)
  • 该模型采用类似Tacotron的架构,但配备了两个解码器和一个后网络。
  • DDC使用两个同步的解码器,分别采用不同的下采样率。
  • 由于解码器的下采样率不同,它们以不同的粒度计算输出,并学习输入数据的不同方面。
  • 模型利用这两个解码器之间的一致性来提高所学文本到频谱图对齐的鲁棒性。
  • 模型还通过多次迭代应用后网络对最终解码器的输出进行精炼。
  • DDC在预网络模块中使用批归一化,并去掉了Dropout层。
  • DDC采用渐进式训练方法,以缩短总训练时间。
  • 我们使用多频段MelGAN生成器作为声码器,并采用多个随机窗口判别器进行训练,这与原始工作有所不同。
  • 我们仅用一台GPU在两天内就完成了DDC模型的训练,最终模型能够在CPU上以超实时速度生成语音。 演示页面:https://erogol.github.io/ddc-samples/ 代码:https://github.com/mozilla/TTS image
并行Tacotron2:http://arxiv.org/abs/2103.14574(点击展开)
  • 不需要外部持续时间信息。
  • 通过Soft-DTW损失解决真实频谱图与地面真值频谱图之间的对齐问题。
  • 预测的持续时间通过一个学习得到的转换函数而非长度调节器转化为对齐关系,以解决四舍五入问题。
  • 模型基于从预测持续时间计算出的“标记边界网格”学习注意力图。
  • 解码器由6个“轻量级卷积”块组成。
  • 使用VAE将输入频谱图投影到潜在特征,并与字符嵌入合并作为网络的输入。
  • Soft-DTW计算量较大,因为它需要计算所有频谱帧之间的两两差异。为降低开销,他们限制在一个特定的对角线窗口内进行计算。
  • 最终的优化目标是持续时间损失、VAE损失和频谱图损失的总和。
  • 他们仅使用专有数据集进行实验 😦。
  • 在MOS评分上与Tacotron2模型持平,并优于ParallelTacotron。
  • 演示页面https://google.github.io/tacotron/publications/parallel_tacotron_2/index.html
  • 代码:目前尚无公开代码
WaveGrad2:https://arxiv.org/pdf/2106.09660.pdf(点击展开)
  • 它直接从音素序列计算原始波形。
  • 使用类似Tacotron2的编码器模型从音素中计算隐藏表示。
  • 类似无注意力Tacotron的软持续时间预测器,用于将隐藏表示与输出对齐。
  • 他们根据预测的持续时间扩展隐藏表示,并采样一定窗口将其转换为波形。
  • 他们探索了不同窗口大小,范围从64到256帧,对应0.8至3.2秒的语音。结果表明,窗口越大效果越好。
  • 演示页面:暂无
  • 代码:暂无

多说话人论文

扩展摘要

基于离散语音表示的半监督学习用于多说话人文本转语音合成:http://arxiv.org/abs/2005.08024
  • 仅使用一小时的配对数据(文本到语音对齐)以及更多的非配对数据(仅有语音)来训练多说话人TTS模型。
  • 模型学习一个代码本,每个代码词对应一个音素。
  • 通过配对数据和CTC算法将代码本与音素对齐。
  • 这个代码本充当代理,隐式估计非配对数据中的音素序列。
  • 他们在前面部分的基础上叠加Tacotron2模型,利用代码词嵌入执行TTS。
  • 在仅有一小时配对数据的情况下,他们的表现超过了基准方法。
  • 他们没有报告完整配对数据下的结果。
  • 缺乏充分的消融实验,无法清晰了解模型各部分对性能的贡献。
  • 他们使用Griffin-Lim作为声码器,因此仍有改进空间。

演示页面:https://ttaoretw.github.io/multispkr-semi-tts/demo.html
代码:https://github.com/ttaoREtw/semi-tts image

Attentron:基于注意力机制的可变长度嵌入的少样本文本到语音合成:https://arxiv.org/abs/2005.08484
  • 使用两个编码器来学习说话人相关的特征。
  • 粗粒度编码器根据提供的参考声谱图学习全局说话人嵌入向量。
  • 细粒度编码器与注意力模块协同工作,学习保留时间维度的可变长度嵌入。
  • 注意力机制会选择重要的参考声谱帧来合成目标语音。
  • 首先使用单说话人数据集对模型进行预训练(LJSpeech,3万次迭代)。
  • 然后使用多说话人数据集对模型进行微调。(VCTK,7万次迭代)。
  • 与使用说话人分类模型中的x-vector以及基于VAE的参考音频编码器相比,该方法在指标上略胜一筹。

演示页面:https://hyperconnect.github.io/Attentron/
image image

向通用文本到语音合成迈进:http://www.interspeech2020.org/uploadfile/pdf/Wed-3-4-3.pdf
  • 一种用于多语言序列到序列文本到语音合成的框架。
  • 该模型是在一个非常庞大且高度不平衡的数据集上训练的。
  • 在初始训练之后,该模型仅需6分钟的新语言数据和20秒的新说话人数据即可学会新的语言或说话人。
  • 模型架构是一个基于Transformer的编码器-解码器网络,包含说话人网络和语言网络,用于说话人和语言条件的调节。这些网络的输出会与编码器的输出拼接在一起。
  • 条件网络接收表示说话人或语言ID的独热向量,并将其映射为条件表示。
  • 它们使用WaveNet声码器将预测的梅尔频谱图转换为波形输出。
  • 他们采用语言依赖的音素输入,不同语言之间不共享音素。
  • 他们在每个批次中根据数据集中各语言出现频率的倒数进行采样,从而确保每个训练批次在语言分布上是均匀的,以缓解训练数据集中语言不平衡的问题。
  • 对于新说话人或新语言的学习,他们只对编码器-解码器模型及其条件网络进行微调,而不重新训练WaveNet模型。
  • 他们使用来自50种语言的1250小时专业录音作为训练数据。
  • 所有音频样本均采用16kHz采样率,并裁剪掉每个片段开头和结尾的静音部分。
  • 他们使用4块V100显卡进行训练,但并未提及训练持续了多长时间。
  • 实验结果表明,在MOS评分方面,单说话人模型的表现优于所提出的方案。
  • 此外,对于数据集中资源较少的语言来说,使用条件网络非常重要,因为它们可以提升这些语言的MOS评分,但却会降低高资源语言的表现。
  • 当添加新说话人时,他们发现使用超过5分钟的录音反而会降低模型性能。他们认为,由于这些录音的质量不如原始录音,因此使用更多这样的数据会影响模型的整体表现。
  • 多语言模型只需6分钟的新数据即可训练出新的说话人或语言,而单说话人模型则需要3个小时的训练,且即使如此也无法达到与6分钟多语言模型相同的MOS值。

image image

AdaSpeech:自适应文本到语音合成,用于定制声音:https://openreview.net/pdf?id=Drynvt7gg4L
  • 他们提出了一种能够适应用户不同输入声学特性的系统,并且仅使用最少数量的参数即可实现这一功能。
  • 主要架构基于FastSpeech2模型,该模型利用音高和方差预测器来学习输入语音的更细微特征。
  • 他们额外使用了3个条件网络。
  • 句子级网络:以参考语音的梅尔频谱图为输入。
  • 音素级网络:以音素级别的梅尔频谱图为输入,计算音素级别的条件向量。音素级别的梅尔频谱图是通过取每个音素持续时间内平均的频谱帧来计算的。
  • 音素级2:以音素编码器的输出为输入。这与上述网络的不同之处在于,它仅使用音素信息,而不查看频谱图。
  • 所有这些条件网络以及基础的FastSpeech2模型都使用层归一化层。
  • 条件层归一化:他们提出,当模型针对新说话人进行微调时,只需微调每一层归一化的尺度和偏置参数。他们为每个层归一化层训练了一个说话人条件模块,该模块会输出尺度和偏置值。(他们为每个Transformer块使用一个说话人条件模块。)
  • 这意味着,对于每个新说话人,你只需要存储对应的说话人条件模块,并在推理时预测尺度和偏置值,而模型的其余部分保持不变。
  • 在实验中,他们首先在LibriTTS数据集上对模型进行预训练,然后用VCTK和LJSpeech数据集对其进行微调。
  • 结果显示,使用条件层归一化的方法优于他们的两个基线方法,即仅使用说话人嵌入和微调解码器网络的方法。
  • 消融实验表明,模型中最重要的部分依次是“音素级”网络、条件层归一化以及“句子级”网络。
  • 该论文的一个重要缺点是几乎没有与现有文献的比较,这使得结果难以客观评估。

演示页面:https://speechresearch.github.io/adaspeech/
图片 图片 图片 图片 图片 图片


注意事项


声码器

WaveGrad:https://arxiv.org/pdf/2009.00713.pdf
  • 它基于概率扩散和朗之万动力学
  • 核心思想是逐步学习一个函数,将已知分布映射到目标数据分布。
  • 他们报告在GPU上实现了0.2倍实时速度,但未提及CPU性能。
  • 在下面的示例代码中,作者报告该模型在单个GPU上训练两天后即可收敛。
  • 论文中的MOS评分不够全面,但显示出与WaveRNN和WaveNet等知名模型相当的性能。

代码:https://github.com/ivanvovk/WaveGrad 图片

来自互联网(博客、视频等)

视频

论文讨论

演讲

一般

Jupyter笔记本

博客

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|1周前
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|1周前
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

156.8k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

108.3k|★★☆☆☆|5天前
开发框架图像Agent

gemini-cli

gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。

100.8k|★★☆☆☆|6天前
插件Agent图像

markitdown

MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|1周前
插件开发框架