HuggingFace镜像/Dramabox
模型介绍文件和版本分析
下载使用量0

DramaBox

Dramabox — 带语音克隆的情感化文本转语音

Discord

基于 Lightricks 的 LTX-2 构建。 Dramabox 是 Resemble AI 的情感化文本转语音系统,在 LTX-2 社区许可下,基于 LTX-2.3 音频分支训练而成。特别感谢 Lightricks 团队开源基础模型。

由 resemble-logo-horizontal 精心打造

Dramabox 是一款提示驱动型文本转语音系统,提示词本身掌控一切——包括说话人身份、情感、表达方式、笑声、叹息、呼吸、停顿和语气转换。只需提供 10 秒的语音参考,即可克隆目标音色。它是 LTX-2.3 3.3B 纯音频模型(扩散Transformer + 流匹配)的 IC-LoRA 微调版本,以 Gemma 3 12B 文本嵌入为条件。

🤗 模型ResembleAI/Dramabox
🎭 演示空间ResembleAI/Dramabox(ZeroGPU)
💻 代码resemble-ai/DramaBox
🏗️ 基础模型Lightricks/LTX-2.3
📜 许可LTX-2 社区许可 — 详见 LICENSE

快速开始

Python(热服务器 — 推荐,~2.5 秒/生成)

from src.inference_server import TTSServer

server = TTSServer(device="cuda")              # downloads weights on first run

server.generate_to_file(
    prompt='A woman speaks warmly, "Hello, how are you today?" '
           'She laughs, "Hahaha, it is so good to see you!"',
    output="output.wav",
    voice_ref="reference.wav",                  # optional, 10+ seconds of target voice
    cfg_scale=2.5,
    stg_scale=1.5,
    duration_multiplier=1.1,
    seed=42,
)

命令行界面

python src/inference.py \
    --prompt 'A woman speaks warmly, "Hello, how are you today?"' \
    --voice-sample reference.wav \
    --output output.wav \
    --cfg-scale 2.5 --stg-scale 1.5

推理参数

参数默认值功能说明
prompt—场景描述。对话内容置于 "双引号" 内,舞台指示置于引号外。详见下文“提示词格式”。
voice_ref(--voice-sample)None可选的 10 秒以上音频片段,模型将克隆其音色。若未提供,模型会选择与描述相符的声音。
cfg_scale2.5无分类器引导 —— 控制输出对提示词的遵循程度。值越低,输出越自然;值越高,文本忠实度越高,但戏剧化效果也越强。内部会自动重新缩放,以防止高 cfg 值时的信号削波(详见下文“自动缩放”)。
stg_scale1.5跳 token 引导 —— 通过扰动的 transformer 模块路径(模块 29)应用。可增强表达的强调感,且不会像 cfg 那样导致信号饱和。
duration_multiplier(--duration-multiplier)1.1自动估算语音长度的乘数(10% 的呼吸空间余量)。仅在 gen_duration(或 --gen-duration)为 0 时使用。
gen_duration(--gen-duration,“目标时长”滑块)0(自动)输出的明确时长(秒)。对于音乐或长场景,建议设置为 20–60 秒。当值 > 0 时,将覆盖基于提示词的估算时长。
ref_duration(--ref-duration,“参考时长”滑块)10.0模型用于音色条件学习的语音参考片段时长(3–30 秒)。参考片段越长,音色捕捉越丰富;参考片段越短,编码速度越快。
seed42用于结果复现。
rescale_scale(--rescale-scale)"auto"潜在空间 CFG 标准差缩放。默认是一个 cfg 感知的调度(cfg=2 以下为 0,cfg=10 时渐增至 1.0),确保在任何 cfg 值下输出峰值均低于 0 dBFS。可传入 [0, 1] 范围内的任意浮点数进行覆盖,或设为 0 以禁用。
watermark(--no-watermark 用于禁用)True对输出应用 Resemble Perth 不可感知的神经水印。该水印可在 MP3/AAC 格式转换、常见编辑操作后依然存在;检测准确率约为 100%。

