40 lines
2.2 KiB
Go
40 lines
2.2 KiB
Go
package video
|
|
|
|
import "github.com/gogf/gf/v2/frame/g"
|
|
|
|
// ---------- 视频拼接+混音(异步) ----------
|
|
|
|
// VideoAudioMergeAsyncReq 视频拼接+混音异步请求
|
|
type VideoAudioMergeAsyncReq struct {
|
|
g.Meta `path:"/merge/async" method:"post" tags:"视频拼接+混音" summary:"视频拼接并混音(异步)" dc:"将多个视频拼接后混入多个音频(按顺序拼接),立即返回taskId,完成后通过callback_url通知结果"`
|
|
VideoURLs []string `json:"video_urls" v:"required#视频URL列表不能为空" dc:"视频URL列表(按此顺序拼接)"`
|
|
AudioURLs []string `json:"audio_urls" v:"required#音频URL列表不能为空" dc:"音频URL列表(按此顺序拼接)"`
|
|
Upload bool `json:"upload" dc:"是否上传到MinIO" d:"false"`
|
|
CallbackURL string `json:"callback_url" v:"required#回调地址不能为空" dc:"回调地址,处理完成后POST结果到该地址"`
|
|
}
|
|
|
|
// CreateMergeTaskRes 创建异步拼接+混音任务响应
|
|
type CreateMergeTaskRes struct {
|
|
TaskID string `json:"taskId" dc:"任务ID"`
|
|
}
|
|
|
|
// GetMergeTaskReq 查询异步拼接+混音任务请求
|
|
type GetMergeTaskReq struct {
|
|
g.Meta `path:"/merge/task/{taskId}" method:"get" tags:"视频拼接+混音" summary:"查询拼接混音任务结果" dc:"根据taskId查询异步拼接+混音任务的结果"`
|
|
TaskID string `json:"taskId" dc:"任务ID"`
|
|
}
|
|
|
|
// GetMergeTaskRes 查询异步拼接+混音任务响应
|
|
type GetMergeTaskRes struct {
|
|
TaskID string `json:"taskId" dc:"任务ID"`
|
|
Status string `json:"status" dc:"状态: pending/running/success/failed"`
|
|
FileURL string `json:"fileURL,omitempty" dc:"MinIO文件访问路径"`
|
|
FileSize int64 `json:"fileSize,omitempty" dc:"文件大小(字节)"`
|
|
FileName string `json:"fileName,omitempty" dc:"文件名"`
|
|
FileFormat string `json:"fileFormat,omitempty" dc:"文件格式"`
|
|
FileAddressPrefix string `json:"fileAddressPrefix,omitempty" dc:"MinIO地址前缀"`
|
|
DurationStr string `json:"durationStr,omitempty" dc:"合并后视频时长"`
|
|
ErrorMessage string `json:"errorMessage,omitempty" dc:"错误信息"`
|
|
CreatedAt int64 `json:"createdAt" dc:"创建时间戳"`
|
|
}
|