vcesdk

package
v0.0.0-...-1031b17 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 7, 2024 License: MulanPSL-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// 基地址
	OpenSpeechUrl = "https://openspeech.bytedance.com"
	OpenApiUrl    = "https://open.volcengineapi.com"

	// 语言种类
	LanguageCn = 0 // 中文(默认)
	LanguageEn = 1 // 英文
	LanguageJa = 2 // 日语
	LanguageEs = 3 // 西班牙语
	LanguageId = 4 // 印尼语
	LanguagePt = 5 // 葡萄牙语

	// 音频训练状态
	TtsStatusNotFound = 0
	TtsStatusTraining = 1
	TtsStatusSuccess  = 2
	TtsStatusFailed   = 3
	TtsStatusActive   = 4

	// 音色训练状态
	SpeakerStateUnknown   = "Unknown"   // SpeakerID尚未进行训练
	SpeakerStateTraining  = "Training"  // 声音复刻训练中(长时间处于复刻中状态请联系火山引擎技术人员)
	SpeakerStateSuccess   = "Success"   // 声音复刻训练成功,可以进行TTS合成
	SpeakerStateActive    = "Active"    // 已激活(无法再次训练)
	SpeakerStateExpired   = "Expired"   // 火山控制台实例已过期或账号欠费
	SpeakerStateReclaimed = "Reclaimed" // 火山控制台实例已回收

	// 音色列表,https://www.volcengine.com/docs/6561/1257544
	// 通用场景
	VoiceTypeSkss  = "zh_female_shuangkuaisisi_moon_bigtts"    // 爽快思思/Skye,中文、英文
	VoiceTypeWnah  = "zh_male_wennuanahu_moon_bigtts"          // 温暖阿虎/Alvin,中文、英文
	VoiceTypeSnzx  = "zh_male_shaonianzixin_moon_bigtts"       // 少年梓辛/Brayan,中文、英文
	VoiceTypeJqkyM = "multi_male_jingqiangkanye_moon_bigtts"   // かずね(和音)/Javier or Álvaro,日语、西语
	VoiceTypeSkssM = "multi_female_shuangkuaisisi_moon_bigtts" // はるこ(晴子)/Esmeralda,日语、西语
	VoiceTypeGlyjM = "multi_female_gaolengyujie_moon_bigtts"   // あけみ(朱美),日语
	VoiceTypeWqdsM = "multi_male_wanqudashu_moon_bigtts"       // ひろし(広志)/Roberto,日语、西语
	VoiceTypeLjnfh = "zh_female_linjianvhai_moon_bigtts"       // 邻家女孩,中文
	VoiceTypeYbxs  = "zh_male_yuanboxiaoshu_moon_bigtts"       // 渊博小叔,中文
	VoiceTypeYgqn  = "zh_male_yangguangqingnian_moon_bigtts"   // 阳光青年,中文
	VoiceTypeTmxy  = "zh_female_tianmeixiaoyuan_moon_bigtts"   // 甜美小源,中文
	VoiceTypeQczz  = "zh_female_qingchezizi_moon_bigtts"       // 清澈梓梓,中文
	VoiceTypeJsxm  = "zh_male_jieshuoxiaoming_moon_bigtts"     // 解说小明,中文
	VoiceTypeKljj  = "zh_female_kailangjiejie_moon_bigtts"     // 开朗姐姐,中文
	VoiceTypeLjnmh = "zh_male_linjiananhai_moon_bigtts"        // 邻家男孩,中文
	VoiceTypeTmyy  = "zh_female_tianmeiyueyue_moon_bigtts"     // 甜美悦悦,中文
	VoiceTypeXljt  = "zh_female_xinlingjitang_moon_bigtts"     // 心灵鸡汤,中文
	// 趣味方言
	VoiceTypeJqky = "zh_male_jingqiangkanye_moon_bigtts"    // 京腔侃爷/Harmony,中文、英文
	VoiceTypeWwxh = "zh_female_wanwanxiaohe_moon_bigtts"    // 湾湾小何,中文
	VoiceTypeWqds = "zh_female_wanqudashu_moon_bigtts"      // 湾区大叔,中文
	VoiceTypeDmcm = "zh_female_daimengchuanmei_moon_bigtts" // 呆萌川妹,中文
	VoiceTypeGzdg = "zh_male_guozhoudege_moon_bigtts"       // 广州德哥,中文
	VoiceTypeBjxy = "zh_male_beijingxiaoye_moon_bigtts"     // 北京小爷,中文
	VoiceTypeHyxg = "zh_male_haoyuxiaoge_moon_bigtts"       // 浩宇小哥,中文
	VoiceTypeGxyz = "zh_male_guangxiyuanzhou_moon_bigtts"   // 广西远舟,中文
	VoiceTypeMtje = "zh_female_meituojieer_moon_bigtts"     // 妹坨洁儿,中文
	VoiceTypeYzzx = "zh_male_yuzhouzixuan_moon_bigtts"      // 豫州子轩,中文
	// 角色扮演
	VoiceTypeGlyj = "zh_female_gaolengyujie_moon_bigtts" // 高冷御姐,中文
	VoiceTypeAjbz = "zh_male_aojiaobazong_moon_bigtts"   // 傲娇霸总,中文
	VoiceTypeMlny = "zh_female_meilinvyou_moon_bigtts"   // 魅力女友,中文
	VoiceTypeSybk = "zh_male_shenyeboke_moon_bigtts"     // 深夜播客,中文
	VoiceTypeSjny = "zh_female_sajiaonvyou_moon_bigtts"  // 柔美女友,中文
	VoiceTypeYqvy = "zh_female_yuanqinvyou_moon_bigtts"  // 撒娇学妹,中文
	VoiceTypeBrsn = "ICL_zh_female_bingruoshaonv_tob"    // 病弱少女,中文
	VoiceTypeHpnh = "ICL_zh_female_huoponvhai_tob"       // 活泼女孩,中文
	VoiceTypeHann = "ICL_zh_female_heainainai_tob"       // 和蔼奶奶,中文
	VoiceTypeLjay = "ICL_zh_female_linjuayi_tob"         // 邻居阿姨,中文
	VoiceTypeWrxy = "zh_female_wenrouxiaoya_moon_bigtts" // 温柔小雅,中文
	VoiceTypeDfhr = "zh_male_dongfanghaoran_moon_bigtts" // 东方浩然,中文
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ApiMetaResponse

