Spaces:
Sleeping
Sleeping
from pydantic import BaseModel, Field | |
from typing import Any, Dict, List, Optional, Union | |
class EdgeProcessorData(BaseModel): | |
""" | |
:param text: 生成文本 | |
:param tts_speaker: 讲话人id | |
:param rate: 语速 | |
:param volume: 语气轻重 | |
""" | |
"""生成文本""" | |
text: str | |
"""讲话人id""" | |
tts_speaker: int | |
"""语速""" | |
rate: str | |
"""语气轻重""" | |
volume: str | |
class BarkProcessorData(BaseModel): | |
""" | |
:param text: 生成文本 | |
:param speaker_history_prompt: 音频预设npz文件 | |
:param text_temp: 提示特殊标记程序,趋近于1,提示词特殊标记越明显 | |
:param waveform_temp: 提示隐藏空间转音频参数比例 | |
""" | |
"""生成文本""" | |
text: str = Field(default="你好") | |
"""音频预设npz文件""" | |
speaker_history_prompt: str = Field(default='zh_speaker_2') | |
"""提示特殊标记程序,趋近于1,提示词特殊标记越明显""" | |
text_temp: float = Field(default=1) | |
"""提示隐藏空间转音频参数比例""" | |
waveform_temp: float = Field(default=0.9) | |
class VitsProcessorData(BaseModel): | |
"""生成文本""" | |
text: str = Field(default="你好") | |
"""语言- 序号 ['日本語', '简体中文', 'English', 'Mix'] """ | |
language: int = Field(default=1) | |
"""讲话人id""" | |
speaker_id: int = Field(default=0) | |
""" noise_scale(控制感情变化程度)""" | |
noise_scale: float = Field(default=0.5) | |
"""length_scale(控制整体语速)""" | |
speed: int = Field(default=1) | |
"""noise_scale_w(控制音素发音长度)""" | |
noise_scale_w: float = Field(default=1) | |
class RvcProcessorData(BaseModel): | |
model_index: int = Field(default=0) | |
""" 变调(整数, 半音数量, 升八度12降八度-12)""" | |
f0_up_key: int = Field(default=0) | |
""" F0曲线文件, 可选, 一行一个音高, 代替默认F0及升降调""" | |
f0_method: str = Field(default="rmvpe") | |
"""检索特征占比""" | |
index_rate: float = Field(default=0.9) | |
""" >=3则使用对harvest音高识别的结果使用中值滤波,数值为滤波半径,使用可以削弱哑音""" | |
filter_radius: int = Field(default=1) | |
"""输入源音量包络替换输出音量包络融合比例,越靠近1越使用输出包络""" | |
rms_mix_rate: int = Field(default=1) | |
"""后处理重采样至最终采样率,0为不进行重采样""" | |
resample_sr: float = Field(default=0) | |
"""保护清辅音和呼吸声,防止电音撕裂等artifact,拉满0.5不开启,调低加大保护力度但可能降低索引效果""" | |
protect: float = Field( | |
default=0.33 | |
) | |
f0_file: str = Field( | |
default=None | |
) | |
class BaseFlowData(BaseModel): | |
"""任务创建时间""" | |
created_at: float = Field(default=0) | |
"""任务请求时间""" | |
requested_at: float = Field(default=0) | |
class VitsVoiceFlowData(BaseModel): | |
vits: VitsProcessorData | |
rvc: RvcProcessorData | |
class RunnerParameter(BaseModel): | |
task_name: str = Field(default="vits_voice_task") | |
class BarkVoiceFlowData(BaseModel): | |
bark: BarkProcessorData | |
rvc: RvcProcessorData | |
class EdgeVoiceFlowData(BaseModel): | |
edge: EdgeProcessorData | |
rvc: RvcProcessorData | |
class PayLoad(BaseFlowData): | |
parameter: RunnerParameter | |
payload: Union[Dict, EdgeVoiceFlowData, BarkVoiceFlowData, VitsVoiceFlowData] | |