68 lines
2.6 KiB
Go
68 lines
2.6 KiB
Go
package dto
|
||
|
||
import (
|
||
"gitea.redpowerfuture.com/red-future/common/beans"
|
||
"github.com/gogf/gf/v2/frame/g"
|
||
"github.com/gogf/gf/v2/os/gtime"
|
||
)
|
||
|
||
// CreateCustomVoiceReq 创建自定义音色请求
|
||
type CreateCustomVoiceReq struct {
|
||
g.Meta `path:"/createCustomVoice" method:"post" tags:"自定义音色" summary:"创建自定义音色" dc:"上传参考音频创建自定义音色"`
|
||
VoiceType string `json:"voiceType" v:"required" dc:"音色类型 design/clone(设计/克隆)"`
|
||
Name string `json:"name" v:"required" dc:"音色名称"`
|
||
Description string `json:"description" dc:"音色描述"`
|
||
Text string `json:"text" dc:"参考文本"`
|
||
// 参考音频
|
||
ReferenceAudio []byte `json:"referenceAudio" dc:"参考音频数据(base64编码的WAV文件,voiceType=clone 时必填)"`
|
||
}
|
||
|
||
// CreateCustomVoiceRes 创建自定义音色响应
|
||
type CreateCustomVoiceRes struct {
|
||
VoiceID string `json:"voiceId" dc:"音色ID"`
|
||
}
|
||
|
||
// ListCustomVoiceReq 获取自定义音色列表请求
|
||
type ListCustomVoiceReq struct {
|
||
g.Meta `path:"/listCustomVoices" method:"get" tags:"自定义音色" summary:"获取自定义音色列表" dc:"分页查询自定义音色列表"`
|
||
*beans.Page
|
||
}
|
||
|
||
// ListCustomVoiceRes 获取自定义音色列表响应
|
||
type ListCustomVoiceRes struct {
|
||
List []*CustomVoiceItem `json:"list" dc:"自定义音色列表"`
|
||
Total int64 `json:"total" dc:"总数"`
|
||
}
|
||
|
||
// CustomVoiceItem 自定义音色列表项
|
||
type CustomVoiceItem struct {
|
||
ID string `json:"id"`
|
||
Name string `json:"name"`
|
||
Description string `json:"description"`
|
||
Status int `json:"status" dc:"状态:0生成中/1成功/2失败"`
|
||
ErrorMsg string `json:"errorMsg" dc:"错误信息"`
|
||
OssFile string `json:"ossFile" dc:"结果文件OSS地址"`
|
||
CreatedAt *gtime.Time `json:"createdAt"`
|
||
UpdatedAt *gtime.Time `json:"updatedAt"`
|
||
}
|
||
|
||
// DeleteCustomVoiceReq 删除自定义音色请求
|
||
type DeleteCustomVoiceReq struct {
|
||
g.Meta `path:"/deleteCustomVoice" method:"delete" tags:"自定义音色" summary:"删除自定义音色" dc:"删除自定义音色"`
|
||
VoiceID string `json:"voiceId" v:"required" dc:"音色ID"`
|
||
}
|
||
|
||
// Qwen3VoiceCloneRequest Qwen3-TTS 音色克隆请求
|
||
type Qwen3VoiceCloneRequest struct {
|
||
Name string `json:"name"` // 音色名称
|
||
Audio string `json:"audio"` // base64编码的参考音频
|
||
Text string `json:"text"` // 参考文本(可选)
|
||
}
|
||
|
||
// Qwen3VoiceCloneResponse Qwen3-TTS 音色克隆响应
|
||
type Qwen3VoiceCloneResponse struct {
|
||
Code int `json:"code"`
|
||
Msg string `json:"msg"`
|
||
VoiceID string `json:"voice_id"` // 克隆后的音色ID
|
||
}
|