camb-sdk 1.5.4__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.
Files changed (167) hide show
  1. camb/__init__.py +335 -0
  2. camb/audio_separation/__init__.py +4 -0
  3. camb/audio_separation/client.py +406 -0
  4. camb/audio_separation/raw_client.py +534 -0
  5. camb/client.py +717 -0
  6. camb/core/__init__.py +105 -0
  7. camb/core/api_error.py +23 -0
  8. camb/core/client_wrapper.py +113 -0
  9. camb/core/datetime_utils.py +28 -0
  10. camb/core/file.py +67 -0
  11. camb/core/force_multipart.py +18 -0
  12. camb/core/http_client.py +663 -0
  13. camb/core/http_response.py +55 -0
  14. camb/core/http_sse/__init__.py +42 -0
  15. camb/core/http_sse/_api.py +112 -0
  16. camb/core/http_sse/_decoders.py +61 -0
  17. camb/core/http_sse/_exceptions.py +7 -0
  18. camb/core/http_sse/_models.py +17 -0
  19. camb/core/jsonable_encoder.py +100 -0
  20. camb/core/pydantic_utilities.py +260 -0
  21. camb/core/query_encoder.py +58 -0
  22. camb/core/remove_none_from_dict.py +11 -0
  23. camb/core/request_options.py +35 -0
  24. camb/core/serialization.py +276 -0
  25. camb/deprecated_streaming/__init__.py +4 -0
  26. camb/deprecated_streaming/client.py +532 -0
  27. camb/deprecated_streaming/raw_client.py +639 -0
  28. camb/dictionaries/__init__.py +4 -0
  29. camb/dictionaries/client.py +785 -0
  30. camb/dictionaries/raw_client.py +1048 -0
  31. camb/dub/__init__.py +49 -0
  32. camb/dub/client.py +846 -0
  33. camb/dub/raw_client.py +1194 -0
  34. camb/dub/types/__init__.py +53 -0
  35. camb/dub/types/dubbed_output_in_alt_format_request_payload_output_format.py +8 -0
  36. camb/dub/types/get_dubbed_output_in_alt_format_dub_alt_format_run_id_language_post_response.py +9 -0
  37. camb/dub/types/get_dubbed_run_info_dub_result_run_id_get_response.py +7 -0
  38. camb/dub/types/get_dubbing_runs_results_dubbing_results_post_response_value.py +7 -0
  39. camb/environment.py +7 -0
  40. camb/errors/__init__.py +34 -0
  41. camb/errors/unprocessable_entity_error.py +11 -0
  42. camb/folders/__init__.py +4 -0
  43. camb/folders/client.py +213 -0
  44. camb/folders/raw_client.py +278 -0
  45. camb/languages/__init__.py +4 -0
  46. camb/languages/client.py +168 -0
  47. camb/languages/raw_client.py +223 -0
  48. camb/project_setup/__init__.py +4 -0
  49. camb/project_setup/client.py +537 -0
  50. camb/project_setup/raw_client.py +655 -0
  51. camb/py.typed +0 -0
  52. camb/raw_client.py +236 -0
  53. camb/story/__init__.py +37 -0
  54. camb/story/client.py +579 -0
  55. camb/story/raw_client.py +743 -0
  56. camb/story/types/__init__.py +38 -0
  57. camb/story/types/create_story_story_post_response.py +8 -0
  58. camb/story/types/setup_story_story_setup_post_response.py +8 -0
  59. camb/streaming/__init__.py +4 -0
  60. camb/streaming/client.py +645 -0
  61. camb/streaming/raw_client.py +796 -0
  62. camb/text_to_audio/__init__.py +4 -0
  63. camb/text_to_audio/client.py +469 -0
  64. camb/text_to_audio/raw_client.py +610 -0
  65. camb/text_to_speech/__init__.py +49 -0
  66. camb/text_to_speech/baseten.py +214 -0
  67. camb/text_to_speech/client.py +742 -0
  68. camb/text_to_speech/raw_client.py +995 -0
  69. camb/text_to_speech/types/__init__.py +47 -0
  70. camb/text_to_speech/types/create_stream_tts_request_payload_language.py +71 -0
  71. camb/text_to_speech/types/create_stream_tts_request_payload_speech_model.py +7 -0
  72. camb/text_to_speech/types/get_tts_results_tts_results_post_response_value.py +7 -0
  73. camb/text_to_speech/types/get_tts_run_info_tts_result_run_id_get_response.py +7 -0
  74. camb/text_to_voice/__init__.py +4 -0
  75. camb/text_to_voice/client.py +329 -0
  76. camb/text_to_voice/raw_client.py +405 -0
  77. camb/transcription/__init__.py +4 -0
  78. camb/transcription/client.py +465 -0
  79. camb/transcription/raw_client.py +587 -0
  80. camb/translated_story/__init__.py +4 -0
  81. camb/translated_story/client.py +309 -0
  82. camb/translated_story/raw_client.py +381 -0
  83. camb/translated_tts/__init__.py +4 -0
  84. camb/translated_tts/client.py +313 -0
  85. camb/translated_tts/raw_client.py +357 -0
  86. camb/translation/__init__.py +4 -0
  87. camb/translation/client.py +631 -0
  88. camb/translation/raw_client.py +787 -0
  89. camb/types/__init__.py +236 -0
  90. camb/types/add_target_language_out.py +20 -0
  91. camb/types/audio_output_type.py +5 -0
  92. camb/types/audio_stream.py +31 -0
  93. camb/types/config_stream.py +22 -0
  94. camb/types/config_stream_pipeline.py +28 -0
  95. camb/types/create_custom_voice_out.py +19 -0
  96. camb/types/create_project_setup_out.py +19 -0
  97. camb/types/create_stream_out.py +22 -0
  98. camb/types/create_stream_request_payload.py +70 -0
  99. camb/types/create_translated_tts_out.py +19 -0
  100. camb/types/create_tts_out.py +19 -0
  101. camb/types/data_stream.py +24 -0
  102. camb/types/demixing_option.py +10 -0
  103. camb/types/dictionary_term.py +21 -0
  104. camb/types/dictionary_with_terms.py +28 -0
  105. camb/types/dubbing_result.py +22 -0
  106. camb/types/exception_reasons.py +30 -0
  107. camb/types/folder.py +20 -0
  108. camb/types/formalities.py +3 -0
  109. camb/types/gender.py +3 -0
  110. camb/types/get_audio_separation_result_out.py +20 -0
  111. camb/types/get_create_project_setup_response.py +21 -0
  112. camb/types/get_probe_stream_in.py +21 -0
  113. camb/types/get_probe_stream_out.py +24 -0
  114. camb/types/get_setup_story_result_response.py +21 -0
  115. camb/types/get_text_to_voice_result_out.py +19 -0
  116. camb/types/get_tts_result_out_file_url.py +19 -0
  117. camb/types/http_validation_error.py +20 -0
  118. camb/types/language_enums.py +154 -0
  119. camb/types/language_pydantic_model.py +21 -0
  120. camb/types/languages.py +3 -0
  121. camb/types/orchestrator_pipeline_call_result.py +19 -0
  122. camb/types/orchestrator_pipeline_result.py +25 -0
  123. camb/types/orchestrator_pipeline_result_exception_reason.py +7 -0
  124. camb/types/orchestrator_pipeline_result_message.py +5 -0
  125. camb/types/output_format.py +10 -0
  126. camb/types/overdub_config.py +37 -0
  127. camb/types/project_details.py +28 -0
  128. camb/types/revoicing_option.py +5 -0
  129. camb/types/run_i_ds_request_payload.py +19 -0
  130. camb/types/segmenting_option.py +5 -0
  131. camb/types/source_stream.py +30 -0
  132. camb/types/story_details.py +27 -0
  133. camb/types/stream_category.py +3 -0
  134. camb/types/stream_tts_inference_options.py +38 -0
  135. camb/types/stream_tts_output_configuration.py +33 -0
  136. camb/types/stream_tts_voice_settings.py +28 -0
  137. camb/types/stream_type.py +3 -0
  138. camb/types/stream_url_for_languages.py +21 -0
  139. camb/types/target_stream.py +34 -0
  140. camb/types/task_status.py +5 -0
  141. camb/types/term_translation_input.py +21 -0
  142. camb/types/term_translation_output.py +20 -0
  143. camb/types/text_to_audio_result.py +19 -0
  144. camb/types/text_to_audio_type.py +5 -0
  145. camb/types/transcribing_option.py +5 -0
  146. camb/types/transcript.py +22 -0
  147. camb/types/transcript_data_type.py +5 -0
  148. camb/types/transcript_file_format.py +5 -0
  149. camb/types/transcription_result.py +20 -0
  150. camb/types/translating_option.py +5 -0
  151. camb/types/translation_result.py +19 -0
  152. camb/types/tts_provider.py +3 -0
  153. camb/types/validation_error.py +22 -0
  154. camb/types/validation_error_loc_item.py +5 -0
  155. camb/types/video_output_type_without_avi.py +5 -0
  156. camb/types/video_stream.py +28 -0
  157. camb/types/voice.py +28 -0
  158. camb/voice_cloning/__init__.py +34 -0
  159. camb/voice_cloning/client.py +265 -0
  160. camb/voice_cloning/raw_client.py +320 -0
  161. camb/voice_cloning/types/__init__.py +36 -0
  162. camb/voice_cloning/types/list_voices_list_voices_get_response_item.py +7 -0
  163. camb_sdk-1.5.4.dist-info/METADATA +282 -0
  164. camb_sdk-1.5.4.dist-info/RECORD +167 -0
  165. camb_sdk-1.5.4.dist-info/WHEEL +5 -0
  166. camb_sdk-1.5.4.dist-info/licenses/LICENSE +21 -0
  167. camb_sdk-1.5.4.dist-info/top_level.txt +1 -0
