runapi-seedance 0.2.8 → 0.2.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7e72a064a5fb6661041862b4e66aa714e384ec015a136f91ec6619b8ff4dbca2
4
- data.tar.gz: '0080e2a4576940e9d58314f6aad79773443c444a0b10333cb2c4cdc346cafdf8'
3
+ metadata.gz: 8aa6aaa3920c6c3a183a46e6f9ff7b65dcf45288f6af2622a8edfcf6859733eb
4
+ data.tar.gz: 42b6d22ec3004b70d8fefac84eebb2bcf39058281dbd958c66e8a4461b3ea68e
5
5
  SHA512:
6
- metadata.gz: 684eb54c618b6895b89cd55adf3a877664d3f82460207ed62bf5cbb87f3e2dc97df11c5fb5c399a5bd5fcc87f4fb87d081b683bf94c412b3a0a1d61968d18528
7
- data.tar.gz: 6f419078f87ebf32b01f335fe1059da64c214f6d8505bf6e7ec8f74a8d53cef1b9a421c31b9df956ab53cb99d5a91a189a6bad23fd8a6247c0c81e9e4bd63394
6
+ metadata.gz: 90769b1208a6363a6a7336b3d02de261c99bb827d16749ccb8ba5bb03d7c57ee680876a63ccfe8626536397c1886f602afd7ce81b28ba39ac9866195f57df7b6
7
+ data.tar.gz: 1bd421c1a756912d90ca68e5257278b7f50989e61b063043b6543f4dc7598c3e6bd9ea774344b1df73f7ffdc2179ee1c8c43ff729529c65926a7610c6f12ba37
@@ -18,6 +18,9 @@ module RunApi
18
18
  },
19
19
  "output_resolution" => {
20
20
  "enum" => ["480p", "720p", "1080p"]
21
+ },
22
+ "source_image_urls" => {
23
+ "max_items" => 2
21
24
  }
22
25
  },
23
26
  "seedance-2-mini" => {
@@ -31,6 +34,15 @@ module RunApi
31
34
  },
32
35
  "output_resolution" => {
33
36
  "enum" => ["480p", "720p"]
37
+ },
38
+ "reference_audio_urls" => {
39
+ "max_items" => 3
40
+ },
41
+ "reference_image_urls" => {
42
+ "max_items" => 9
43
+ },
44
+ "reference_video_urls" => {
45
+ "max_items" => 3
34
46
  }
35
47
  },
36
48
  "seedance-2.0" => {
@@ -43,7 +55,16 @@ module RunApi
43
55
  "type" => "integer"
44
56
  },
45
57
  "output_resolution" => {
46
- "enum" => ["480p", "720p", "1080p"]
58
+ "enum" => ["480p", "720p", "1080p", "4k"]
59
+ },
60
+ "reference_audio_urls" => {
61
+ "max_items" => 3
62
+ },
63
+ "reference_image_urls" => {
64
+ "max_items" => 9
65
+ },
66
+ "reference_video_urls" => {
67
+ "max_items" => 3
47
68
  }
48
69
  },
49
70
  "seedance-2.0-fast" => {
@@ -57,6 +78,15 @@ module RunApi
57
78
  },
58
79
  "output_resolution" => {
59
80
  "enum" => ["480p", "720p"]
81
+ },
82
+ "reference_audio_urls" => {
83
+ "max_items" => 3
84
+ },
85
+ "reference_image_urls" => {
86
+ "max_items" => 9
87
+ },
88
+ "reference_video_urls" => {
89
+ "max_items" => 3
60
90
  }
61
91
  },
62
92
  "seedance-v1-lite" => {
@@ -95,10 +95,6 @@ module RunApi
95
95
  end
96
96
 
97
97
  def validate_1_5_pro!(params)
98
- if (value = param(params, :source_image_urls)).is_a?(Array) && value.size > 2
99
- raise Core::ValidationError, "source_image_urls accepts at most 2 images for seedance-1.5-pro"
100
- end
101
-
102
98
  unsupported = %i[first_frame_image_url last_frame_image_url reference_image_urls reference_video_urls reference_audio_urls web_search]
103
99
  reject_unsupported!(params, unsupported, "seedance-1.5-pro")
104
100
  end
@@ -108,6 +104,7 @@ module RunApi
108
104
  reject_unsupported!(params, unsupported, param(params, :model))
109
105
 
110
106
  validate_mode_conflicts!(params)
107
+ validate_seedance_2_4k_mode!(params)
111
108
  end
112
109
 
113
110
  def validate_mode_conflicts!(params)
@@ -119,6 +116,17 @@ module RunApi
119
116
  end
120
117
  end
121
118
 
119
+ def validate_seedance_2_4k_mode!(params)
120
+ return unless param(params, :model) == "seedance-2.0"
121
+ return unless param(params, :output_resolution) == "4k"
122
+
123
+ unsupported = Types::FRAME_FIELDS + Types::REFERENCE_FIELDS
124
+ field = unsupported.find { |candidate| field_present?(params, candidate) }
125
+ return unless field
126
+
127
+ raise Core::ValidationError, "#{field} is not allowed when model is seedance-2.0 and output_resolution is 4k"
128
+ end
129
+
122
130
  def reject_unsupported!(params, fields, model)
123
131
  fields.each do |field|
124
132
  if field_present?(params, field)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: runapi-seedance
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.8
4
+ version: 0.2.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - RunAPI
@@ -15,14 +15,14 @@ dependencies:
15
15
  requirements:
16
16
  - - "~>"
17
17
  - !ruby/object:Gem::Version
18
- version: 0.2.9
18
+ version: 0.2.14
19
19
  type: :runtime
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - "~>"
24
24
  - !ruby/object:Gem::Version
25
- version: 0.2.9
25
+ version: 0.2.14
26
26
  description: The Seedance Ruby SDK is the language-specific package for Seedance on
27
27
  RunAPI. Use this package for video generation, animation, and video editing workflows
28
28
  when your application needs request bodies, task status lookup, and consistent RunAPI