提示词格式

<speaker description>, "<dialogue>" <action direction> "<more dialogue>"

双引号内 — 模型会逐字朗读以下内容:

  • 对话:"Hello, how are you?"
  • 拟声词(单个词,无分隔符):"Hahaha"、"Hehehe"、"Mmmmm"、"Ugh"、"Argh"、"Hmm"

引号外 — 舞台指示被解读为表演提示,不会被朗读:

  • She sighs deeply. · He clears his throat. · A long pause. · Her voice cracks. · He gulps nervously.

避免放在引号内(模型会逐字朗读该词):Sigh、Gasp、Cough、Ahem、Pfft。

示例输出

regal Queen — 从冷酷怒火到恶毒低语

一位高贵的女性用一种克制而低沉的声音说着,语气中带着冷酷的怒火。她深深叹了口气,"I have told you a thousand times, and yet here we are again." 她的声音因怒火渐升而变得尖锐,"Do you honestly think I enjoy repeating myself?! Do you?!" 她发出一声冰冷而嘲讽的笑,"Hahaha, how utterly pathetic you are." 她压低声音,凑近对方,用恶毒的耳语说道,"Now get out of my sight before I do something we will both regret."

参考音频

生成音频

Catgirl — 忍不住的咯咯笑

一个活泼的女孩用明亮、像唱歌一样的声音说着,已经笑到一半了,"Hehehe, oh my gosh you should see your face right now, it is priceless!" 她笑着笑着喘不过气来,"Oh my, hehe, oh my, I cannot stop laughing!" 她长叹了一口气,试图让自己平静下来,"Ahhhhh okay okay okay, I will stop, I promise I will stop." 她凑近,神秘兮兮地小声说,"But seriously though, between you and me," 然后又立刻忍不住了,"Haha, no I, hehehe, I just cannot! You are way too funny, haha!" 她笑着笑着还打了个鼻息,"Pfft, oh no no no, that was so embarrassing, pretend you did not hear that!"

参考音频

生成音频

反派——邪恶笑声

一个嗓音低沉的反派带着戏剧性的威胁口吻说话,起初轻笑几声:“嘿嘿嘿,哈哈哈哈哈!哦,原谅我,原谅我。”他带着邪恶的笑容喘了口气,清了清嗓子。“他们挣扎的样子实在是太有趣了,不是吗?”他的声音里充满了轻蔑,“说真的,我对你期望更高。太令人失望了。”他凑近,用恶毒而强烈的语气低语:“但别担心,亲爱的。真正的好戏才刚刚开始。”他最后又轻笑一声:“嘿嘿嘿。”

参考音频

生成音频

脱口秀主持人——喘息式笑声

一位脱口秀主持人带着活泼的热情说道。他夸张地倒吸一口气,表现出震惊的样子:“不!你不会真这么说了吧,告诉我你没这么说!”他爆发出无法控制的笑声:“哈哈哈哈!我的天,我的天!”他喘着气,几乎说不出话来:“我不行了,我现在真的喘不过气了!”他擦了擦眼睛,抽了抽鼻子:“哦,这太好笑了,真的太好笑了。”他愉快地叹了口气:“啊,好了好了,让我镇定一下,我是专业的。”他吸了一口气,然后立刻又笑了起来:“噗,嘿嘿嘿,不行,我实在忍不住了,非常抱歉各位!”他鼓了鼓掌:“各位,这,这就是我热爱这份工作的原因!”

参考音频

生成音频

足球解说员——马丁·泰勒