@@ -0,0 +1,406 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import typing
4
+
5
+ from .. import core
6
+ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
7
+ from ..core.request_options import RequestOptions
8
+ from ..types.get_audio_separation_result_out import GetAudioSeparationResultOut
9
+ from ..types.orchestrator_pipeline_call_result import OrchestratorPipelineCallResult
10
+ from ..types.orchestrator_pipeline_result import OrchestratorPipelineResult
11
+ from .raw_client import AsyncRawAudioSeparationClient, RawAudioSeparationClient
12
+
13
+ # this is used as the default value for optional parameters
14
+ OMIT = typing.cast(typing.Any, ...)
15
+
16
+
17
+ class AudioSeparationClient:
18
+ def __init__(self, *, client_wrapper: SyncClientWrapper):
19
+ self._raw_client = RawAudioSeparationClient(client_wrapper=client_wrapper)
20
+
21
+ @property
22
+ def with_raw_response(self) -> RawAudioSeparationClient:
23
+ """
24
+ Retrieves a raw implementation of this client that returns raw responses.
25
+
26
+ Returns
27
+ -------
28
+ RawAudioSeparationClient
29
+ """
30
+ return self._raw_client
31
+
32
+ def create_audio_separation(
33
+ self,
34
+ *,
35
+ run_id: typing.Optional[int] = None,
36
+ traceparent: typing.Optional[str] = None,
37
+ media_file: typing.Optional[core.File] = OMIT,
38
+ project_name: typing.Optional[str] = OMIT,
39
+ project_description: typing.Optional[str] = OMIT,
40
+ folder_id: typing.Optional[int] = OMIT,
41
+ request_options: typing.Optional[RequestOptions] = None,
42
+ ) -> OrchestratorPipelineCallResult:
43
+ """
44
+ Parameters
45
+ ----------
46
+ run_id : typing.Optional[int]
47
+
48
+ traceparent : typing.Optional[str]
49
+
50
+ media_file : typing.Optional[core.File]
51
+ See core.File for more documentation
52
+
53
+ project_name : typing.Optional[str]
54
+
55
+ project_description : typing.Optional[str]
56
+
57
+ folder_id : typing.Optional[int]
58
+
59
+ request_options : typing.Optional[RequestOptions]
60
+ Request-specific configuration.
61
+
62
+ Returns
63
+ -------
64
+ OrchestratorPipelineCallResult
65
+ Successful Response
66
+
67
+ Examples
68
+ --------
69
+ from camb import CambApi
70
+
71
+ client = CambApi(
72
+ api_key="YOUR_API_KEY",
73
+ )
74
+ client.audio_separation.create_audio_separation()
75
+ """
76
+ _response = self._raw_client.create_audio_separation(
77
+ run_id=run_id,
78
+ traceparent=traceparent,
79
+ media_file=media_file,
80
+ project_name=project_name,
81
+ project_description=project_description,
82
+ folder_id=folder_id,
83
+ request_options=request_options,
84
+ )
85
+ return _response.data
86
+
87
+ def get_audio_separation_status(
88
+ self,
89
+ task_id: str,
90
+ *,
91
+ run_id: typing.Optional[int] = None,
92
+ request_options: typing.Optional[RequestOptions] = None,
93
+ ) -> OrchestratorPipelineResult:
94
+ """
95
+ Parameters
96
+ ----------
97
+ task_id : str
98
+
99
+ run_id : typing.Optional[int]
100
+
101
+ request_options : typing.Optional[RequestOptions]
102
+ Request-specific configuration.
103
+
104
+ Returns
105
+ -------
106
+ OrchestratorPipelineResult
107
+ Successful Response
108
+
109
+ Examples
110
+ --------
111
+ from camb import CambApi
112
+
113
+ client = CambApi(
114
+ api_key="YOUR_API_KEY",
115
+ )
116
+ client.audio_separation.get_audio_separation_status(
117
+ task_id="task_id",
118
+ )
119
+ """
120
+ _response = self._raw_client.get_audio_separation_status(
121
+ task_id, run_id=run_id, request_options=request_options
122
+ )
123
+ return _response.data
124
+
125
+ def get_audio_separation_run_info(
126
+ self, run_id: typing.Optional[int], *, request_options: typing.Optional[RequestOptions] = None
127
+ ) -> GetAudioSeparationResultOut:
128
+ """
129
+ Parameters
130
+ ----------
131
+ run_id : typing.Optional[int]
132
+
133
+ request_options : typing.Optional[RequestOptions]
134
+ Request-specific configuration.
135
+
136
+ Returns
137
+ -------
138
+ GetAudioSeparationResultOut
139
+ Successful Response
140
+
141
+ Examples
142
+ --------
143
+ from camb import CambApi
144
+
145
+ client = CambApi(
146
+ api_key="YOUR_API_KEY",
147
+ )
148
+ client.audio_separation.get_audio_separation_run_info(
149
+ run_id=1,
150
+ )
151
+ """
152
+ _response = self._raw_client.get_audio_separation_run_info(run_id, request_options=request_options)
153
+ return _response.data
154
+
155
+ def get_audio_separation_runs_results(
156
+ self,
157
+ *,
158
+ run_ids: typing.Sequence[int],
159
+ run_id: typing.Optional[int] = None,
160
+ traceparent: typing.Optional[str] = None,
161
+ request_options: typing.Optional[RequestOptions] = None,
162
+ ) -> typing.Dict[str, GetAudioSeparationResultOut]:
163
+ """
164
+ Parameters
165
+ ----------
166
+ run_ids : typing.Sequence[int]
167
+
168
+ run_id : typing.Optional[int]
169
+
170
+ traceparent : typing.Optional[str]
171
+
172
+ request_options : typing.Optional[RequestOptions]
173
+ Request-specific configuration.
174
+
175
+ Returns
176
+ -------
177
+ typing.Dict[str, GetAudioSeparationResultOut]
178
+ Successful Response
179
+
180
+ Examples
181
+ --------
182
+ from camb import CambApi
183
+
184
+ client = CambApi(
185
+ api_key="YOUR_API_KEY",
186
+ )
187
+ client.audio_separation.get_audio_separation_runs_results(
188
+ run_ids=[1],
189
+ )
190
+ """
191
+ _response = self._raw_client.get_audio_separation_runs_results(
192
+ run_ids=run_ids, run_id=run_id, traceparent=traceparent, request_options=request_options
193
+ )
194
+ return _response.data
195
+
196
+
197
+ class AsyncAudioSeparationClient:
198
+ def __init__(self, *, client_wrapper: AsyncClientWrapper):
199
+ self._raw_client = AsyncRawAudioSeparationClient(client_wrapper=client_wrapper)
200
+
201
+ @property
202
+ def with_raw_response(self) -> AsyncRawAudioSeparationClient:
203
+ """
204
+ Retrieves a raw implementation of this client that returns raw responses.
205
+
206
+ Returns
207
+ -------
208
+ AsyncRawAudioSeparationClient
209
+ """
210
+ return self._raw_client
211
+
212
+ async def create_audio_separation(
213
+ self,
214
+ *,
215
+ run_id: typing.Optional[int] = None,
216
+ traceparent: typing.Optional[str] = None,
217
+ media_file: typing.Optional[core.File] = OMIT,
218
+ project_name: typing.Optional[str] = OMIT,
219
+ project_description: typing.Optional[str] = OMIT,
220
+ folder_id: typing.Optional[int] = OMIT,
221
+ request_options: typing.Optional[RequestOptions] = None,
222
+ ) -> OrchestratorPipelineCallResult:
223
+ """
224
+ Parameters
225
+ ----------
226
+ run_id : typing.Optional[int]
227
+
228
+ traceparent : typing.Optional[str]
229
+
230
+ media_file : typing.Optional[core.File]
231
+ See core.File for more documentation
232
+
233
+ project_name : typing.Optional[str]
234
+
235
+ project_description : typing.Optional[str]
236
+
237
+ folder_id : typing.Optional[int]
238
+
239
+ request_options : typing.Optional[RequestOptions]
240
+ Request-specific configuration.
241
+
242
+ Returns
243
+ -------
244
+ OrchestratorPipelineCallResult
245
+ Successful Response
246
+
247
+ Examples
248
+ --------
249
+ import asyncio
250
+
251
+ from camb import AsyncCambApi
252
+
253
+ client = AsyncCambApi(
254
+ api_key="YOUR_API_KEY",
255
+ )
256
+
257
+
258
+ async def main() -> None:
259
+ await client.audio_separation.create_audio_separation()
260
+
261
+
262
+ asyncio.run(main())
263
+ """
264
+ _response = await self._raw_client.create_audio_separation(
265
+ run_id=run_id,
266
+ traceparent=traceparent,
267
+ media_file=media_file,
268
+ project_name=project_name,
269
+ project_description=project_description,
270
+ folder_id=folder_id,
271
+ request_options=request_options,
272
+ )
273
+ return _response.data
274
+
275
+ async def get_audio_separation_status(
276
+ self,
277
+ task_id: str,
278
+ *,
279
+ run_id: typing.Optional[int] = None,
280
+ request_options: typing.Optional[RequestOptions] = None,
281
+ ) -> OrchestratorPipelineResult:
282
+ """
283
+ Parameters
284
+ ----------
285
+ task_id : str
286
+
287
+ run_id : typing.Optional[int]
288
+
289
+ request_options : typing.Optional[RequestOptions]
290
+ Request-specific configuration.
291
+
292
+ Returns
293
+ -------
294
+ OrchestratorPipelineResult
295
+ Successful Response
296
+
297
+ Examples
298
+ --------
299
+ import asyncio
300
+
301
+ from camb import AsyncCambApi
302
+
303
+ client = AsyncCambApi(
304
+ api_key="YOUR_API_KEY",
305
+ )
306
+
307
+
308
+ async def main() -> None:
309
+ await client.audio_separation.get_audio_separation_status(
310
+ task_id="task_id",
311
+ )
312
+
313
+
314
+ asyncio.run(main())
315
+ """
316
+ _response = await self._raw_client.get_audio_separation_status(
317
+ task_id, run_id=run_id, request_options=request_options
318
+ )
319
+ return _response.data
320
+
321
+ async def get_audio_separation_run_info(
322
+ self, run_id: typing.Optional[int], *, request_options: typing.Optional[RequestOptions] = None
323
+ ) -> GetAudioSeparationResultOut:
324
+ """
325
+ Parameters
326
+ ----------
327
+ run_id : typing.Optional[int]
328
+
329
+ request_options : typing.Optional[RequestOptions]
330
+ Request-specific configuration.
331
+
332
+ Returns
333
+ -------
334
+ GetAudioSeparationResultOut
335
+ Successful Response
336
+
337
+ Examples
338
+ --------
339
+ import asyncio
340
+
341
+ from camb import AsyncCambApi
342
+
343
+ client = AsyncCambApi(
344
+ api_key="YOUR_API_KEY",
345
+ )
346
+
347
+
348
+ async def main() -> None:
349
+ await client.audio_separation.get_audio_separation_run_info(
350
+ run_id=1,
351
+ )
352
+
353
+
354
+ asyncio.run(main())
355
+ """
356
+ _response = await self._raw_client.get_audio_separation_run_info(run_id, request_options=request_options)
357
+ return _response.data
358
+
359
+ async def get_audio_separation_runs_results(
360
+ self,
361
+ *,
362
+ run_ids: typing.Sequence[int],
363
+ run_id: typing.Optional[int] = None,
364
+ traceparent: typing.Optional[str] = None,
365
+ request_options: typing.Optional[RequestOptions] = None,
366
+ ) -> typing.Dict[str, GetAudioSeparationResultOut]:
367
+ """
368
+ Parameters
369
+ ----------
370
+ run_ids : typing.Sequence[int]
371
+
372
+ run_id : typing.Optional[int]
373
+
374
+ traceparent : typing.Optional[str]
375
+
376
+ request_options : typing.Optional[RequestOptions]
377
+ Request-specific configuration.
378
+
379
+ Returns
380
+ -------
381
+ typing.Dict[str, GetAudioSeparationResultOut]
382
+ Successful Response
383
+
384
+ Examples
385
+ --------
386
+ import asyncio
387
+
388
+ from camb import AsyncCambApi
389
+
390
+ client = AsyncCambApi(
391
+ api_key="YOUR_API_KEY",
392
+ )
393
+
394
+
395
+ async def main() -> None:
396
+ await client.audio_separation.get_audio_separation_runs_results(
397
+ run_ids=[1],
398
+ )
399
+
400
+
401
+ asyncio.run(main())
402
+ """
403
+ _response = await self._raw_client.get_audio_separation_runs_results(
404
+ run_ids=run_ids, run_id=run_id, traceparent=traceparent, request_options=request_options
405
+ )
406
+ return _response.data