magic_hour 0.10.0__py3-none-any.whl → 0.11.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 +1 -1
- magic_hour/resources/v1/ai_clothes_changer/client.py +8 -8
- magic_hour/resources/v1/ai_headshot_generator/client.py +12 -12
- magic_hour/resources/v1/ai_image_generator/client.py +10 -10
- magic_hour/resources/v1/ai_image_upscaler/client.py +12 -12
- magic_hour/resources/v1/ai_photo_editor/client.py +12 -12
- magic_hour/resources/v1/ai_qr_code_generator/client.py +10 -10
- magic_hour/resources/v1/animation/client.py +10 -10
- magic_hour/resources/v1/face_swap/client.py +8 -8
- magic_hour/resources/v1/face_swap_photo/client.py +8 -8
- magic_hour/resources/v1/files/upload_urls/README.md +4 -4
- magic_hour/resources/v1/files/upload_urls/client.py +14 -12
- magic_hour/resources/v1/image_background_remover/client.py +8 -8
- magic_hour/resources/v1/image_projects/client.py +4 -4
- magic_hour/resources/v1/image_to_video/client.py +12 -12
- magic_hour/resources/v1/lip_sync/client.py +8 -8
- magic_hour/resources/v1/text_to_video/client.py +10 -10
- magic_hour/resources/v1/video_projects/client.py +4 -4
- magic_hour/resources/v1/video_to_video/client.py +12 -12
- magic_hour/types/models/__init__.py +51 -51
- magic_hour/types/models/{post_v1_ai_clothes_changer_response.py → v1_ai_clothes_changer_create_response.py} +1 -1
- magic_hour/types/models/v1_ai_headshot_generator_create_response.py +25 -0
- magic_hour/types/models/{post_v1_ai_photo_editor_response.py → v1_ai_image_generator_create_response.py} +1 -1
- magic_hour/types/models/{post_v1_ai_image_generator_response.py → v1_ai_image_upscaler_create_response.py} +1 -1
- magic_hour/types/models/{post_v1_face_swap_photo_response.py → v1_ai_photo_editor_create_response.py} +1 -1
- magic_hour/types/models/{post_v1_ai_headshot_generator_response.py → v1_ai_qr_code_generator_create_response.py} +1 -1
- magic_hour/types/models/{post_v1_text_to_video_response.py → v1_animation_create_response.py} +1 -1
- magic_hour/types/models/{post_v1_face_swap_response.py → v1_face_swap_create_response.py} +1 -1
- magic_hour/types/models/{post_v1_ai_image_upscaler_response.py → v1_face_swap_photo_create_response.py} +1 -1
- magic_hour/types/models/v1_files_upload_urls_create_response.py +21 -0
- magic_hour/types/models/{post_v1_files_upload_urls_response_items_item.py → v1_files_upload_urls_create_response_items_item.py} +2 -2
- magic_hour/types/models/v1_image_background_remover_create_response.py +25 -0
- magic_hour/types/models/{get_v1_image_projects_id_response.py → v1_image_projects_get_response.py} +7 -7
- magic_hour/types/models/{get_v1_image_projects_id_response_downloads_item.py → v1_image_projects_get_response_downloads_item.py} +1 -1
- magic_hour/types/models/{get_v1_video_projects_id_response_error.py → v1_image_projects_get_response_error.py} +2 -2
- magic_hour/types/models/{post_v1_lip_sync_response.py → v1_image_to_video_create_response.py} +1 -1
- magic_hour/types/models/{post_v1_animation_response.py → v1_lip_sync_create_response.py} +1 -1
- magic_hour/types/models/{post_v1_image_to_video_response.py → v1_text_to_video_create_response.py} +1 -1
- magic_hour/types/models/{get_v1_video_projects_id_response.py → v1_video_projects_get_response.py} +10 -11
- magic_hour/types/models/{get_v1_video_projects_id_response_download.py → v1_video_projects_get_response_download.py} +1 -1
- magic_hour/types/models/{get_v1_video_projects_id_response_downloads_item.py → v1_video_projects_get_response_downloads_item.py} +1 -1
- magic_hour/types/models/{get_v1_image_projects_id_response_error.py → v1_video_projects_get_response_error.py} +2 -2
- magic_hour/types/models/v1_video_to_video_create_response.py +25 -0
- magic_hour/types/params/__init__.py +188 -182
- magic_hour/types/params/v1_ai_clothes_changer_create_body.py +40 -0
- magic_hour/types/params/{post_v1_ai_clothes_changer_body_assets.py → v1_ai_clothes_changer_create_body_assets.py} +3 -3
- magic_hour/types/params/v1_ai_headshot_generator_create_body.py +49 -0
- magic_hour/types/params/{post_v1_ai_headshot_generator_body_assets.py → v1_ai_headshot_generator_create_body_assets.py} +3 -3
- magic_hour/types/params/{post_v1_ai_headshot_generator_body_style.py → v1_ai_headshot_generator_create_body_style.py} +4 -4
- magic_hour/types/params/{post_v1_ai_image_generator_body.py → v1_ai_image_generator_create_body.py} +9 -9
- magic_hour/types/params/{post_v1_ai_image_generator_body_style.py → v1_ai_image_generator_create_body_style.py} +4 -4
- magic_hour/types/params/v1_ai_image_upscaler_create_body.py +57 -0
- magic_hour/types/params/{post_v1_ai_image_upscaler_body_assets.py → v1_ai_image_upscaler_create_body_assets.py} +3 -3
- magic_hour/types/params/{post_v1_ai_image_upscaler_body_style.py → v1_ai_image_upscaler_create_body_style.py} +4 -4
- magic_hour/types/params/{post_v1_ai_photo_editor_body.py → v1_ai_photo_editor_create_body.py} +14 -14
- magic_hour/types/params/{post_v1_ai_photo_editor_body_assets.py → v1_ai_photo_editor_create_body_assets.py} +3 -3
- magic_hour/types/params/{post_v1_ai_photo_editor_body_style.py → v1_ai_photo_editor_create_body_style.py} +4 -4
- magic_hour/types/params/{post_v1_ai_qr_code_generator_body.py → v1_ai_qr_code_generator_create_body.py} +9 -9
- magic_hour/types/params/{post_v1_ai_qr_code_generator_body_style.py → v1_ai_qr_code_generator_create_body_style.py} +4 -4
- magic_hour/types/params/{post_v1_animation_body.py → v1_animation_create_body.py} +14 -14
- magic_hour/types/params/{post_v1_animation_body_assets.py → v1_animation_create_body_assets.py} +3 -3
- magic_hour/types/params/{post_v1_animation_body_style.py → v1_animation_create_body_style.py} +3 -3
- magic_hour/types/params/{post_v1_face_swap_body.py → v1_face_swap_create_body.py} +9 -9
- magic_hour/types/params/{post_v1_face_swap_body_assets.py → v1_face_swap_create_body_assets.py} +3 -3
- magic_hour/types/params/v1_face_swap_photo_create_body.py +40 -0
- magic_hour/types/params/{post_v1_face_swap_photo_body_assets.py → v1_face_swap_photo_create_body_assets.py} +3 -3
- magic_hour/types/params/v1_files_upload_urls_create_body.py +33 -0
- magic_hour/types/params/{post_v1_files_upload_urls_body_items_item.py → v1_files_upload_urls_create_body_items_item.py} +6 -6
- magic_hour/types/params/v1_image_background_remover_create_body.py +40 -0
- magic_hour/types/params/{post_v1_image_background_remover_body_assets.py → v1_image_background_remover_create_body_assets.py} +3 -3
- magic_hour/types/params/{post_v1_image_to_video_body.py → v1_image_to_video_create_body.py} +14 -14
- magic_hour/types/params/{post_v1_image_to_video_body_assets.py → v1_image_to_video_create_body_assets.py} +3 -3
- magic_hour/types/params/{post_v1_image_to_video_body_style.py → v1_image_to_video_create_body_style.py} +4 -4
- magic_hour/types/params/{post_v1_lip_sync_body.py → v1_lip_sync_create_body.py} +9 -9
- magic_hour/types/params/{post_v1_lip_sync_body_assets.py → v1_lip_sync_create_body_assets.py} +3 -3
- magic_hour/types/params/{post_v1_text_to_video_body.py → v1_text_to_video_create_body.py} +9 -9
- magic_hour/types/params/{post_v1_text_to_video_body_style.py → v1_text_to_video_create_body_style.py} +4 -4
- magic_hour/types/params/{post_v1_video_to_video_body.py → v1_video_to_video_create_body.py} +14 -14
- magic_hour/types/params/{post_v1_video_to_video_body_assets.py → v1_video_to_video_create_body_assets.py} +3 -3
- magic_hour/types/params/{post_v1_video_to_video_body_style.py → v1_video_to_video_create_body_style.py} +4 -4
- {magic_hour-0.10.0.dist-info → magic_hour-0.11.0.dist-info}/METADATA +1 -1
- magic_hour-0.11.0.dist-info/RECORD +133 -0
- magic_hour/types/models/post_v1_ai_qr_code_generator_response.py +0 -25
- magic_hour/types/models/post_v1_files_upload_urls_response.py +0 -21
- magic_hour/types/models/post_v1_image_background_remover_response.py +0 -25
- magic_hour/types/models/post_v1_video_to_video_response.py +0 -25
- magic_hour/types/params/post_v1_ai_clothes_changer_body.py +0 -40
- magic_hour/types/params/post_v1_ai_headshot_generator_body.py +0 -49
- magic_hour/types/params/post_v1_ai_image_upscaler_body.py +0 -57
- magic_hour/types/params/post_v1_face_swap_photo_body.py +0 -40
- magic_hour/types/params/post_v1_files_upload_urls_body.py +0 -31
- magic_hour/types/params/post_v1_image_background_remover_body.py +0 -40
- magic_hour-0.10.0.dist-info/RECORD +0 -133
- {magic_hour-0.10.0.dist-info → magic_hour-0.11.0.dist-info}/LICENSE +0 -0
- {magic_hour-0.10.0.dist-info → magic_hour-0.11.0.dist-info}/WHEEL +0 -0
|
@@ -18,12 +18,12 @@ class FaceSwapPhotoClient:
|
|
|
18
18
|
def create(
|
|
19
19
|
self,
|
|
20
20
|
*,
|
|
21
|
-
assets: params.
|
|
21
|
+
assets: params.V1FaceSwapPhotoCreateBodyAssets,
|
|
22
22
|
name: typing.Union[
|
|
23
23
|
typing.Optional[str], type_utils.NotGiven
|
|
24
24
|
] = type_utils.NOT_GIVEN,
|
|
25
25
|
request_options: typing.Optional[RequestOptions] = None,
|
|
26
|
-
) -> models.
|
|
26
|
+
) -> models.V1FaceSwapPhotoCreateResponse:
|
|
27
27
|
"""
|
|
28
28
|
Face Swap Photo
|
|
29
29
|
|
|
@@ -56,14 +56,14 @@ class FaceSwapPhotoClient:
|
|
|
56
56
|
"""
|
|
57
57
|
_json = to_encodable(
|
|
58
58
|
item={"name": name, "assets": assets},
|
|
59
|
-
dump_with=params.
|
|
59
|
+
dump_with=params._SerializerV1FaceSwapPhotoCreateBody,
|
|
60
60
|
)
|
|
61
61
|
return self._base_client.request(
|
|
62
62
|
method="POST",
|
|
63
63
|
path="/v1/face-swap-photo",
|
|
64
64
|
auth_names=["bearerAuth"],
|
|
65
65
|
json=_json,
|
|
66
|
-
cast_to=models.
|
|
66
|
+
cast_to=models.V1FaceSwapPhotoCreateResponse,
|
|
67
67
|
request_options=request_options or default_request_options(),
|
|
68
68
|
)
|
|
69
69
|
|
|
@@ -75,12 +75,12 @@ class AsyncFaceSwapPhotoClient:
|
|
|
75
75
|
async def create(
|
|
76
76
|
self,
|
|
77
77
|
*,
|
|
78
|
-
assets: params.
|
|
78
|
+
assets: params.V1FaceSwapPhotoCreateBodyAssets,
|
|
79
79
|
name: typing.Union[
|
|
80
80
|
typing.Optional[str], type_utils.NotGiven
|
|
81
81
|
] = type_utils.NOT_GIVEN,
|
|
82
82
|
request_options: typing.Optional[RequestOptions] = None,
|
|
83
|
-
) -> models.
|
|
83
|
+
) -> models.V1FaceSwapPhotoCreateResponse:
|
|
84
84
|
"""
|
|
85
85
|
Face Swap Photo
|
|
86
86
|
|
|
@@ -113,13 +113,13 @@ class AsyncFaceSwapPhotoClient:
|
|
|
113
113
|
"""
|
|
114
114
|
_json = to_encodable(
|
|
115
115
|
item={"name": name, "assets": assets},
|
|
116
|
-
dump_with=params.
|
|
116
|
+
dump_with=params._SerializerV1FaceSwapPhotoCreateBody,
|
|
117
117
|
)
|
|
118
118
|
return await self._base_client.request(
|
|
119
119
|
method="POST",
|
|
120
120
|
path="/v1/face-swap-photo",
|
|
121
121
|
auth_names=["bearerAuth"],
|
|
122
122
|
json=_json,
|
|
123
|
-
cast_to=models.
|
|
123
|
+
cast_to=models.V1FaceSwapPhotoCreateResponse,
|
|
124
124
|
request_options=request_options or default_request_options(),
|
|
125
125
|
)
|
|
@@ -34,8 +34,8 @@ from os import getenv
|
|
|
34
34
|
client = Client(token=getenv("API_TOKEN"))
|
|
35
35
|
res = client.v1.files.upload_urls.create(
|
|
36
36
|
items=[
|
|
37
|
-
{"extension": "mp4", "
|
|
38
|
-
{"extension": "mp3", "
|
|
37
|
+
{"extension": "mp4", "type_": "video"},
|
|
38
|
+
{"extension": "mp3", "type_": "audio"},
|
|
39
39
|
]
|
|
40
40
|
)
|
|
41
41
|
```
|
|
@@ -49,8 +49,8 @@ from os import getenv
|
|
|
49
49
|
client = AsyncClient(token=getenv("API_TOKEN"))
|
|
50
50
|
res = await client.v1.files.upload_urls.create(
|
|
51
51
|
items=[
|
|
52
|
-
{"extension": "mp4", "
|
|
53
|
-
{"extension": "mp3", "
|
|
52
|
+
{"extension": "mp4", "type_": "video"},
|
|
53
|
+
{"extension": "mp3", "type_": "audio"},
|
|
54
54
|
]
|
|
55
55
|
)
|
|
56
56
|
```
|
|
@@ -17,9 +17,9 @@ class UploadUrlsClient:
|
|
|
17
17
|
def create(
|
|
18
18
|
self,
|
|
19
19
|
*,
|
|
20
|
-
items: typing.List[params.
|
|
20
|
+
items: typing.List[params.V1FilesUploadUrlsCreateBodyItemsItem],
|
|
21
21
|
request_options: typing.Optional[RequestOptions] = None,
|
|
22
|
-
) -> models.
|
|
22
|
+
) -> models.V1FilesUploadUrlsCreateResponse:
|
|
23
23
|
"""
|
|
24
24
|
Generate asset upload urls
|
|
25
25
|
|
|
@@ -47,7 +47,7 @@ class UploadUrlsClient:
|
|
|
47
47
|
POST /v1/files/upload-urls
|
|
48
48
|
|
|
49
49
|
Args:
|
|
50
|
-
items: typing.List[
|
|
50
|
+
items: typing.List[V1FilesUploadUrlsCreateBodyItemsItem]
|
|
51
51
|
request_options: Additional options to customize the HTTP request
|
|
52
52
|
|
|
53
53
|
Returns:
|
|
@@ -59,18 +59,19 @@ class UploadUrlsClient:
|
|
|
59
59
|
|
|
60
60
|
Examples:
|
|
61
61
|
```py
|
|
62
|
-
client.v1.files.upload_urls.create(items=[{"extension": "mp4", "
|
|
62
|
+
client.v1.files.upload_urls.create(items=[{"extension": "mp4", "type_": "video"}, {"extension": "mp3", "type_": "audio"}])
|
|
63
63
|
```
|
|
64
64
|
"""
|
|
65
65
|
_json = to_encodable(
|
|
66
|
-
item={"items": items},
|
|
66
|
+
item={"items": items},
|
|
67
|
+
dump_with=params._SerializerV1FilesUploadUrlsCreateBody,
|
|
67
68
|
)
|
|
68
69
|
return self._base_client.request(
|
|
69
70
|
method="POST",
|
|
70
71
|
path="/v1/files/upload-urls",
|
|
71
72
|
auth_names=["bearerAuth"],
|
|
72
73
|
json=_json,
|
|
73
|
-
cast_to=models.
|
|
74
|
+
cast_to=models.V1FilesUploadUrlsCreateResponse,
|
|
74
75
|
request_options=request_options or default_request_options(),
|
|
75
76
|
)
|
|
76
77
|
|
|
@@ -82,9 +83,9 @@ class AsyncUploadUrlsClient:
|
|
|
82
83
|
async def create(
|
|
83
84
|
self,
|
|
84
85
|
*,
|
|
85
|
-
items: typing.List[params.
|
|
86
|
+
items: typing.List[params.V1FilesUploadUrlsCreateBodyItemsItem],
|
|
86
87
|
request_options: typing.Optional[RequestOptions] = None,
|
|
87
|
-
) -> models.
|
|
88
|
+
) -> models.V1FilesUploadUrlsCreateResponse:
|
|
88
89
|
"""
|
|
89
90
|
Generate asset upload urls
|
|
90
91
|
|
|
@@ -112,7 +113,7 @@ class AsyncUploadUrlsClient:
|
|
|
112
113
|
POST /v1/files/upload-urls
|
|
113
114
|
|
|
114
115
|
Args:
|
|
115
|
-
items: typing.List[
|
|
116
|
+
items: typing.List[V1FilesUploadUrlsCreateBodyItemsItem]
|
|
116
117
|
request_options: Additional options to customize the HTTP request
|
|
117
118
|
|
|
118
119
|
Returns:
|
|
@@ -124,17 +125,18 @@ class AsyncUploadUrlsClient:
|
|
|
124
125
|
|
|
125
126
|
Examples:
|
|
126
127
|
```py
|
|
127
|
-
await client.v1.files.upload_urls.create(items=[{"extension": "mp4", "
|
|
128
|
+
await client.v1.files.upload_urls.create(items=[{"extension": "mp4", "type_": "video"}, {"extension": "mp3", "type_": "audio"}])
|
|
128
129
|
```
|
|
129
130
|
"""
|
|
130
131
|
_json = to_encodable(
|
|
131
|
-
item={"items": items},
|
|
132
|
+
item={"items": items},
|
|
133
|
+
dump_with=params._SerializerV1FilesUploadUrlsCreateBody,
|
|
132
134
|
)
|
|
133
135
|
return await self._base_client.request(
|
|
134
136
|
method="POST",
|
|
135
137
|
path="/v1/files/upload-urls",
|
|
136
138
|
auth_names=["bearerAuth"],
|
|
137
139
|
json=_json,
|
|
138
|
-
cast_to=models.
|
|
140
|
+
cast_to=models.V1FilesUploadUrlsCreateResponse,
|
|
139
141
|
request_options=request_options or default_request_options(),
|
|
140
142
|
)
|
|
@@ -18,12 +18,12 @@ class ImageBackgroundRemoverClient:
|
|
|
18
18
|
def create(
|
|
19
19
|
self,
|
|
20
20
|
*,
|
|
21
|
-
assets: params.
|
|
21
|
+
assets: params.V1ImageBackgroundRemoverCreateBodyAssets,
|
|
22
22
|
name: typing.Union[
|
|
23
23
|
typing.Optional[str], type_utils.NotGiven
|
|
24
24
|
] = type_utils.NOT_GIVEN,
|
|
25
25
|
request_options: typing.Optional[RequestOptions] = None,
|
|
26
|
-
) -> models.
|
|
26
|
+
) -> models.V1ImageBackgroundRemoverCreateResponse:
|
|
27
27
|
"""
|
|
28
28
|
Image Background Remover
|
|
29
29
|
|
|
@@ -53,14 +53,14 @@ class ImageBackgroundRemoverClient:
|
|
|
53
53
|
"""
|
|
54
54
|
_json = to_encodable(
|
|
55
55
|
item={"name": name, "assets": assets},
|
|
56
|
-
dump_with=params.
|
|
56
|
+
dump_with=params._SerializerV1ImageBackgroundRemoverCreateBody,
|
|
57
57
|
)
|
|
58
58
|
return self._base_client.request(
|
|
59
59
|
method="POST",
|
|
60
60
|
path="/v1/image-background-remover",
|
|
61
61
|
auth_names=["bearerAuth"],
|
|
62
62
|
json=_json,
|
|
63
|
-
cast_to=models.
|
|
63
|
+
cast_to=models.V1ImageBackgroundRemoverCreateResponse,
|
|
64
64
|
request_options=request_options or default_request_options(),
|
|
65
65
|
)
|
|
66
66
|
|
|
@@ -72,12 +72,12 @@ class AsyncImageBackgroundRemoverClient:
|
|
|
72
72
|
async def create(
|
|
73
73
|
self,
|
|
74
74
|
*,
|
|
75
|
-
assets: params.
|
|
75
|
+
assets: params.V1ImageBackgroundRemoverCreateBodyAssets,
|
|
76
76
|
name: typing.Union[
|
|
77
77
|
typing.Optional[str], type_utils.NotGiven
|
|
78
78
|
] = type_utils.NOT_GIVEN,
|
|
79
79
|
request_options: typing.Optional[RequestOptions] = None,
|
|
80
|
-
) -> models.
|
|
80
|
+
) -> models.V1ImageBackgroundRemoverCreateResponse:
|
|
81
81
|
"""
|
|
82
82
|
Image Background Remover
|
|
83
83
|
|
|
@@ -107,13 +107,13 @@ class AsyncImageBackgroundRemoverClient:
|
|
|
107
107
|
"""
|
|
108
108
|
_json = to_encodable(
|
|
109
109
|
item={"name": name, "assets": assets},
|
|
110
|
-
dump_with=params.
|
|
110
|
+
dump_with=params._SerializerV1ImageBackgroundRemoverCreateBody,
|
|
111
111
|
)
|
|
112
112
|
return await self._base_client.request(
|
|
113
113
|
method="POST",
|
|
114
114
|
path="/v1/image-background-remover",
|
|
115
115
|
auth_names=["bearerAuth"],
|
|
116
116
|
json=_json,
|
|
117
|
-
cast_to=models.
|
|
117
|
+
cast_to=models.V1ImageBackgroundRemoverCreateResponse,
|
|
118
118
|
request_options=request_options or default_request_options(),
|
|
119
119
|
)
|
|
@@ -49,7 +49,7 @@ class ImageProjectsClient:
|
|
|
49
49
|
|
|
50
50
|
def get(
|
|
51
51
|
self, *, id: str, request_options: typing.Optional[RequestOptions] = None
|
|
52
|
-
) -> models.
|
|
52
|
+
) -> models.V1ImageProjectsGetResponse:
|
|
53
53
|
"""
|
|
54
54
|
Get image details
|
|
55
55
|
|
|
@@ -86,7 +86,7 @@ class ImageProjectsClient:
|
|
|
86
86
|
method="GET",
|
|
87
87
|
path=f"/v1/image-projects/{id}",
|
|
88
88
|
auth_names=["bearerAuth"],
|
|
89
|
-
cast_to=models.
|
|
89
|
+
cast_to=models.V1ImageProjectsGetResponse,
|
|
90
90
|
request_options=request_options or default_request_options(),
|
|
91
91
|
)
|
|
92
92
|
|
|
@@ -131,7 +131,7 @@ class AsyncImageProjectsClient:
|
|
|
131
131
|
|
|
132
132
|
async def get(
|
|
133
133
|
self, *, id: str, request_options: typing.Optional[RequestOptions] = None
|
|
134
|
-
) -> models.
|
|
134
|
+
) -> models.V1ImageProjectsGetResponse:
|
|
135
135
|
"""
|
|
136
136
|
Get image details
|
|
137
137
|
|
|
@@ -168,6 +168,6 @@ class AsyncImageProjectsClient:
|
|
|
168
168
|
method="GET",
|
|
169
169
|
path=f"/v1/image-projects/{id}",
|
|
170
170
|
auth_names=["bearerAuth"],
|
|
171
|
-
cast_to=models.
|
|
171
|
+
cast_to=models.V1ImageProjectsGetResponse,
|
|
172
172
|
request_options=request_options or default_request_options(),
|
|
173
173
|
)
|
|
@@ -18,16 +18,16 @@ class ImageToVideoClient:
|
|
|
18
18
|
def create(
|
|
19
19
|
self,
|
|
20
20
|
*,
|
|
21
|
-
assets: params.
|
|
21
|
+
assets: params.V1ImageToVideoCreateBodyAssets,
|
|
22
22
|
end_seconds: float,
|
|
23
23
|
height: int,
|
|
24
|
-
style: params.
|
|
24
|
+
style: params.V1ImageToVideoCreateBodyStyle,
|
|
25
25
|
width: int,
|
|
26
26
|
name: typing.Union[
|
|
27
27
|
typing.Optional[str], type_utils.NotGiven
|
|
28
28
|
] = type_utils.NOT_GIVEN,
|
|
29
29
|
request_options: typing.Optional[RequestOptions] = None,
|
|
30
|
-
) -> models.
|
|
30
|
+
) -> models.V1ImageToVideoCreateResponse:
|
|
31
31
|
"""
|
|
32
32
|
Image-to-Video
|
|
33
33
|
|
|
@@ -43,7 +43,7 @@ class ImageToVideoClient:
|
|
|
43
43
|
assets: Provide the assets for image-to-video.
|
|
44
44
|
end_seconds: The total duration of the output video in seconds.
|
|
45
45
|
height: The height of the input video. This value will help determine the final orientation of the output video. The output video resolution may not match the input.
|
|
46
|
-
style:
|
|
46
|
+
style: V1ImageToVideoCreateBodyStyle
|
|
47
47
|
width: The width of the input video. This value will help determine the final orientation of the output video. The output video resolution may not match the input.
|
|
48
48
|
request_options: Additional options to customize the HTTP request
|
|
49
49
|
|
|
@@ -75,14 +75,14 @@ class ImageToVideoClient:
|
|
|
75
75
|
"style": style,
|
|
76
76
|
"width": width,
|
|
77
77
|
},
|
|
78
|
-
dump_with=params.
|
|
78
|
+
dump_with=params._SerializerV1ImageToVideoCreateBody,
|
|
79
79
|
)
|
|
80
80
|
return self._base_client.request(
|
|
81
81
|
method="POST",
|
|
82
82
|
path="/v1/image-to-video",
|
|
83
83
|
auth_names=["bearerAuth"],
|
|
84
84
|
json=_json,
|
|
85
|
-
cast_to=models.
|
|
85
|
+
cast_to=models.V1ImageToVideoCreateResponse,
|
|
86
86
|
request_options=request_options or default_request_options(),
|
|
87
87
|
)
|
|
88
88
|
|
|
@@ -94,16 +94,16 @@ class AsyncImageToVideoClient:
|
|
|
94
94
|
async def create(
|
|
95
95
|
self,
|
|
96
96
|
*,
|
|
97
|
-
assets: params.
|
|
97
|
+
assets: params.V1ImageToVideoCreateBodyAssets,
|
|
98
98
|
end_seconds: float,
|
|
99
99
|
height: int,
|
|
100
|
-
style: params.
|
|
100
|
+
style: params.V1ImageToVideoCreateBodyStyle,
|
|
101
101
|
width: int,
|
|
102
102
|
name: typing.Union[
|
|
103
103
|
typing.Optional[str], type_utils.NotGiven
|
|
104
104
|
] = type_utils.NOT_GIVEN,
|
|
105
105
|
request_options: typing.Optional[RequestOptions] = None,
|
|
106
|
-
) -> models.
|
|
106
|
+
) -> models.V1ImageToVideoCreateResponse:
|
|
107
107
|
"""
|
|
108
108
|
Image-to-Video
|
|
109
109
|
|
|
@@ -119,7 +119,7 @@ class AsyncImageToVideoClient:
|
|
|
119
119
|
assets: Provide the assets for image-to-video.
|
|
120
120
|
end_seconds: The total duration of the output video in seconds.
|
|
121
121
|
height: The height of the input video. This value will help determine the final orientation of the output video. The output video resolution may not match the input.
|
|
122
|
-
style:
|
|
122
|
+
style: V1ImageToVideoCreateBodyStyle
|
|
123
123
|
width: The width of the input video. This value will help determine the final orientation of the output video. The output video resolution may not match the input.
|
|
124
124
|
request_options: Additional options to customize the HTTP request
|
|
125
125
|
|
|
@@ -151,13 +151,13 @@ class AsyncImageToVideoClient:
|
|
|
151
151
|
"style": style,
|
|
152
152
|
"width": width,
|
|
153
153
|
},
|
|
154
|
-
dump_with=params.
|
|
154
|
+
dump_with=params._SerializerV1ImageToVideoCreateBody,
|
|
155
155
|
)
|
|
156
156
|
return await self._base_client.request(
|
|
157
157
|
method="POST",
|
|
158
158
|
path="/v1/image-to-video",
|
|
159
159
|
auth_names=["bearerAuth"],
|
|
160
160
|
json=_json,
|
|
161
|
-
cast_to=models.
|
|
161
|
+
cast_to=models.V1ImageToVideoCreateResponse,
|
|
162
162
|
request_options=request_options or default_request_options(),
|
|
163
163
|
)
|
|
@@ -18,7 +18,7 @@ class LipSyncClient:
|
|
|
18
18
|
def create(
|
|
19
19
|
self,
|
|
20
20
|
*,
|
|
21
|
-
assets: params.
|
|
21
|
+
assets: params.V1LipSyncCreateBodyAssets,
|
|
22
22
|
end_seconds: float,
|
|
23
23
|
height: int,
|
|
24
24
|
start_seconds: float,
|
|
@@ -30,7 +30,7 @@ class LipSyncClient:
|
|
|
30
30
|
typing.Optional[str], type_utils.NotGiven
|
|
31
31
|
] = type_utils.NOT_GIVEN,
|
|
32
32
|
request_options: typing.Optional[RequestOptions] = None,
|
|
33
|
-
) -> models.
|
|
33
|
+
) -> models.V1LipSyncCreateResponse:
|
|
34
34
|
"""
|
|
35
35
|
Lip Sync
|
|
36
36
|
|
|
@@ -84,14 +84,14 @@ class LipSyncClient:
|
|
|
84
84
|
"start_seconds": start_seconds,
|
|
85
85
|
"width": width,
|
|
86
86
|
},
|
|
87
|
-
dump_with=params.
|
|
87
|
+
dump_with=params._SerializerV1LipSyncCreateBody,
|
|
88
88
|
)
|
|
89
89
|
return self._base_client.request(
|
|
90
90
|
method="POST",
|
|
91
91
|
path="/v1/lip-sync",
|
|
92
92
|
auth_names=["bearerAuth"],
|
|
93
93
|
json=_json,
|
|
94
|
-
cast_to=models.
|
|
94
|
+
cast_to=models.V1LipSyncCreateResponse,
|
|
95
95
|
request_options=request_options or default_request_options(),
|
|
96
96
|
)
|
|
97
97
|
|
|
@@ -103,7 +103,7 @@ class AsyncLipSyncClient:
|
|
|
103
103
|
async def create(
|
|
104
104
|
self,
|
|
105
105
|
*,
|
|
106
|
-
assets: params.
|
|
106
|
+
assets: params.V1LipSyncCreateBodyAssets,
|
|
107
107
|
end_seconds: float,
|
|
108
108
|
height: int,
|
|
109
109
|
start_seconds: float,
|
|
@@ -115,7 +115,7 @@ class AsyncLipSyncClient:
|
|
|
115
115
|
typing.Optional[str], type_utils.NotGiven
|
|
116
116
|
] = type_utils.NOT_GIVEN,
|
|
117
117
|
request_options: typing.Optional[RequestOptions] = None,
|
|
118
|
-
) -> models.
|
|
118
|
+
) -> models.V1LipSyncCreateResponse:
|
|
119
119
|
"""
|
|
120
120
|
Lip Sync
|
|
121
121
|
|
|
@@ -169,13 +169,13 @@ class AsyncLipSyncClient:
|
|
|
169
169
|
"start_seconds": start_seconds,
|
|
170
170
|
"width": width,
|
|
171
171
|
},
|
|
172
|
-
dump_with=params.
|
|
172
|
+
dump_with=params._SerializerV1LipSyncCreateBody,
|
|
173
173
|
)
|
|
174
174
|
return await self._base_client.request(
|
|
175
175
|
method="POST",
|
|
176
176
|
path="/v1/lip-sync",
|
|
177
177
|
auth_names=["bearerAuth"],
|
|
178
178
|
json=_json,
|
|
179
|
-
cast_to=models.
|
|
179
|
+
cast_to=models.V1LipSyncCreateResponse,
|
|
180
180
|
request_options=request_options or default_request_options(),
|
|
181
181
|
)
|
|
@@ -21,12 +21,12 @@ class TextToVideoClient:
|
|
|
21
21
|
*,
|
|
22
22
|
end_seconds: float,
|
|
23
23
|
orientation: typing_extensions.Literal["landscape", "portrait", "square"],
|
|
24
|
-
style: params.
|
|
24
|
+
style: params.V1TextToVideoCreateBodyStyle,
|
|
25
25
|
name: typing.Union[
|
|
26
26
|
typing.Optional[str], type_utils.NotGiven
|
|
27
27
|
] = type_utils.NOT_GIVEN,
|
|
28
28
|
request_options: typing.Optional[RequestOptions] = None,
|
|
29
|
-
) -> models.
|
|
29
|
+
) -> models.V1TextToVideoCreateResponse:
|
|
30
30
|
"""
|
|
31
31
|
Text-to-Video
|
|
32
32
|
|
|
@@ -41,7 +41,7 @@ class TextToVideoClient:
|
|
|
41
41
|
name: The name of video
|
|
42
42
|
end_seconds: The total duration of the output video in seconds.
|
|
43
43
|
orientation: Determines the orientation of the output video
|
|
44
|
-
style:
|
|
44
|
+
style: V1TextToVideoCreateBodyStyle
|
|
45
45
|
request_options: Additional options to customize the HTTP request
|
|
46
46
|
|
|
47
47
|
Returns:
|
|
@@ -68,14 +68,14 @@ class TextToVideoClient:
|
|
|
68
68
|
"orientation": orientation,
|
|
69
69
|
"style": style,
|
|
70
70
|
},
|
|
71
|
-
dump_with=params.
|
|
71
|
+
dump_with=params._SerializerV1TextToVideoCreateBody,
|
|
72
72
|
)
|
|
73
73
|
return self._base_client.request(
|
|
74
74
|
method="POST",
|
|
75
75
|
path="/v1/text-to-video",
|
|
76
76
|
auth_names=["bearerAuth"],
|
|
77
77
|
json=_json,
|
|
78
|
-
cast_to=models.
|
|
78
|
+
cast_to=models.V1TextToVideoCreateResponse,
|
|
79
79
|
request_options=request_options or default_request_options(),
|
|
80
80
|
)
|
|
81
81
|
|
|
@@ -89,12 +89,12 @@ class AsyncTextToVideoClient:
|
|
|
89
89
|
*,
|
|
90
90
|
end_seconds: float,
|
|
91
91
|
orientation: typing_extensions.Literal["landscape", "portrait", "square"],
|
|
92
|
-
style: params.
|
|
92
|
+
style: params.V1TextToVideoCreateBodyStyle,
|
|
93
93
|
name: typing.Union[
|
|
94
94
|
typing.Optional[str], type_utils.NotGiven
|
|
95
95
|
] = type_utils.NOT_GIVEN,
|
|
96
96
|
request_options: typing.Optional[RequestOptions] = None,
|
|
97
|
-
) -> models.
|
|
97
|
+
) -> models.V1TextToVideoCreateResponse:
|
|
98
98
|
"""
|
|
99
99
|
Text-to-Video
|
|
100
100
|
|
|
@@ -109,7 +109,7 @@ class AsyncTextToVideoClient:
|
|
|
109
109
|
name: The name of video
|
|
110
110
|
end_seconds: The total duration of the output video in seconds.
|
|
111
111
|
orientation: Determines the orientation of the output video
|
|
112
|
-
style:
|
|
112
|
+
style: V1TextToVideoCreateBodyStyle
|
|
113
113
|
request_options: Additional options to customize the HTTP request
|
|
114
114
|
|
|
115
115
|
Returns:
|
|
@@ -136,13 +136,13 @@ class AsyncTextToVideoClient:
|
|
|
136
136
|
"orientation": orientation,
|
|
137
137
|
"style": style,
|
|
138
138
|
},
|
|
139
|
-
dump_with=params.
|
|
139
|
+
dump_with=params._SerializerV1TextToVideoCreateBody,
|
|
140
140
|
)
|
|
141
141
|
return await self._base_client.request(
|
|
142
142
|
method="POST",
|
|
143
143
|
path="/v1/text-to-video",
|
|
144
144
|
auth_names=["bearerAuth"],
|
|
145
145
|
json=_json,
|
|
146
|
-
cast_to=models.
|
|
146
|
+
cast_to=models.V1TextToVideoCreateResponse,
|
|
147
147
|
request_options=request_options or default_request_options(),
|
|
148
148
|
)
|
|
@@ -49,7 +49,7 @@ class VideoProjectsClient:
|
|
|
49
49
|
|
|
50
50
|
def get(
|
|
51
51
|
self, *, id: str, request_options: typing.Optional[RequestOptions] = None
|
|
52
|
-
) -> models.
|
|
52
|
+
) -> models.V1VideoProjectsGetResponse:
|
|
53
53
|
"""
|
|
54
54
|
Get video details
|
|
55
55
|
|
|
@@ -86,7 +86,7 @@ class VideoProjectsClient:
|
|
|
86
86
|
method="GET",
|
|
87
87
|
path=f"/v1/video-projects/{id}",
|
|
88
88
|
auth_names=["bearerAuth"],
|
|
89
|
-
cast_to=models.
|
|
89
|
+
cast_to=models.V1VideoProjectsGetResponse,
|
|
90
90
|
request_options=request_options or default_request_options(),
|
|
91
91
|
)
|
|
92
92
|
|
|
@@ -131,7 +131,7 @@ class AsyncVideoProjectsClient:
|
|
|
131
131
|
|
|
132
132
|
async def get(
|
|
133
133
|
self, *, id: str, request_options: typing.Optional[RequestOptions] = None
|
|
134
|
-
) -> models.
|
|
134
|
+
) -> models.V1VideoProjectsGetResponse:
|
|
135
135
|
"""
|
|
136
136
|
Get video details
|
|
137
137
|
|
|
@@ -168,6 +168,6 @@ class AsyncVideoProjectsClient:
|
|
|
168
168
|
method="GET",
|
|
169
169
|
path=f"/v1/video-projects/{id}",
|
|
170
170
|
auth_names=["bearerAuth"],
|
|
171
|
-
cast_to=models.
|
|
171
|
+
cast_to=models.V1VideoProjectsGetResponse,
|
|
172
172
|
request_options=request_options or default_request_options(),
|
|
173
173
|
)
|
|
@@ -19,11 +19,11 @@ class VideoToVideoClient:
|
|
|
19
19
|
def create(
|
|
20
20
|
self,
|
|
21
21
|
*,
|
|
22
|
-
assets: params.
|
|
22
|
+
assets: params.V1VideoToVideoCreateBodyAssets,
|
|
23
23
|
end_seconds: float,
|
|
24
24
|
height: int,
|
|
25
25
|
start_seconds: float,
|
|
26
|
-
style: params.
|
|
26
|
+
style: params.V1VideoToVideoCreateBodyStyle,
|
|
27
27
|
width: int,
|
|
28
28
|
fps_resolution: typing.Union[
|
|
29
29
|
typing.Optional[typing_extensions.Literal["FULL", "HALF"]],
|
|
@@ -33,7 +33,7 @@ class VideoToVideoClient:
|
|
|
33
33
|
typing.Optional[str], type_utils.NotGiven
|
|
34
34
|
] = type_utils.NOT_GIVEN,
|
|
35
35
|
request_options: typing.Optional[RequestOptions] = None,
|
|
36
|
-
) -> models.
|
|
36
|
+
) -> models.V1VideoToVideoCreateResponse:
|
|
37
37
|
"""
|
|
38
38
|
Video-to-Video
|
|
39
39
|
|
|
@@ -53,7 +53,7 @@ class VideoToVideoClient:
|
|
|
53
53
|
end_seconds: The end time of the input video in seconds
|
|
54
54
|
height: The height of the final output video. Must be divisible by 64. The maximum height depends on your subscription. Please refer to our [pricing page](https://magichour.ai/pricing) for more details
|
|
55
55
|
start_seconds: The start time of the input video in seconds
|
|
56
|
-
style:
|
|
56
|
+
style: V1VideoToVideoCreateBodyStyle
|
|
57
57
|
width: The width of the final output video. Must be divisible by 64. The maximum width depends on your subscription. Please refer to our [pricing page](https://magichour.ai/pricing) for more details
|
|
58
58
|
request_options: Additional options to customize the HTTP request
|
|
59
59
|
|
|
@@ -95,14 +95,14 @@ class VideoToVideoClient:
|
|
|
95
95
|
"style": style,
|
|
96
96
|
"width": width,
|
|
97
97
|
},
|
|
98
|
-
dump_with=params.
|
|
98
|
+
dump_with=params._SerializerV1VideoToVideoCreateBody,
|
|
99
99
|
)
|
|
100
100
|
return self._base_client.request(
|
|
101
101
|
method="POST",
|
|
102
102
|
path="/v1/video-to-video",
|
|
103
103
|
auth_names=["bearerAuth"],
|
|
104
104
|
json=_json,
|
|
105
|
-
cast_to=models.
|
|
105
|
+
cast_to=models.V1VideoToVideoCreateResponse,
|
|
106
106
|
request_options=request_options or default_request_options(),
|
|
107
107
|
)
|
|
108
108
|
|
|
@@ -114,11 +114,11 @@ class AsyncVideoToVideoClient:
|
|
|
114
114
|
async def create(
|
|
115
115
|
self,
|
|
116
116
|
*,
|
|
117
|
-
assets: params.
|
|
117
|
+
assets: params.V1VideoToVideoCreateBodyAssets,
|
|
118
118
|
end_seconds: float,
|
|
119
119
|
height: int,
|
|
120
120
|
start_seconds: float,
|
|
121
|
-
style: params.
|
|
121
|
+
style: params.V1VideoToVideoCreateBodyStyle,
|
|
122
122
|
width: int,
|
|
123
123
|
fps_resolution: typing.Union[
|
|
124
124
|
typing.Optional[typing_extensions.Literal["FULL", "HALF"]],
|
|
@@ -128,7 +128,7 @@ class AsyncVideoToVideoClient:
|
|
|
128
128
|
typing.Optional[str], type_utils.NotGiven
|
|
129
129
|
] = type_utils.NOT_GIVEN,
|
|
130
130
|
request_options: typing.Optional[RequestOptions] = None,
|
|
131
|
-
) -> models.
|
|
131
|
+
) -> models.V1VideoToVideoCreateResponse:
|
|
132
132
|
"""
|
|
133
133
|
Video-to-Video
|
|
134
134
|
|
|
@@ -148,7 +148,7 @@ class AsyncVideoToVideoClient:
|
|
|
148
148
|
end_seconds: The end time of the input video in seconds
|
|
149
149
|
height: The height of the final output video. Must be divisible by 64. The maximum height depends on your subscription. Please refer to our [pricing page](https://magichour.ai/pricing) for more details
|
|
150
150
|
start_seconds: The start time of the input video in seconds
|
|
151
|
-
style:
|
|
151
|
+
style: V1VideoToVideoCreateBodyStyle
|
|
152
152
|
width: The width of the final output video. Must be divisible by 64. The maximum width depends on your subscription. Please refer to our [pricing page](https://magichour.ai/pricing) for more details
|
|
153
153
|
request_options: Additional options to customize the HTTP request
|
|
154
154
|
|
|
@@ -190,13 +190,13 @@ class AsyncVideoToVideoClient:
|
|
|
190
190
|
"style": style,
|
|
191
191
|
"width": width,
|
|
192
192
|
},
|
|
193
|
-
dump_with=params.
|
|
193
|
+
dump_with=params._SerializerV1VideoToVideoCreateBody,
|
|
194
194
|
)
|
|
195
195
|
return await self._base_client.request(
|
|
196
196
|
method="POST",
|
|
197
197
|
path="/v1/video-to-video",
|
|
198
198
|
auth_names=["bearerAuth"],
|
|
199
199
|
json=_json,
|
|
200
|
-
cast_to=models.
|
|
200
|
+
cast_to=models.V1VideoToVideoCreateResponse,
|
|
201
201
|
request_options=request_options or default_request_options(),
|
|
202
202
|
)
|