Files
ai-agent/digital-human/model/dto/custom_voice_dto.go
2026-06-10 15:29:21 +08:00

68 lines
2.6 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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
}