magic_hour 0.34.0__py3-none-any.whl → 0.35.0__py3-none-any.whl

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.

Potentially problematic release.


This version of magic_hour might be problematic. Click here for more details.

magic_hour/environment.py CHANGED
@@ -6,7 +6,7 @@ class Environment(enum.Enum):
6
6
  """Pre-defined base URLs for the API"""
7
7
 
8
8
  ENVIRONMENT = "https://api.magichour.ai"
9
- MOCK_SERVER = "https://api.sideko.dev/v1/mock/magichour/magic-hour/0.34.0"
9
+ MOCK_SERVER = "https://api.sideko.dev/v1/mock/magichour/magic-hour/0.35.0"
10
10
 
11
11
 
12
12
  def _get_base_url(
@@ -15,9 +15,9 @@ Get more information about this mode at our [product page](https://magichour.ai/
15
15
  | `assets` | ✓ | Provide the assets for face swap. For video, The `video_source` field determines whether `video_file_path` or `youtube_url` field is used | `{"face_mappings": [{"new_face": "api-assets/id/1234.png", "original_face": "api-assets/id/0-0.png"}], "face_swap_mode": "all-faces", "image_file_path": "image/id/1234.png", "video_file_path": "api-assets/id/1234.mp4", "video_source": "file"}` |
16
16
  | `end_seconds` | ✓ | The end time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.1, and more than the start_seconds. | `15.0` |
17
17
  | `start_seconds` | ✓ | The start time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0. | `0.0` |
18
- | `height` | ✗ | Used to determine the dimensions of the output video. * If height is provided, width will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio. * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio. Note: if the video's original resolution is less than the maximum, the video will not be resized. See our [pricing page](https://magichour.ai/pricing) for more details. | `960` |
18
+ | `height` | ✗ | `height` is deprecated and no longer influences the output video's resolution. Output resolution is determined by the **minimum** of: - The resolution of the input video - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details. This field is retained only for backward compatibility and will be removed in a future release. | `123` |
19
19
  | `name` | ✗ | The name of video. This value is mainly used for your own identification of the video. | `"Face Swap video"` |
20
- | `width` | ✗ | Used to determine the dimensions of the output video. * If width is provided, height will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio. * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio. Note: if the video's original resolution is less than the maximum, the video will not be resized. See our [pricing page](https://magichour.ai/pricing) for more details. | `512` |
20
+ | `width` | ✗ | `width` is deprecated and no longer influences the output video's resolution. Output resolution is determined by the **minimum** of: - The resolution of the input video - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details. This field is retained only for backward compatibility and will be removed in a future release. | `123` |
21
21
 
22
22
  #### Synchronous Client
23
23
 
@@ -41,9 +41,7 @@ res = client.v1.face_swap.create(
41
41
  },
42
42
  end_seconds=15.0,
43
43
  start_seconds=0.0,
44
- height=960,
45
44
  name="Face Swap video",
46
- width=512,
47
45
  )
48
46
 
49
47
  ```
@@ -70,9 +68,7 @@ res = await client.v1.face_swap.create(
70
68
  },
71
69
  end_seconds=15.0,
72
70
  start_seconds=0.0,
73
- height=960,
74
71
  name="Face Swap video",
75
- width=512,
76
72
  )
77
73
 
78
74
  ```
@@ -43,23 +43,21 @@ class FaceSwapClient:
43
43
  POST /v1/face-swap
44
44
 
45
45
  Args:
46
- height: Used to determine the dimensions of the output video.
46
+ height: `height` is deprecated and no longer influences the output video's resolution.
47
47
 
48
- * If height is provided, width will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
49
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
48
+ Output resolution is determined by the **minimum** of:
49
+ - The resolution of the input video
50
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
50
51
 
51
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
52
-
53
- See our [pricing page](https://magichour.ai/pricing) for more details.
52
+ This field is retained only for backward compatibility and will be removed in a future release.
54
53
  name: The name of video. This value is mainly used for your own identification of the video.
55
- width: Used to determine the dimensions of the output video.
56
-
57
- * If width is provided, height will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
58
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
54
+ width: `width` is deprecated and no longer influences the output video's resolution.
59
55
 
60
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
56
+ Output resolution is determined by the **minimum** of:
57
+ - The resolution of the input video
58
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
61
59
 
62
- See our [pricing page](https://magichour.ai/pricing) for more details.
60
+ This field is retained only for backward compatibility and will be removed in a future release.
63
61
  assets: Provide the assets for face swap. For video, The `video_source` field determines whether `video_file_path` or `youtube_url` field is used
64
62
  end_seconds: The end time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.1, and more than the start_seconds.
65
63
  start_seconds: The start time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.
@@ -89,9 +87,7 @@ class FaceSwapClient:
89
87
  },
90
88
  end_seconds=15.0,
91
89
  start_seconds=0.0,
92
- height=960,
93
90
  name="Face Swap video",
94
- width=512,
95
91
  )
96
92
  ```
97
93
  """
@@ -148,23 +144,21 @@ class AsyncFaceSwapClient:
148
144
  POST /v1/face-swap
149
145
 
150
146
  Args:
151
- height: Used to determine the dimensions of the output video.
147
+ height: `height` is deprecated and no longer influences the output video's resolution.
152
148
 
153
- * If height is provided, width will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
154
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
149
+ Output resolution is determined by the **minimum** of:
150
+ - The resolution of the input video
151
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
155
152
 
156
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
157
-
158
- See our [pricing page](https://magichour.ai/pricing) for more details.
153
+ This field is retained only for backward compatibility and will be removed in a future release.
159
154
  name: The name of video. This value is mainly used for your own identification of the video.
160
- width: Used to determine the dimensions of the output video.
161
-
162
- * If width is provided, height will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
163
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
155
+ width: `width` is deprecated and no longer influences the output video's resolution.
164
156
 
165
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
157
+ Output resolution is determined by the **minimum** of:
158
+ - The resolution of the input video
159
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
166
160
 
167
- See our [pricing page](https://magichour.ai/pricing) for more details.
161
+ This field is retained only for backward compatibility and will be removed in a future release.
168
162
  assets: Provide the assets for face swap. For video, The `video_source` field determines whether `video_file_path` or `youtube_url` field is used
169
163
  end_seconds: The end time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.1, and more than the start_seconds.
170
164
  start_seconds: The start time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.
@@ -194,9 +188,7 @@ class AsyncFaceSwapClient:
194
188
  },
195
189
  end_seconds=15.0,
196
190
  start_seconds=0.0,
197
- height=960,
198
191
  name="Face Swap video",
199
- width=512,
200
192
  )
201
193
  ```
202
194
  """
@@ -14,11 +14,11 @@ Get more information about this mode at our [product page](https://magichour.ai/
14
14
  |-----------|:--------:|-------------|--------|
15
15
  | `assets` | ✓ | Provide the assets for image-to-video. | `{"image_file_path": "api-assets/id/1234.png"}` |
16
16
  | `end_seconds` | ✓ | The total duration of the output video in seconds. | `5.0` |
17
- | `height` | ✗ | This field does not affect the output video's resolution. The video's orientation will match that of the input image. It is retained solely for backward compatibility and will be deprecated in the future. | `123` |
17
+ | `height` | ✗ | `height` is deprecated and no longer influences the output video's resolution. Output resolution is determined by the **minimum** of: - The resolution of the input video - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details. This field is retained only for backward compatibility and will be removed in a future release. | `123` |
18
18
  | `name` | ✗ | The name of video. This value is mainly used for your own identification of the video. | `"Image To Video video"` |
19
19
  | `resolution` | ✗ | Controls the output video resolution. Defaults to `720p` if not specified. 480p and 720p are available on Creator, Pro, or Business tiers. However, 1080p require Pro or Business tier. **Options:** - `480p` - Supports only 5 or 10 second videos. Output: 24fps. Cost: 120 credits per 5 seconds. - `720p` - Supports videos between 5-60 seconds. Output: 30fps. Cost: 300 credits per 5 seconds. - `1080p` - Supports videos between 5-60 seconds. Output: 30fps. Cost: 600 credits per 5 seconds. | `"720p"` |
20
20
  | `style` | ✗ | Attributed used to dictate the style of the output | `{"prompt": "a dog running"}` |
21
- | `width` | ✗ | This field does not affect the output video's resolution. The video's orientation will match that of the input image. It is retained solely for backward compatibility and will be deprecated in the future. | `123` |
21
+ | `width` | ✗ | `width` is deprecated and no longer influences the output video's resolution. Output resolution is determined by the **minimum** of: - The resolution of the input video - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details. This field is retained only for backward compatibility and will be removed in a future release. | `123` |
22
22
 
23
23
  #### Synchronous Client
24
24
 
@@ -50,9 +50,13 @@ class ImageToVideoClient:
50
50
  POST /v1/image-to-video
51
51
 
52
52
  Args:
53
- height: This field does not affect the output video's resolution. The video's orientation will match that of the input image.
53
+ height: `height` is deprecated and no longer influences the output video's resolution.
54
54
 
55
- It is retained solely for backward compatibility and will be deprecated in the future.
55
+ Output resolution is determined by the **minimum** of:
56
+ - The resolution of the input video
57
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
58
+
59
+ This field is retained only for backward compatibility and will be removed in a future release.
56
60
  name: The name of video. This value is mainly used for your own identification of the video.
57
61
  resolution: Controls the output video resolution. Defaults to `720p` if not specified.
58
62
 
@@ -63,9 +67,13 @@ class ImageToVideoClient:
63
67
  - `720p` - Supports videos between 5-60 seconds. Output: 30fps. Cost: 300 credits per 5 seconds.
64
68
  - `1080p` - Supports videos between 5-60 seconds. Output: 30fps. Cost: 600 credits per 5 seconds.
65
69
  style: Attributed used to dictate the style of the output
66
- width: This field does not affect the output video's resolution. The video's orientation will match that of the input image.
70
+ width: `width` is deprecated and no longer influences the output video's resolution.
71
+
72
+ Output resolution is determined by the **minimum** of:
73
+ - The resolution of the input video
74
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
67
75
 
68
- It is retained solely for backward compatibility and will be deprecated in the future.
76
+ This field is retained only for backward compatibility and will be removed in a future release.
69
77
  assets: Provide the assets for image-to-video.
70
78
  end_seconds: The total duration of the output video in seconds.
71
79
  request_options: Additional options to customize the HTTP request
@@ -147,9 +155,13 @@ class AsyncImageToVideoClient:
147
155
  POST /v1/image-to-video
148
156
 
149
157
  Args:
150
- height: This field does not affect the output video's resolution. The video's orientation will match that of the input image.
158
+ height: `height` is deprecated and no longer influences the output video's resolution.
151
159
 
152
- It is retained solely for backward compatibility and will be deprecated in the future.
160
+ Output resolution is determined by the **minimum** of:
161
+ - The resolution of the input video
162
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
163
+
164
+ This field is retained only for backward compatibility and will be removed in a future release.
153
165
  name: The name of video. This value is mainly used for your own identification of the video.
154
166
  resolution: Controls the output video resolution. Defaults to `720p` if not specified.
155
167
 
@@ -160,9 +172,13 @@ class AsyncImageToVideoClient:
160
172
  - `720p` - Supports videos between 5-60 seconds. Output: 30fps. Cost: 300 credits per 5 seconds.
161
173
  - `1080p` - Supports videos between 5-60 seconds. Output: 30fps. Cost: 600 credits per 5 seconds.
162
174
  style: Attributed used to dictate the style of the output
163
- width: This field does not affect the output video's resolution. The video's orientation will match that of the input image.
175
+ width: `width` is deprecated and no longer influences the output video's resolution.
176
+
177
+ Output resolution is determined by the **minimum** of:
178
+ - The resolution of the input video
179
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
164
180
 
165
- It is retained solely for backward compatibility and will be deprecated in the future.
181
+ This field is retained only for backward compatibility and will be removed in a future release.
166
182
  assets: Provide the assets for image-to-video.
167
183
  end_seconds: The total duration of the output video in seconds.
168
184
  request_options: Additional options to customize the HTTP request
@@ -15,10 +15,10 @@ Get more information about this mode at our [product page](https://magichour.ai/
15
15
  | `assets` | ✓ | Provide the assets for lip-sync. For video, The `video_source` field determines whether `video_file_path` or `youtube_url` field is used | `{"audio_file_path": "api-assets/id/1234.mp3", "video_file_path": "api-assets/id/1234.mp4", "video_source": "file"}` |
16
16
  | `end_seconds` | ✓ | The end time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.1, and more than the start_seconds. | `15.0` |
17
17
  | `start_seconds` | ✓ | The start time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0. | `0.0` |
18
- | `height` | ✗ | Used to determine the dimensions of the output video. * If height is provided, width will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio. * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio. Note: if the video's original resolution is less than the maximum, the video will not be resized. See our [pricing page](https://magichour.ai/pricing) for more details. | `960` |
18
+ | `height` | ✗ | `height` is deprecated and no longer influences the output video's resolution. Output resolution is determined by the **minimum** of: - The resolution of the input video - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details. This field is retained only for backward compatibility and will be removed in a future release. | `123` |
19
19
  | `max_fps_limit` | ✗ | Defines the maximum FPS (frames per second) for the output video. If the input video's FPS is lower than this limit, the output video will retain the input FPS. This is useful for reducing unnecessary frame usage in scenarios where high FPS is not required. | `12.0` |
20
20
  | `name` | ✗ | The name of video. This value is mainly used for your own identification of the video. | `"Lip Sync video"` |
21
- | `width` | ✗ | Used to determine the dimensions of the output video. * If width is provided, height will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio. * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio. Note: if the video's original resolution is less than the maximum, the video will not be resized. See our [pricing page](https://magichour.ai/pricing) for more details. | `512` |
21
+ | `width` | ✗ | `width` is deprecated and no longer influences the output video's resolution. Output resolution is determined by the **minimum** of: - The resolution of the input video - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details. This field is retained only for backward compatibility and will be removed in a future release. | `123` |
22
22
 
23
23
  #### Synchronous Client
24
24
 
@@ -35,10 +35,8 @@ res = client.v1.lip_sync.create(
35
35
  },
36
36
  end_seconds=15.0,
37
37
  start_seconds=0.0,
38
- height=960,
39
38
  max_fps_limit=12.0,
40
39
  name="Lip Sync video",
41
- width=512,
42
40
  )
43
41
 
44
42
  ```
@@ -58,10 +56,8 @@ res = await client.v1.lip_sync.create(
58
56
  },
59
57
  end_seconds=15.0,
60
58
  start_seconds=0.0,
61
- height=960,
62
59
  max_fps_limit=12.0,
63
60
  name="Lip Sync video",
64
- width=512,
65
61
  )
66
62
 
67
63
  ```
@@ -46,24 +46,22 @@ class LipSyncClient:
46
46
  POST /v1/lip-sync
47
47
 
48
48
  Args:
49
- height: Used to determine the dimensions of the output video.
49
+ height: `height` is deprecated and no longer influences the output video's resolution.
50
50
 
51
- * If height is provided, width will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
52
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
51
+ Output resolution is determined by the **minimum** of:
52
+ - The resolution of the input video
53
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
53
54
 
54
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
55
-
56
- See our [pricing page](https://magichour.ai/pricing) for more details.
55
+ This field is retained only for backward compatibility and will be removed in a future release.
57
56
  max_fps_limit: Defines the maximum FPS (frames per second) for the output video. If the input video's FPS is lower than this limit, the output video will retain the input FPS. This is useful for reducing unnecessary frame usage in scenarios where high FPS is not required.
58
57
  name: The name of video. This value is mainly used for your own identification of the video.
59
- width: Used to determine the dimensions of the output video.
60
-
61
- * If width is provided, height will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
62
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
58
+ width: `width` is deprecated and no longer influences the output video's resolution.
63
59
 
64
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
60
+ Output resolution is determined by the **minimum** of:
61
+ - The resolution of the input video
62
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
65
63
 
66
- See our [pricing page](https://magichour.ai/pricing) for more details.
64
+ This field is retained only for backward compatibility and will be removed in a future release.
67
65
  assets: Provide the assets for lip-sync. For video, The `video_source` field determines whether `video_file_path` or `youtube_url` field is used
68
66
  end_seconds: The end time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.1, and more than the start_seconds.
69
67
  start_seconds: The start time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.
@@ -86,10 +84,8 @@ class LipSyncClient:
86
84
  },
87
85
  end_seconds=15.0,
88
86
  start_seconds=0.0,
89
- height=960,
90
87
  max_fps_limit=12.0,
91
88
  name="Lip Sync video",
92
- width=512,
93
89
  )
94
90
  ```
95
91
  """
@@ -150,24 +146,22 @@ class AsyncLipSyncClient:
150
146
  POST /v1/lip-sync
151
147
 
152
148
  Args:
153
- height: Used to determine the dimensions of the output video.
149
+ height: `height` is deprecated and no longer influences the output video's resolution.
154
150
 
155
- * If height is provided, width will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
156
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
151
+ Output resolution is determined by the **minimum** of:
152
+ - The resolution of the input video
153
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
157
154
 
158
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
159
-
160
- See our [pricing page](https://magichour.ai/pricing) for more details.
155
+ This field is retained only for backward compatibility and will be removed in a future release.
161
156
  max_fps_limit: Defines the maximum FPS (frames per second) for the output video. If the input video's FPS is lower than this limit, the output video will retain the input FPS. This is useful for reducing unnecessary frame usage in scenarios where high FPS is not required.
162
157
  name: The name of video. This value is mainly used for your own identification of the video.
163
- width: Used to determine the dimensions of the output video.
164
-
165
- * If width is provided, height will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
166
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
158
+ width: `width` is deprecated and no longer influences the output video's resolution.
167
159
 
168
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
160
+ Output resolution is determined by the **minimum** of:
161
+ - The resolution of the input video
162
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
169
163
 
170
- See our [pricing page](https://magichour.ai/pricing) for more details.
164
+ This field is retained only for backward compatibility and will be removed in a future release.
171
165
  assets: Provide the assets for lip-sync. For video, The `video_source` field determines whether `video_file_path` or `youtube_url` field is used
172
166
  end_seconds: The end time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.1, and more than the start_seconds.
173
167
  start_seconds: The start time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.
@@ -190,10 +184,8 @@ class AsyncLipSyncClient:
190
184
  },
191
185
  end_seconds=15.0,
192
186
  start_seconds=0.0,
193
- height=960,
194
187
  max_fps_limit=12.0,
195
188
  name="Lip Sync video",
196
- width=512,
197
189
  )
198
190
  ```
199
191
  """
@@ -17,9 +17,9 @@ Get more information about this mode at our [product page](https://magichour.ai/
17
17
  | `start_seconds` | ✓ | The start time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0. | `0.0` |
18
18
  | `style` | ✓ | | `{"art_style": "3D Render", "model": "default", "prompt": "string", "prompt_type": "default", "version": "default"}` |
19
19
  | `fps_resolution` | ✗ | Determines whether the resulting video will have the same frame per second as the original video, or half. * `FULL` - the result video will have the same FPS as the input video * `HALF` - the result video will have half the FPS as the input video | `"HALF"` |
20
- | `height` | ✗ | Used to determine the dimensions of the output video. * If height is provided, width will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio. * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio. Note: if the video's original resolution is less than the maximum, the video will not be resized. See our [pricing page](https://magichour.ai/pricing) for more details. | `960` |
20
+ | `height` | ✗ | `height` is deprecated and no longer influences the output video's resolution. Output resolution is determined by the **minimum** of: - The resolution of the input video - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details. This field is retained only for backward compatibility and will be removed in a future release. | `123` |
21
21
  | `name` | ✗ | The name of video. This value is mainly used for your own identification of the video. | `"Video To Video video"` |
22
- | `width` | ✗ | Used to determine the dimensions of the output video. * If width is provided, height will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio. * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio. Note: if the video's original resolution is less than the maximum, the video will not be resized. See our [pricing page](https://magichour.ai/pricing) for more details. | `512` |
22
+ | `width` | ✗ | `width` is deprecated and no longer influences the output video's resolution. Output resolution is determined by the **minimum** of: - The resolution of the input video - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details. This field is retained only for backward compatibility and will be removed in a future release. | `123` |
23
23
 
24
24
  #### Synchronous Client
25
25
 
@@ -40,9 +40,7 @@ res = client.v1.video_to_video.create(
40
40
  "version": "default",
41
41
  },
42
42
  fps_resolution="HALF",
43
- height=960,
44
43
  name="Video To Video video",
45
- width=512,
46
44
  )
47
45
 
48
46
  ```
@@ -66,9 +64,7 @@ res = await client.v1.video_to_video.create(
66
64
  "version": "default",
67
65
  },
68
66
  fps_resolution="HALF",
69
- height=960,
70
67
  name="Video To Video video",
71
- width=512,
72
68
  )