type ApiMetaResponse struct {
	RequestId string `json:"RequestId"`
	Action    string `json:"Action"`
	Version   string `json:"Version"`
	Service   string `json:"Service"`
	Region    string `json:"Region"`
}

API的应答元数据

type CommonResponse

type CommonResponse struct {
	StatusCode    int    `json:"StatusCode"`    // 成功:0
	StatusMessage string `json:"StatusMessage"` // 错误信息
}

基础应答信息

type TtsAudioUploadRequest

type TtsAudioUploadRequest struct {
	AppId       string // AppID
	AccessToken string // 服务的Access Token
	SpeakerId   string // 唯一音色代号
	AudioData   string // 音频文件内容,base64编码
	AudioFormat string // 音频文件格式,支持wav、mp3、ogg、m4a、aac、pcm
	Language    int    // (可选) 语言,参见constant.go/Language
}

type TtsAudioUploadResponse

type TtsAudioUploadResponse struct {
	BaseResp  CommonResponse `json:"BaseResp"`
	SpeakerId string         `json:"speaker_id"` // 唯一音色代号
}

func TtsAudioUpload

func TtsAudioUpload(req TtsAudioUploadRequest) (rsp TtsAudioUploadResponse, err error)

声音复刻API-2.0 创建音色-训练 https://www.volcengine.com/docs/6561/1305191

type TtsBatchListItem

type TtsBatchListItem struct {
	SpeakerID              string `json:"SpeakerID"`              // 音色ID
	CreateTime             int64  `json:"CreateTime"`             // 创建时间,单位毫秒
	ExpireTime             int64  `json:"ExpireTime"`             // 过期时间,单位毫秒
	DemoAudio              string `json:"DemoAudio"`              // 样例语音URL链接
	InstanceNO             string `json:"InstanceNO"`             // 火山引擎实例序号
	IsActivatable          bool   `json:"IsActivatable"`          // 是否可激活
	State                  string `json:"State"`                  // 音色状态,参见constant.go/SpeakerState
	Version                string `json:"Version"`                // 音色已训练过的次数
	Alias                  string `json:"Alias"`                  // 别名,和控制台同步
	AvailableTrainingTimes int64  `json:"AvailableTrainingTimes"` // 可用剩余训练次数
}

type TtsBatchListRequest

type TtsBatchListRequest struct {
	AppId           string // AppID
	AccessKey       string // 用户的密钥
	SecretAccessKey string // 用户的密钥
	PageNumber      int64  // 页码,从1开始
	PageSize        int64  // 页大小
}

type TtsBatchListResponse

type TtsBatchListResponse struct {
	MetaData ApiMetaResponse `json:"ResponseMetadata"`
	Result   struct {
		List       []TtsBatchListItem `json:"Statuses"`   // 音色列表
		PageNumber int64              `json:"PageNumber"` // 页码
		PageSize   int64              `json:"PageSize"`   // 页大小
		TotalCount int64              `json:"TotalCount"` // 总数量
	} `json:"Result"`
}

func TtsBatchList

func TtsBatchList(req TtsBatchListRequest) (rsp TtsBatchListResponse, err error)

声音复刻API-2.0 分页查询SpeakerID状态-BatchListMegaTTSTrainStatus https://www.volcengine.com/docs/6561/1305191 Region = "cn-north-1" Service = "speech_saas_prod" Version = "2023-11-07"