马丁·泰勒是一位沉稳且颇具权威的英国足球解说员,他的解说流畅从容、节奏得当,能以精准的时机把握和克制的戏剧张力逐步营造紧张氛围。“他来了……走进厨房……打开冰箱……”他语气平稳地说道,与此同时,想象中人群的低语声开始隐约响起。“你能感觉到这一刻……选择就在眼前……”他的声音沉稳而富有观察力。“牛奶……鸡蛋……剩菜……他在考虑……”短暂停顿,人群的期待感渐浓。“不……他从它们旁边走过了……”语气中略带一丝好奇。“这下有意思了……”人群的声音越来越大,低沉的嗡嗡声在这一刻不断增强。“他不慌不忙……权衡着每一个选择……”他继续平静地解说。现场突然安静下来。“等一下……他伸手了……”停顿被拉长——然后——“他拿到果汁了!”他的声音微微上扬,虽有控制但难掩激动。一瞬间的寂静之后,人群爆发出震耳欲聋的欢呼。“听听这声音!全场彻底沸腾了!”他的声音在鼎沸的欢呼声、呐喊声和雷鸣般的掌声中响起。“他们全都站起来了——对这纯粹的决断时刻,反应太热烈了!”他的声音在一片混乱中略微提高。欢呼声持续不断,回荡不止。“太不可思议的场面了……简直是不可思议……”他补充道,让这欢呼声承载着此刻的情绪。“最终……是果汁赢得了胜利……”他总结道,此时人群的声音虽仍在嗡嗡作响,但已渐渐平息。

参考音频

生成音频

后街男孩——流行和声

后街男孩是一支90年代末的成熟男子组合,拥有五名嗓音流畅、配合默契的男声,他们在纯净的流行音乐制作中融入了丰富而富有情感的和声层次。“一步一步……走出门外……新的一天……准备好迎接更多精彩……”他们以柔和且同步的和声唱道。其中一个声音挺身而出,以温暖而真挚的主唱引领。“钥匙在我手……计划已筹谋……准时出发……”其他人则以饱满的和声在他身后衬托。“别迟到……得行动……”接着是“城市在呼唤我的名字……”他们的声音一同升起,流畅而令人振奋。“告诉我为什么……每个早晨都感觉一成不变……”他们带着怀旧的温暖唱道。和声以精湛的技巧愈发紧密。“但我知道……我又要再次踏上征程……”然后是“咖啡在我手……”短暂停顿,声音此刻更为轻柔。“我准备好出发了……”整个组合以明亮而统一的合唱回归。“我们会闯出自己的路……”他们以充满自信的活力唱道。“穿过人潮,越过喧嚣,我们坚定前行,耶!”他们以流畅的多层次和声和积极向上的势头结束了演唱。

参考音频

生成音频

文件

文件大小内容
dramabox-dit-v1.safetensors6.6 GB纯音频 DiT(LoRA 已合并至基础模型)
dramabox-audio-components.safetensors1.9 GB音频嵌入连接器 + 音频文本投影 + 音频 VAE + 声码器
unsloth/gemma-3-12b-it-bnb-4bit~8 GB文本编码器(首次运行时自动下载)

显存:服务器预热后峰值约 24 GB。速度:H100 上预热后生成速度约为 2.5 秒/次。

水印

inference.py 和 TTSServer.generate_to_file 的所有输出均会使用 Resemble Perth 自动添加水印——这是一种不可感知的神经水印,能够经受 MP3 压缩、音频编辑和常见操作的考验,同时保持近 100% 的检测准确率。

import perth, librosa
wav, sr = librosa.load("output.wav", sr=None, mono=True)
detector = perth.PerthImplicitWatermarker()
print(detector.get_watermark(wav, sample_rate=sr))   # ≈ 1.0 for our outputs

通过传递 --no-watermark(命令行界面)或 watermark=False(Python)可禁用水印以进行调试。

许可与致谢

Dramabox 是基于 LTX-2 的 Resemble AI 微调模型。本项目根据 LTX-2 社区许可协议进行分发,请参见 LICENSE。再次感谢 Lightricks 发布基础模型。