73
69
 
74
70
  ```
@@ -52,23 +52,21 @@ class VideoToVideoClient:
52
52
  fps_resolution: Determines whether the resulting video will have the same frame per second as the original video, or half.
53
53
  * `FULL` - the result video will have the same FPS as the input video
54
54
  * `HALF` - the result video will have half the FPS as the input video
55
- height: Used to determine the dimensions of the output video.
55
+ height: `height` is deprecated and no longer influences the output video's resolution.
56
56
 
57
- * If height is provided, width will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
58
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
57
+ Output resolution is determined by the **minimum** of:
58
+ - The resolution of the input video
59
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
59
60
 
60
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
61
-
62
- See our [pricing page](https://magichour.ai/pricing) for more details.
61
+ This field is retained only for backward compatibility and will be removed in a future release.
63
62
  name: The name of video. This value is mainly used for your own identification of the video.
64
- width: Used to determine the dimensions of the output video.
65
-
66
- * If width is provided, height will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
67
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
63
+ width: `width` is deprecated and no longer influences the output video's resolution.
68
64
 
69
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
65
+ Output resolution is determined by the **minimum** of:
66
+ - The resolution of the input video
67
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
70
68
 
71
- See our [pricing page](https://magichour.ai/pricing) for more details.
69
+ This field is retained only for backward compatibility and will be removed in a future release.
72
70
  assets: Provide the assets for video-to-video. For video, The `video_source` field determines whether `video_file_path` or `youtube_url` field is used
73
71
  end_seconds: The end time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.1, and more than the start_seconds.
74
72
  start_seconds: The start time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.
@@ -99,9 +97,7 @@ class VideoToVideoClient:
99
97
  "version": "default",
100
98
  },
101
99
  fps_resolution="HALF",
102
- height=960,
103
100
  name="Video To Video video",
104
- width=512,
105
101
  )
106
102
  ```
107
103
  """
@@ -168,23 +164,21 @@ class AsyncVideoToVideoClient:
168
164
  fps_resolution: Determines whether the resulting video will have the same frame per second as the original video, or half.
169
165
  * `FULL` - the result video will have the same FPS as the input video
170
166
  * `HALF` - the result video will have half the FPS as the input video
171
- height: Used to determine the dimensions of the output video.
167
+ height: `height` is deprecated and no longer influences the output video's resolution.
172
168
 
173
- * If height is provided, width will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
174
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
169
+ Output resolution is determined by the **minimum** of:
170
+ - The resolution of the input video
171
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
175
172
 
176
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
177
-
178
- See our [pricing page](https://magichour.ai/pricing) for more details.
173
+ This field is retained only for backward compatibility and will be removed in a future release.
179
174
  name: The name of video. This value is mainly used for your own identification of the video.
180
- width: Used to determine the dimensions of the output video.
181
-
182
- * If width is provided, height will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
183
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
175
+ width: `width` is deprecated and no longer influences the output video's resolution.
184
176
 
185
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
177
+ Output resolution is determined by the **minimum** of:
178
+ - The resolution of the input video
179
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
186
180
 
187
- See our [pricing page](https://magichour.ai/pricing) for more details.
181
+ This field is retained only for backward compatibility and will be removed in a future release.
188
182
  assets: Provide the assets for video-to-video. For video, The `video_source` field determines whether `video_file_path` or `youtube_url` field is used
189
183
  end_seconds: The end time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.1, and more than the start_seconds.
190
184
  start_seconds: The start time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.
@@ -215,9 +209,7 @@ class AsyncVideoToVideoClient:
215
209
  "version": "default",
216
210
  },
217
211
  fps_resolution="HALF",
218
- height=960,
219
212
  name="Video To Video video",
220
- width=512,
221
213
  )
222
214
  ```
223
215
  """