type TtsListItem

type TtsListItem struct {
	SpeakerID              string `json:"SpeakerID"`              // 音色ID
	CreateTime             int64  `json:"CreateTime"`             // 创建时间,单位毫秒
	ExpireTime             int64  `json:"ExpireTime"`             // 过期时间,单位毫秒
	DemoAudio              string `json:"DemoAudio"`              // 样例语音URL链接
	InstanceNO             string `json:"InstanceNO"`             // 火山引擎实例序号
	IsActivatable          bool   `json:"IsActivatable"`          // 是否可激活
	State                  string `json:"State"`                  // 音色状态,参见constant.go/SpeakerState
	Version                string `json:"Version"`                // 音色已训练过的次数
	Alias                  string `json:"Alias"`                  // 别名,和控制台同步
	AvailableTrainingTimes int64  `json:"AvailableTrainingTimes"` // 可用剩余训练次数
}

type TtsListRequest

type TtsListRequest struct {
	AppId           string // AppID
	AccessKey       string // 用户的密钥
	SecretAccessKey string // 用户的密钥
}

type TtsListResponse

type TtsListResponse struct {
	MetaData ApiMetaResponse `json:"ResponseMetadata"`
	Result   struct {
		List []TtsListItem `json:"Statuses"` // 音色列表
	} `json:"Result"`
}

func TtsList

func TtsList(req TtsListRequest) (rsp TtsListResponse, err error)

声音复刻API-2.0 查询SpeakerID状态-ListMegaTTSTrainStatus https://www.volcengine.com/docs/6561/1305191 Region = "cn-north-1" Service = "speech_saas_prod" Version = "2023-11-07"

type TtsMergeRequest

type TtsMergeRequest struct {
	AppId           string  // AppID
	AccessToken     string  // 服务的Access Token
	IsSystemVoice   bool    // 是否是系统音色,false表示是复刻音色
	VoiceType       string  // 声音类型,复刻音色使用声音ID(speaker id)
	UserId          string  // 可传入任意非空值,传入值可以通过服务端日志追溯
	Text            string  // 合成语音的文本,长度限制1024字节(UTF-8编码)。复刻音色没有此限制,但是HTTP接口有60s超时限制
	Rate            int     // (可选) 音频采样率,默认为24000,可选8000,16000
	Encoding        string  // (可选) 音频编码格式,支wav/pcm/ogg_opus/mp3,默认为pcm
	CompressionRate int     // (可选) opus格式时编码压缩比,[1, 20],默认为 1
	SpeedRatio      float32 // (可选) 语速,复刻音色[0.2,3],系统音色[0.8,2],默认为1,通常保留一位小数即可
	SilenceDuration int     // (可选) 句尾静音时长,单位为ms,默认为125
	Language        int     // (可选) 语言,参见constant.go/Language
}

type TtsMergeResponse

type TtsMergeResponse struct {
	ReqID     string `json:"reqid"`     // 请求ID,与传入的参数中reqid一致
	Code      int    `json:"code"`      // 请求状态码,成功3000
	Message   string `json:"message"`   // 请求状态信息
	Sequence  int    `json:"sequence"`  // 音频段序号,负数表示合成完毕
	Data      string `json:"data"`      // 合成音频,返回的音频数据,base64编码
	Operation string `json:"operation"` // 操作,query(非流式,http只能query) / submit(流式)
	Addition  struct {
		Duration string `json:"duration"` // 音频时长,返回音频的长度,单位ms
		Frontend string `json:"frontend"` // 包含字级别和音素级别的时间戳信息
	} `json:"addition"` // 额外信息
}

func TtsMerge

func TtsMerge(req TtsMergeRequest) (rsp TtsMergeResponse, err error)

声音复刻API-2.0 TTS-语音合成接口 https://www.volcengine.com/docs/6561/1305191 语音合成API https://www.volcengine.com/docs/6561/1305191

type TtsStatusRequest

type TtsStatusRequest struct {
	AppId       string // AppID
	AccessToken string // 服务的Access Token
	SpeakerId   string // 唯一音色代号
}

type TtsStatusResponse

type TtsStatusResponse struct {
	BaseResp   CommonResponse `json:"BaseResp"`
	SpeakerId  string         `json:"speaker_id"`  // 唯一音色代号
	Status     int            `json:"status"`      // 训练状态,状态为2或4时都可以调用tts,参见constant.go/TtsStatus
	CreateTime int64          `json:"create_time"` // 创建时间,单位毫秒
	Version    string         `json:"version"`     // 训练版本
	DemoAudio  string         `json:"demo_audio"`  // 样例音频URL,Success状态时返回,一小时有效,若需要,请下载后使用
}

func TtsStatus

func TtsStatus(req TtsStatusRequest) (rsp TtsStatusResponse, err error)

声音复刻API-2.0 创建音色-状态查询 https://www.volcengine.com/docs/6561/1305191

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL