fix(canvas): 视频设置 - 按渠道能力隐藏尺寸并联动分辨率宽高
This commit is contained in:
1 parent
6d77c250c1
commit
4b75504f75
15 files changed
+196
-50
No files matched your search
@@ -532,8 +532,12 @@ func validateVideoCapabilityConfig(value *VideoCapabilityConfig) error {
|
||||
if err := validateVideoDuration(value.Duration); err != nil {
|
||||
return err
|
||||
}
|
||||
if len(value.Ratios) == 0 || strings.TrimSpace(value.DefaultRatio) == "" || !containsCapabilityString(value.Ratios, value.DefaultRatio) {
|
||||
return BadAuthRequest("请至少配置一个画面比例,并选择默认比例")
|
||||
if len(value.Ratios) == 0 {
|
||||
if strings.TrimSpace(value.DefaultRatio) != "" {
|
||||
return BadAuthRequest("未配置画面比例时不能设置默认比例")
|
||||
}
|
||||
} else if strings.TrimSpace(value.DefaultRatio) == "" || !containsCapabilityString(value.Ratios, value.DefaultRatio) {
|
||||
return BadAuthRequest("默认画面比例必须属于支持值")
|
||||
}
|
||||
if len(value.Resolutions) == 0 {
|
||||
if strings.TrimSpace(value.DefaultResolution) != "" {
|
||||
|
||||
@@ -237,6 +237,25 @@ func TestNormalizeVideoCapabilityAllowsOmittedResolution(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestNormalizeVideoCapabilityAllowsOmittedRatio(t *testing.T) {
|
||||
profile := DefaultModelCapabilityConfigForModel("autodl-comfyui", "minimax_h3_lightx2v_no_pic").Video
|
||||
profile.Ratios = nil
|
||||
profile.DefaultRatio = ""
|
||||
profile.Resolutions = []string{"480p竖", "480p横"}
|
||||
profile.DefaultResolution = "480p竖"
|
||||
|
||||
result, err := NormalizeModelCapabilityConfig("video", "autodl-comfyui", &ModelCapabilityConfig{Version: 1, Video: profile})
|
||||
if err != nil {
|
||||
t.Fatalf("NormalizeModelCapabilityConfig() error = %v", err)
|
||||
}
|
||||
if result.Video == nil || len(result.Video.Ratios) != 0 || result.Video.DefaultRatio != "" {
|
||||
t.Fatalf("normalized video ratios = %#v", result.Video)
|
||||
}
|
||||
if err := validateVideoTask(result.Video, canvasGenerationInput{Config: providerConfig{Model: "minimax_h3_lightx2v_no_pic", VideoSeconds: "6", VQuality: "480p竖"}}); err != nil {
|
||||
t.Fatalf("validateVideoTask() error = %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestCapabilitySpecFromModelCapabilityConfigProjectsImageSizeOnce(t *testing.T) {
|
||||
config := &ModelCapabilityConfig{
|
||||
Version: 1,
|
||||
|
||||
Reference in new issue
Block a user