@@ -23,16 +23,15 @@ class V1FaceSwapCreateBody(typing_extensions.TypedDict):
23
23
  The end time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.1, and more than the start_seconds.
24
24
  """
25
25
 
26
- height: typing_extensions.NotRequired[int]
26
+ height: typing_extensions.NotRequired[typing.Optional[int]]
27
27
  """
28
- Used to determine the dimensions of the output video.
29
-
30
- * If height is provided, width will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
31
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
28
+ `height` is deprecated and no longer influences the output video's resolution.
32
29
 
33
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
30
+ Output resolution is determined by the **minimum** of:
31
+ - The resolution of the input video
32
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
34
33
 
35
- See our [pricing page](https://magichour.ai/pricing) for more details.
34
+ This field is retained only for backward compatibility and will be removed in a future release.
36
35
  """
37
36
 
38
37
  name: typing_extensions.NotRequired[str]
@@ -45,16 +44,15 @@ class V1FaceSwapCreateBody(typing_extensions.TypedDict):
45
44
  The start time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.
46
45
  """
47
46
 
48
- width: typing_extensions.NotRequired[int]
47
+ width: typing_extensions.NotRequired[typing.Optional[int]]
49
48
  """
50
- Used to determine the dimensions of the output video.
51
-
52
- * If width is provided, height will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
53
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
49
+ `width` is deprecated and no longer influences the output video's resolution.
54
50
 
55
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
51
+ Output resolution is determined by the **minimum** of:
52
+ - The resolution of the input video
53
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
56
54
 
57
- See our [pricing page](https://magichour.ai/pricing) for more details.
55
+ This field is retained only for backward compatibility and will be removed in a future release.
58
56
  """
59
57
 
60
58
 
@@ -27,11 +27,15 @@ class V1ImageToVideoCreateBody(typing_extensions.TypedDict):
27
27
  The total duration of the output video in seconds.
28
28
  """
29
29
 
30
- height: typing_extensions.NotRequired[int]
30
+ height: typing_extensions.NotRequired[typing.Optional[int]]
31
31
  """
32
- This field does not affect the output video's resolution. The video's orientation will match that of the input image.
32
+ `height` is deprecated and no longer influences the output video's resolution.
33
33
 
34
- It is retained solely for backward compatibility and will be deprecated in the future.
34
+ Output resolution is determined by the **minimum** of:
35
+ - The resolution of the input video
36
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
37
+
38
+ This field is retained only for backward compatibility and will be removed in a future release.
35
39
  """
36
40
 
37
41
  name: typing_extensions.NotRequired[str]
@@ -58,11 +62,15 @@ class V1ImageToVideoCreateBody(typing_extensions.TypedDict):
58
62
  Attributed used to dictate the style of the output
59
63
  """
60
64
 
61
- width: typing_extensions.NotRequired[int]
65
+ width: typing_extensions.NotRequired[typing.Optional[int]]
62
66
  """
63
- This field does not affect the output video's resolution. The video's orientation will match that of the input image.
67
+ `width` is deprecated and no longer influences the output video's resolution.
68
+
69
+ Output resolution is determined by the **minimum** of:
70
+ - The resolution of the input video
71
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
64
72
 
65
- It is retained solely for backward compatibility and will be deprecated in the future.
73
+ This field is retained only for backward compatibility and will be removed in a future release.
66
74
  """
67
75
 
68
76
 
@@ -23,16 +23,15 @@ class V1LipSyncCreateBody(typing_extensions.TypedDict):
23
23
  The end time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.1, and more than the start_seconds.
24
24
  """
25
25
 
26
- height: typing_extensions.NotRequired[int]
26
+ height: typing_extensions.NotRequired[typing.Optional[int]]
27
27
  """
28
- Used to determine the dimensions of the output video.
29
-
30
- * If height is provided, width will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
31
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
28
+ `height` is deprecated and no longer influences the output video's resolution.
32
29
 
33
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
30
+ Output resolution is determined by the **minimum** of:
31
+ - The resolution of the input video
32
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
34
33
 
35
- See our [pricing page](https://magichour.ai/pricing) for more details.
34
+ This field is retained only for backward compatibility and will be removed in a future release.
36
35
  """
37
36
 
38
37
  max_fps_limit: typing_extensions.NotRequired[float]
@@ -50,16 +49,15 @@ class V1LipSyncCreateBody(typing_extensions.TypedDict):
50
49
  The start time of the input video in seconds. This value is used to trim the input video. The value must be greater than 0.
51
50
  """
52
51
 
53
- width: typing_extensions.NotRequired[int]
52
+ width: typing_extensions.NotRequired[typing.Optional[int]]
54
53
  """
55
- Used to determine the dimensions of the output video.
56
-
57
- * If width is provided, height will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
58
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
54
+ `width` is deprecated and no longer influences the output video's resolution.
59
55
 
60
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
56
+ Output resolution is determined by the **minimum** of:
57
+ - The resolution of the input video
58
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
61
59
 
62
- See our [pricing page](https://magichour.ai/pricing) for more details.
60
+ This field is retained only for backward compatibility and will be removed in a future release.
63
61
  """
64
62
 
65
63
 
@@ -36,16 +36,15 @@ class V1VideoToVideoCreateBody(typing_extensions.TypedDict):
36
36
  * `HALF` - the result video will have half the FPS as the input video
37
37
  """
38
38
 
39
- height: typing_extensions.NotRequired[int]
39
+ height: typing_extensions.NotRequired[typing.Optional[int]]
40
40
  """
41
- Used to determine the dimensions of the output video.
42
-
43
- * If height is provided, width will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
44
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
41
+ `height` is deprecated and no longer influences the output video's resolution.
45
42
 
46
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
43
+ Output resolution is determined by the **minimum** of:
44
+ - The resolution of the input video
45
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
47
46
 
48
- See our [pricing page](https://magichour.ai/pricing) for more details.
47
+ This field is retained only for backward compatibility and will be removed in a future release.
49
48
  """
50
49
 
51
50
  name: typing_extensions.NotRequired[str]
@@ -60,16 +59,15 @@ class V1VideoToVideoCreateBody(typing_extensions.TypedDict):
60
59
 
61
60
  style: typing_extensions.Required[V1VideoToVideoCreateBodyStyle]
62
61
 
63
- width: typing_extensions.NotRequired[int]
62
+ width: typing_extensions.NotRequired[typing.Optional[int]]
64
63
  """
65
- Used to determine the dimensions of the output video.
66
-
67
- * If width is provided, height will also be required. The larger value between width and height will be used to determine the maximum output resolution while maintaining the original aspect ratio.
68
- * If both height and width are omitted, the video will be resized according to your subscription's maximum resolution, while preserving aspect ratio.
64
+ `width` is deprecated and no longer influences the output video's resolution.
69
65
 
70
- Note: if the video's original resolution is less than the maximum, the video will not be resized.
66
+ Output resolution is determined by the **minimum** of:
67
+ - The resolution of the input video
68
+ - The maximum resolution allowed by your subscription tier. See our [pricing page](https://magichour.ai/pricing) for more details.
71
69
 
72
- See our [pricing page](https://magichour.ai/pricing) for more details.
70
+ This field is retained only for backward compatibility and will be removed in a future release.
73
71
  """
74
72
 
75
73
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: magic_hour
3
- Version: 0.34.0
3
+ Version: 0.35.0
4
4
  Summary: Python SDK for Magic Hour API
5
5
  Requires-Python: >=3.8,<4.0
6
6
  Classifier: Programming Language :: Python :: 3
@@ -10,7 +10,7 @@ magic_hour/core/request.py,sha256=_ikn8iZ2fU9Ubqnt7M9hdEnXGV6AAFHJYmDKBtxEY4I,52
10
10
  magic_hour/core/response.py,sha256=Sl7nPL2axmz7em_6d9TkFSnQQKUpalWaVWbPPWoXJgM,10180
11
11
  magic_hour/core/type_utils.py,sha256=4bU9WXnMXJ6YTtuqOMiB8t6Xw0RlfVWJ-IDBONlqEtQ,461
12
12
  magic_hour/core/utils.py,sha256=34SiC1vw2A0TkYHONgMA_d09soIIYiiBWRXCZGdwGIk,1669
13
- magic_hour/environment.py,sha256=70vV7M6Sj3cEuER_o-Eju_K7LRn_EYyBRMWc4RrKdEw,535
13
+ magic_hour/environment.py,sha256=VEu4rgeO5b2sZvoAy-qnxw3625BLIwg5sQzpWMvRKb0,535
14
14
  magic_hour/resources/v1/__init__.py,sha256=Aj0sjVcoijjQyieNBxv2_uewPYC2vO2UG-ehoBgCz5E,86
15
15
  magic_hour/resources/v1/ai_clothes_changer/README.md,sha256=Gralh3aEOMPRRZ09k0I7AsaXvAS7FdF_sew9yoSg1TE,1629
16
16
  magic_hour/resources/v1/ai_clothes_changer/__init__.py,sha256=6W_Y2HxG2sDOBiJyzngK3Q2S3xfQgpK-j8xFRmBAhbQ,142
@@ -55,9 +55,9 @@ magic_hour/resources/v1/client.py,sha256=ERCl_sMEwUgTEoo7hmknz4c4QoyPkSc5Hvlci97
55
55
  magic_hour/resources/v1/face_detection/README.md,sha256=R1lvTpwqtVUr9SM40F2LWoFoBD5eLaZxL6yoWK_GhBg,3072
56
56
  magic_hour/resources/v1/face_detection/__init__.py,sha256=nLsNn9D1wGryYyD41H7QqAeeHuSsfFSJtYQTMVCQQUk,130
57
57
  magic_hour/resources/v1/face_detection/client.py,sha256=Om_dgFDW6WEUROBUgIrfhVkTDVxbheARvRrOppfhgEY,7577
58
- magic_hour/resources/v1/face_swap/README.md,sha256=ftQHTLIyBW2Nf8o9atUwhDXxMVggtYBgUj9OMpVavN8,4169
58
+ magic_hour/resources/v1/face_swap/README.md,sha256=-iX6DEg9250QI1eEQDcd-VUN4oED302sn8VCsQjC4mo,3752
59
59
  magic_hour/resources/v1/face_swap/__init__.py,sha256=lyg5uAHyYHEUVAiAZtP3zwjGCEGqq8IWbQKexVdhr00,110
60
- magic_hour/resources/v1/face_swap/client.py,sha256=hEVAjyPWUTgm6kx1sGThrZpyiNqSw0ifweuYrpL5ess,9629
60
+ magic_hour/resources/v1/face_swap/client.py,sha256=O5O1r9_8mSCwJMXyFBaKxVyVYCzZgjRz7VmWzQNkAcc,8837
61
61
  magic_hour/resources/v1/face_swap_photo/README.md,sha256=6Gls1zz14wPRKyd3W3AubTTyWNHQJcdTDja_-vuiMXQ,2148
62
62
  magic_hour/resources/v1/face_swap_photo/__init__.py,sha256=NZEplYX5kDPL_0qY0Q5tuxhDevipN0otByTYKMmF_1k,130
63
63
  magic_hour/resources/v1/face_swap_photo/client.py,sha256=h388f4zSnb86EbiuwkGcXNJ7TjkWGgWdxzNwSzWPu28,4753
@@ -72,12 +72,12 @@ magic_hour/resources/v1/image_background_remover/client.py,sha256=MTIQAV_F-No39E
72
72
  magic_hour/resources/v1/image_projects/README.md,sha256=I08pW_UdfXHWqYL3EeF5lTHxoGZNRHtpReUf15ADJkw,2582
73
73
  magic_hour/resources/v1/image_projects/__init__.py,sha256=oBlV4e5IVYe8SclhoEy2VOYB53kKP2DORXwcztAwU3E,130
74
74
  magic_hour/resources/v1/image_projects/client.py,sha256=5gPX2VCfHfsMXB0OuEtTuwD5X3GxQ5i1WMGoEdzc1Dc,5773
75
- magic_hour/resources/v1/image_to_video/README.md,sha256=_ii1IpgRVVjiUe4kKmS62U3xk9uQgZnKK03g-odf4Jg,2856
75
+ magic_hour/resources/v1/image_to_video/README.md,sha256=OnoiL1qq1_UZFZovtOaqlnmkSIgrpBuZIMt4XFbt2LQ,3241
76
76
  magic_hour/resources/v1/image_to_video/__init__.py,sha256=tY_ABo6evwKQBRSq-M84lNX-pXqmxoozukmrO6NhCgA,126
77
- magic_hour/resources/v1/image_to_video/client.py,sha256=_8mRGcs3ZHFvtY70IZ5R5cP-jjxlJraL4VAsUebVWUw,8484
78
- magic_hour/resources/v1/lip_sync/README.md,sha256=gv9DtNT-oFU8UZs9WlKIw-St4FwxPD-UVvMtR6A_M0w,3943
77
+ magic_hour/resources/v1/image_to_video/client.py,sha256=6OyJnn2wmGrEs61vbVeFzh5UjVR_j8LKhFvCdg0w3jg,9350
78
+ magic_hour/resources/v1/lip_sync/README.md,sha256=wuBBaLpU6bd-PwFwAel0QcONEA1Mm-FKObH8PSeXCmY,3526
79
79
  magic_hour/resources/v1/lip_sync/__init__.py,sha256=MlKUAoHNSKcuNzVyqNfLnLtD_PsqEn3l1TtVpPC1JqQ,106
80
- magic_hour/resources/v1/lip_sync/client.py,sha256=UciLbNAC1eCH7kdVn4Tk0tN0Y76t8g1uBJPZyCEEmv4,10039
80
+ magic_hour/resources/v1/lip_sync/client.py,sha256=JjUy-EdsoZ0D1j933Hns1J6mrARrRtbN5GlDMJ933HE,9247
81
81
  magic_hour/resources/v1/photo_colorizer/README.md,sha256=GAtqk0wB5klMdQCFmT6h0jnIAzrJrioko8pmtgImJdE,1248
82
82
  magic_hour/resources/v1/photo_colorizer/__init__.py,sha256=7rDjkeUzWG5GXw_4RD1XH7Ygy-_0_OUFX99IgE_RVbE,134
83
83
  magic_hour/resources/v1/photo_colorizer/client.py,sha256=-Qiw_M3cKWQ_8dXBltssXVZx0q3RAyA38f2Xzx15ADo,3729
@@ -87,9 +87,9 @@ magic_hour/resources/v1/text_to_video/client.py,sha256=j3jMxot3FZD-AlHwEMdBOCuc9
87
87
  magic_hour/resources/v1/video_projects/README.md,sha256=vYlO04yncusdLywSdPUBPbcickNrW9YfcIW0ZQ7V9nw,2757
88
88
  magic_hour/resources/v1/video_projects/__init__.py,sha256=1aj_tE-GAf8BuQ76RQvjGVn8Y39CjdAJDlcsCPucX0w,130
89
89
  magic_hour/resources/v1/video_projects/client.py,sha256=fF0akTw0SMwdfXrLZkMg5SjvkLK9snNhNtPS3OSc1I8,5763
90
- magic_hour/resources/v1/video_to_video/README.md,sha256=xk3-7mLwFpK2-GUpcsLbwAFN1JtV2mu6WIYeVFMB274,4302
90
+ magic_hour/resources/v1/video_to_video/README.md,sha256=d_4b6P68Nhq3UfrQZno33PKbRQOq-dxi1xcGtY07ENs,3885
91
91
  magic_hour/resources/v1/video_to_video/__init__.py,sha256=1SHaRLlsrlBkdxxKBYgdbHrGATlRvqlXc22RpjjHaOA,126
92
- magic_hour/resources/v1/video_to_video/client.py,sha256=pIS1lvfaTkwJnSjLUf-3siEq3pNoY_rTPF64shrP-uI,10936
92
+ magic_hour/resources/v1/video_to_video/client.py,sha256=2m0gtxGqrZ2MsBSWXf3WOIwXQCRoYdjHE-D2Q-m9OI8,10144
93
93
  magic_hour/types/models/__init__.py,sha256=VLH_NXpUAVSZd16zlv4DobqAQdQFPWkWORqttLv5iDw,4048
94
94
  magic_hour/types/models/v1_ai_clothes_changer_create_response.py,sha256=rQJqlDf7Ql46hR4eAepU6SnZS3fH-gewmSJ-OvEY5K0,1102
95
95
  magic_hour/types/models/v1_ai_face_editor_create_response.py,sha256=pGpfZMCRhhDYCV-tj3hfmuXvQPhb44csnyrcwh9tfQM,1098
@@ -162,7 +162,7 @@ magic_hour/types/params/v1_auto_subtitle_generator_create_body_style.py,sha256=I
162
162
  magic_hour/types/params/v1_auto_subtitle_generator_create_body_style_custom_config.py,sha256=D5R-Ek62hDy0lUjBkLtyVlqwxA9pU7EO92AT4EuI8yI,2866
163
163
  magic_hour/types/params/v1_face_detection_create_body.py,sha256=GSk6zzi5jqb-oluAf5IpPfVuwXkKyKceWblieLZ572s,1277
164
164
  magic_hour/types/params/v1_face_detection_create_body_assets.py,sha256=JdNI147nEiCnwWyie9PmG1CoJeG2XiBVN_Uw_hFga7s,1039
165
- magic_hour/types/params/v1_face_swap_create_body.py,sha256=Y8RImuhuZggv6qkKke0cBZCMrIcg7MagYz2mDk91gFg,3185
165
+ magic_hour/types/params/v1_face_swap_create_body.py,sha256=SFMXQsPiTqZ1FFzmyL-cKYxcuDKuYUoFg7Tb07eNPa4,2856
166
166
  magic_hour/types/params/v1_face_swap_create_body_assets.py,sha256=nlXpHP3xmSrC6jeRjrN5U-r95V19oztTCDJ8FCrDN68,3472
167
167
  magic_hour/types/params/v1_face_swap_create_body_assets_face_mappings_item.py,sha256=sUnjwlrUYxUgROjge-jz6IaQd3P-y99ZJp9c4EcMSQY,1713
168
168
  magic_hour/types/params/v1_face_swap_photo_create_body.py,sha256=hGjjZIorSdJ-oXmv8EPrVzun_rdGCO0YsufqeIdqw5U,1048
@@ -172,19 +172,19 @@ magic_hour/types/params/v1_files_upload_urls_create_body.py,sha256=ZeP9EQHeibd_P
172
172
  magic_hour/types/params/v1_files_upload_urls_create_body_items_item.py,sha256=EtD6aC-4FfIeMpEpgE4OJeBuf6GuM6xCX1ebKMbV-cA,1106
173
173
  magic_hour/types/params/v1_image_background_remover_create_body.py,sha256=EaCrKAD0eKla3i8xVSTAtY9psNlNsYZiwAFCxT-6w8E,1132
174
174
  magic_hour/types/params/v1_image_background_remover_create_body_assets.py,sha256=_17W457icUkbBujB0uMBAR0-2l9HS7Kl0B1Mzt7eB9E,1841
175
- magic_hour/types/params/v1_image_to_video_create_body.py,sha256=V9rMZI2qVKNwZhWXyEJu0KCgpHcFlcNYmnUzKwQ2cLA,3168
175
+ magic_hour/types/params/v1_image_to_video_create_body.py,sha256=t5UkwOA1t4vo1x3OSggcdw_qw1U0LOZ1htT93RmD0yM,3619
176
176
  magic_hour/types/params/v1_image_to_video_create_body_assets.py,sha256=ncvcmcPa7tDLTjmuPg_kyve8pfZKVOEIEN4yBvAiK_w,1002
177
177
  magic_hour/types/params/v1_image_to_video_create_body_style.py,sha256=fBrqT9sLY7ljMpNjUUaD03fRPSt4FzQTvgOp0auL0wI,1669
178
- magic_hour/types/params/v1_lip_sync_create_body.py,sha256=ukJhaV4l8nQQmSwCHZbo-HGa5TYRNCPzr8m5saYIokY,3620
178
+ magic_hour/types/params/v1_lip_sync_create_body.py,sha256=PBRwJ8AmfkXVPQ0atSILT9aF4p3V8rTr-HjlWXABTMc,3291
179
179
  magic_hour/types/params/v1_lip_sync_create_body_assets.py,sha256=BBoXpLfLth0eqvWNm55cSb956691NovMEBjnESaP-mI,2184
180
180
  magic_hour/types/params/v1_photo_colorizer_create_body.py,sha256=htPHOJnoUypzhtvShcVDTPrADcHFc7tdXrZc4onzQuE,1059
181
181
  magic_hour/types/params/v1_photo_colorizer_create_body_assets.py,sha256=ZagjM8tondNTcNZT2zBKG_JrHm3WgWh00BVyDANEje8,1031
182
182
  magic_hour/types/params/v1_text_to_video_create_body.py,sha256=XgYc5yVUPnNKTYeEpuPQPJi0r2qO3bPe-h6khUkgk1s,2477
183
183
  magic_hour/types/params/v1_text_to_video_create_body_style.py,sha256=cEZO917hipE4PbIy2vRdmUO2tSRqJcW9vge9z30-aB0,1173
184
- magic_hour/types/params/v1_video_to_video_create_body.py,sha256=JJEi2Q043-jqZH12zAtwhTZk3-OXAIFDbYftIkyrcgE,4064
184
+ magic_hour/types/params/v1_video_to_video_create_body.py,sha256=BV52jJcXnOsKaw-MMK6iS4O4jtkMRH9QtQnZh68Oi0Q,3735
185
185
  magic_hour/types/params/v1_video_to_video_create_body_assets.py,sha256=XwdoqT1x5ElcWb6qUfmtabNsyaatEsOygB4gJ154y-M,1660
186
186
  magic_hour/types/params/v1_video_to_video_create_body_style.py,sha256=RrDBhN2KQnCf9hGsnl3sAYvuFRsxth2JXfe5la0IYJg,5749
187
- magic_hour-0.34.0.dist-info/LICENSE,sha256=F3fxj7JXPgB2K0uj8YXRsVss4u-Dgt_-U3V4VXsivNI,1070
188
- magic_hour-0.34.0.dist-info/METADATA,sha256=83bJzzWYxWtQzSeQO1zHw6mXRMCRC78IGGMDmqDEoOQ,6092
189
- magic_hour-0.34.0.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
190
- magic_hour-0.34.0.dist-info/RECORD,,
187
+ magic_hour-0.35.0.dist-info/LICENSE,sha256=F3fxj7JXPgB2K0uj8YXRsVss4u-Dgt_-U3V4VXsivNI,1070
188
+ magic_hour-0.35.0.dist-info/METADATA,sha256=9ikoFVkvSkHtdnNNCGLAF-j0ci6s7L5aBXUxNg3F7Xk,6092
189
+ magic_hour-0.35.0.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
190
+ magic_hour-0.35.0.dist-info/RECORD,,