murf 2.0.1__tar.gz → 2.1.0__tar.gz

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 murf might be problematic. Click here for more details.

Files changed (102) hide show
  1. {murf-2.0.1 → murf-2.1.0}/PKG-INFO +1 -1
  2. {murf-2.0.1 → murf-2.1.0}/pyproject.toml +1 -1
  3. {murf-2.0.1 → murf-2.1.0}/src/murf/__init__.py +0 -2
  4. {murf-2.0.1 → murf-2.1.0}/src/murf/core/client_wrapper.py +1 -1
  5. {murf-2.0.1 → murf-2.1.0}/src/murf/text_to_speech/client.py +8 -9
  6. {murf-2.0.1 → murf-2.1.0}/src/murf/types/generate_speech_response.py +4 -4
  7. murf-2.1.0/src/murf/voice_changer/__init__.py +2 -0
  8. murf-2.0.1/src/murf/text_to_speech/__init__.py +0 -5
  9. murf-2.0.1/src/murf/text_to_speech/types/__init__.py +0 -5
  10. murf-2.0.1/src/murf/text_to_speech/types/generate_speech_request_model_version.py +0 -5
  11. {murf-2.0.1 → murf-2.1.0}/LICENSE +0 -0
  12. {murf-2.0.1 → murf-2.1.0}/README.md +0 -0
  13. {murf-2.0.1 → murf-2.1.0}/src/murf/auth/__init__.py +0 -0
  14. {murf-2.0.1 → murf-2.1.0}/src/murf/auth/client.py +0 -0
  15. {murf-2.0.1 → murf-2.1.0}/src/murf/base_client.py +0 -0
  16. {murf-2.0.1 → murf-2.1.0}/src/murf/client.py +0 -0
  17. {murf-2.0.1 → murf-2.1.0}/src/murf/core/__init__.py +0 -0
  18. {murf-2.0.1 → murf-2.1.0}/src/murf/core/api_error.py +0 -0
  19. {murf-2.0.1 → murf-2.1.0}/src/murf/core/datetime_utils.py +0 -0
  20. {murf-2.0.1 → murf-2.1.0}/src/murf/core/file.py +0 -0
  21. {murf-2.0.1 → murf-2.1.0}/src/murf/core/http_client.py +0 -0
  22. {murf-2.0.1 → murf-2.1.0}/src/murf/core/jsonable_encoder.py +0 -0
  23. {murf-2.0.1 → murf-2.1.0}/src/murf/core/pydantic_utilities.py +0 -0
  24. {murf-2.0.1 → murf-2.1.0}/src/murf/core/query_encoder.py +0 -0
  25. {murf-2.0.1 → murf-2.1.0}/src/murf/core/remove_none_from_dict.py +0 -0
  26. {murf-2.0.1 → murf-2.1.0}/src/murf/core/request_options.py +0 -0
  27. {murf-2.0.1 → murf-2.1.0}/src/murf/core/serialization.py +0 -0
  28. {murf-2.0.1 → murf-2.1.0}/src/murf/core/unchecked_base_model.py +0 -0
  29. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing/__init__.py +0 -0
  30. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing/client.py +0 -0
  31. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing/jobs/__init__.py +0 -0
  32. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing/jobs/client.py +0 -0
  33. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing/jobs/types/__init__.py +0 -0
  34. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing/jobs/types/jobs_create_request_priority.py +0 -0
  35. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing/jobs/types/jobs_create_with_project_id_request_priority.py +0 -0
  36. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing/languages/__init__.py +0 -0
  37. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing/languages/client.py +0 -0
  38. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing/projects/__init__.py +0 -0
  39. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing/projects/client.py +0 -0
  40. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing/projects/types/__init__.py +0 -0
  41. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing/projects/types/api_create_project_request_dubbing_type.py +0 -0
  42. {murf-2.0.1 → murf-2.1.0}/src/murf/dubbing_client.py +0 -0
  43. {murf-2.0.1 → murf-2.1.0}/src/murf/environment.py +0 -0
  44. {murf-2.0.1 → murf-2.1.0}/src/murf/errors/__init__.py +0 -0
  45. {murf-2.0.1 → murf-2.1.0}/src/murf/errors/bad_request_error.py +0 -0
  46. {murf-2.0.1 → murf-2.1.0}/src/murf/errors/forbidden_error.py +0 -0
  47. {murf-2.0.1 → murf-2.1.0}/src/murf/errors/internal_server_error.py +0 -0
  48. {murf-2.0.1 → murf-2.1.0}/src/murf/errors/payment_required_error.py +0 -0
  49. {murf-2.0.1 → murf-2.1.0}/src/murf/errors/service_unavailable_error.py +0 -0
  50. {murf-2.0.1 → murf-2.1.0}/src/murf/errors/unauthorized_error.py +0 -0
  51. {murf-2.0.1 → murf-2.1.0}/src/murf/py.typed +0 -0
  52. {murf-2.0.1 → murf-2.1.0}/src/murf/stream_input/__init__.py +0 -0
  53. {murf-2.0.1 → murf-2.1.0}/src/murf/stream_input/types/__init__.py +0 -0
  54. {murf-2.0.1 → murf-2.1.0}/src/murf/stream_input/types/receive_message.py +0 -0
  55. {murf-2.0.1 → murf-2.1.0}/src/murf/stream_input/types/send_message.py +0 -0
  56. {murf-2.0.1 → murf-2.1.0}/src/murf/text/__init__.py +0 -0
  57. {murf-2.0.1 → murf-2.1.0}/src/murf/text/client.py +0 -0
  58. {murf-2.0.1/src/murf/voice_changer → murf-2.1.0/src/murf/text_to_speech}/__init__.py +0 -0
  59. {murf-2.0.1 → murf-2.1.0}/src/murf/types/__init__.py +0 -0
  60. {murf-2.0.1 → murf-2.1.0}/src/murf/types/api_job_response.py +0 -0
  61. {murf-2.0.1 → murf-2.1.0}/src/murf/types/api_job_response_dubbing_type.py +0 -0
  62. {murf-2.0.1 → murf-2.1.0}/src/murf/types/api_job_response_priority.py +0 -0
  63. {murf-2.0.1 → murf-2.1.0}/src/murf/types/api_project_response.py +0 -0
  64. {murf-2.0.1 → murf-2.1.0}/src/murf/types/api_project_response_dubbing_type.py +0 -0
  65. {murf-2.0.1 → murf-2.1.0}/src/murf/types/api_voice.py +0 -0
  66. {murf-2.0.1 → murf-2.1.0}/src/murf/types/api_voice_gender.py +0 -0
  67. {murf-2.0.1 → murf-2.1.0}/src/murf/types/audio_output.py +0 -0
  68. {murf-2.0.1 → murf-2.1.0}/src/murf/types/auth_token_response.py +0 -0
  69. {murf-2.0.1 → murf-2.1.0}/src/murf/types/character_count.py +0 -0
  70. {murf-2.0.1 → murf-2.1.0}/src/murf/types/clear_context.py +0 -0
  71. {murf-2.0.1 → murf-2.1.0}/src/murf/types/dub_api_detail_response.py +0 -0
  72. {murf-2.0.1 → murf-2.1.0}/src/murf/types/dub_job_status_response.py +0 -0
  73. {murf-2.0.1 → murf-2.1.0}/src/murf/types/final_output.py +0 -0
  74. {murf-2.0.1 → murf-2.1.0}/src/murf/types/form_data_content_disposition.py +0 -0
  75. {murf-2.0.1 → murf-2.1.0}/src/murf/types/group_api_project_response.py +0 -0
  76. {murf-2.0.1 → murf-2.1.0}/src/murf/types/locale_response.py +0 -0
  77. {murf-2.0.1 → murf-2.1.0}/src/murf/types/locale_response_supports_item.py +0 -0
  78. {murf-2.0.1 → murf-2.1.0}/src/murf/types/metadata.py +0 -0
  79. {murf-2.0.1 → murf-2.1.0}/src/murf/types/murf_api_translation_response.py +0 -0
  80. {murf-2.0.1 → murf-2.1.0}/src/murf/types/pronunciation_detail.py +0 -0
  81. {murf-2.0.1 → murf-2.1.0}/src/murf/types/pronunciation_detail_type.py +0 -0
  82. {murf-2.0.1 → murf-2.1.0}/src/murf/types/send_text.py +0 -0
  83. {murf-2.0.1 → murf-2.1.0}/src/murf/types/send_text_voice_config.py +0 -0
  84. {murf-2.0.1 → murf-2.1.0}/src/murf/types/send_text_voice_config_pronunciation_dictionary_value.py +0 -0
  85. {murf-2.0.1 → murf-2.1.0}/src/murf/types/send_text_voice_config_pronunciation_dictionary_value_type.py +0 -0
  86. {murf-2.0.1 → murf-2.1.0}/src/murf/types/set_advanced_settings.py +0 -0
  87. {murf-2.0.1 → murf-2.1.0}/src/murf/types/set_voice_configuration_or_initialize_context.py +0 -0
  88. {murf-2.0.1 → murf-2.1.0}/src/murf/types/set_voice_configuration_or_initialize_context_voice_config.py +0 -0
  89. {murf-2.0.1 → murf-2.1.0}/src/murf/types/set_voice_configuration_or_initialize_context_voice_config_pronunciation_dictionary_value.py +0 -0
  90. {murf-2.0.1 → murf-2.1.0}/src/murf/types/set_voice_configuration_or_initialize_context_voice_config_pronunciation_dictionary_value_type.py +0 -0
  91. {murf-2.0.1 → murf-2.1.0}/src/murf/types/source_locale_response.py +0 -0
  92. {murf-2.0.1 → murf-2.1.0}/src/murf/types/speech_to_speech_response.py +0 -0
  93. {murf-2.0.1 → murf-2.1.0}/src/murf/types/style_details.py +0 -0
  94. {murf-2.0.1 → murf-2.1.0}/src/murf/types/translation.py +0 -0
  95. {murf-2.0.1 → murf-2.1.0}/src/murf/types/tts_request_both_payload.py +0 -0
  96. {murf-2.0.1 → murf-2.1.0}/src/murf/types/tts_request_both_payload_voice_config.py +0 -0
  97. {murf-2.0.1 → murf-2.1.0}/src/murf/types/tts_request_both_payload_voice_config_pronunciation_dictionary.py +0 -0
  98. {murf-2.0.1 → murf-2.1.0}/src/murf/types/tts_request_both_payload_voice_config_pronunciation_dictionary_guess.py +0 -0
  99. {murf-2.0.1 → murf-2.1.0}/src/murf/types/word_duration_response.py +0 -0
  100. {murf-2.0.1 → murf-2.1.0}/src/murf/utils.py +0 -0
  101. {murf-2.0.1 → murf-2.1.0}/src/murf/version.py +0 -0
  102. {murf-2.0.1 → murf-2.1.0}/src/murf/voice_changer/client.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: murf
3
- Version: 2.0.1
3
+ Version: 2.1.0
4
4
  Summary:
5
5
  Requires-Python: >=3.8,<4.0
6
6
  Classifier: Intended Audience :: Developers
@@ -3,7 +3,7 @@ name = "murf"
3
3
 
4
4
  [tool.poetry]
5
5
  name = "murf"
6
- version = "2.0.1"
6
+ version = "2.1.0"
7
7
  description = ""
8
8
  readme = "README.md"
9
9
  authors = []
@@ -56,7 +56,6 @@ from .client import AsyncMurf, Murf
56
56
  from .dubbing_client import MurfDub
57
57
  from .environment import MurfEnvironment
58
58
  from .stream_input import ReceiveMessage, SendMessage
59
- from .text_to_speech import GenerateSpeechRequestModelVersion
60
59
  from .version import __version__
61
60
 
62
61
  __all__ = [
@@ -78,7 +77,6 @@ __all__ = [
78
77
  "FinalOutput",
79
78
  "ForbiddenError",
80
79
  "FormDataContentDisposition",
81
- "GenerateSpeechRequestModelVersion",
82
80
  "GenerateSpeechResponse",
83
81
  "GroupApiProjectResponse",
84
82
  "InternalServerError",
@@ -23,7 +23,7 @@ class BaseClientWrapper:
23
23
  headers: typing.Dict[str, str] = {
24
24
  "X-Fern-Language": "Python",
25
25
  "X-Fern-SDK-Name": "murf",
26
- "X-Fern-SDK-Version": "2.0.1",
26
+ "X-Fern-SDK-Version": "2.1.0",
27
27
  }
28
28
  if self._api_key is not None:
29
29
  headers["api-key"] = self._api_key
@@ -2,7 +2,6 @@
2
2
 
3
3
  import typing
4
4
  from ..core.client_wrapper import SyncClientWrapper
5
- from .types.generate_speech_request_model_version import GenerateSpeechRequestModelVersion
6
5
  from ..types.pronunciation_detail import PronunciationDetail
7
6
  from ..core.request_options import RequestOptions
8
7
  from ..types.generate_speech_response import GenerateSpeechResponse
@@ -35,7 +34,7 @@ class TextToSpeechClient:
35
34
  channel_type: typing.Optional[str] = OMIT,
36
35
  encode_as_base_64: typing.Optional[bool] = OMIT,
37
36
  format: typing.Optional[str] = OMIT,
38
- model_version: typing.Optional[GenerateSpeechRequestModelVersion] = OMIT,
37
+ model_version: typing.Optional[typing.Literal["GEN2"]] = OMIT,
39
38
  multi_native_locale: typing.Optional[str] = OMIT,
40
39
  pitch: typing.Optional[int] = OMIT,
41
40
  pronunciation_dictionary: typing.Optional[typing.Dict[str, PronunciationDetail]] = OMIT,
@@ -64,13 +63,13 @@ class TextToSpeechClient:
64
63
  Valid values: STEREO, MONO
65
64
 
66
65
  encode_as_base_64 : typing.Optional[bool]
67
- Set to true to receive audio in response as a Base64 encoded string instead of a url.
66
+ Set to true to receive audio in response as a Base64 encoded string instead of a url. This enables zero retention of audio data on Murf's servers.
68
67
 
69
68
  format : typing.Optional[str]
70
69
  Format of the generated audio file. Valid values: MP3, WAV, FLAC, ALAW, ULAW, PCM, OGG
71
70
 
72
- model_version : typing.Optional[GenerateSpeechRequestModelVersion]
73
- Valid values: GEN1, GEN2. Use GEN2 to generate audio using new and advanced model. Outputs from Gen 2 will sound better, but different from the old model
71
+ model_version : typing.Optional[typing.Literal["GEN2"]]
72
+ Valid values: GEN2. Audio will be generated using the new and advanced GEN2 model. Outputs from GEN2 sound more natural and high-quality compared to earlier models.
74
73
 
75
74
  multi_native_locale : typing.Optional[str]
76
75
  Specifies the language for the generated audio, enabling a voice to speak in multiple languages natively. Only available in the Gen2 model.
@@ -485,7 +484,7 @@ class AsyncTextToSpeechClient:
485
484
  channel_type: typing.Optional[str] = OMIT,
486
485
  encode_as_base_64: typing.Optional[bool] = OMIT,
487
486
  format: typing.Optional[str] = OMIT,
488
- model_version: typing.Optional[GenerateSpeechRequestModelVersion] = OMIT,
487
+ model_version: typing.Optional[typing.Literal["GEN2"]] = OMIT,
489
488
  multi_native_locale: typing.Optional[str] = OMIT,
490
489
  pitch: typing.Optional[int] = OMIT,
491
490
  pronunciation_dictionary: typing.Optional[typing.Dict[str, PronunciationDetail]] = OMIT,
@@ -514,13 +513,13 @@ class AsyncTextToSpeechClient:
514
513
  Valid values: STEREO, MONO
515
514
 
516
515
  encode_as_base_64 : typing.Optional[bool]
517
- Set to true to receive audio in response as a Base64 encoded string instead of a url.
516
+ Set to true to receive audio in response as a Base64 encoded string instead of a url. This enables zero retention of audio data on Murf's servers.
518
517
 
519
518
  format : typing.Optional[str]
520
519
  Format of the generated audio file. Valid values: MP3, WAV, FLAC, ALAW, ULAW, PCM, OGG
521
520
 
522
- model_version : typing.Optional[GenerateSpeechRequestModelVersion]
523
- Valid values: GEN1, GEN2. Use GEN2 to generate audio using new and advanced model. Outputs from Gen 2 will sound better, but different from the old model
521
+ model_version : typing.Optional[typing.Literal["GEN2"]]
522
+ Valid values: GEN2. Audio will be generated using the new and advanced GEN2 model. Outputs from GEN2 sound more natural and high-quality compared to earlier models.
524
523
 
525
524
  multi_native_locale : typing.Optional[str]
526
525
  Specifies the language for the generated audio, enabling a voice to speak in multiple languages natively. Only available in the Gen2 model.
@@ -3,8 +3,8 @@
3
3
  from ..core.unchecked_base_model import UncheckedBaseModel
4
4
  import typing_extensions
5
5
  from ..core.serialization import FieldMetadata
6
- import pydantic
7
6
  import typing
7
+ import pydantic
8
8
  from .word_duration_response import WordDurationResponse
9
9
  from ..core.pydantic_utilities import IS_PYDANTIC_V2
10
10
 
@@ -12,9 +12,9 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2
12
12
  class GenerateSpeechResponse(UncheckedBaseModel):
13
13
  audio_file: typing_extensions.Annotated[str, FieldMetadata(alias="audioFile")]
14
14
  audio_length_in_seconds: typing_extensions.Annotated[float, FieldMetadata(alias="audioLengthInSeconds")]
15
- consumed_character_count: typing_extensions.Annotated[int, FieldMetadata(alias="consumedCharacterCount")] = (
16
- pydantic.Field()
17
- )
15
+ consumed_character_count: typing_extensions.Annotated[
16
+ typing.Optional[int], FieldMetadata(alias="consumedCharacterCount")
17
+ ] = pydantic.Field(default=None)
18
18
  """
19
19
  Number of characters consumed so far in the current billing cycle.
20
20
  """
@@ -0,0 +1,2 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
@@ -1,5 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- from .types import GenerateSpeechRequestModelVersion
4
-
5
- __all__ = ["GenerateSpeechRequestModelVersion"]
@@ -1,5 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- from .generate_speech_request_model_version import GenerateSpeechRequestModelVersion
4
-
5
- __all__ = ["GenerateSpeechRequestModelVersion"]
@@ -1,5 +0,0 @@
1
- # This file was auto-generated by Fern from our API Definition.
2
-
3
- import typing
4
-
5
- GenerateSpeechRequestModelVersion = typing.Union[typing.Literal["GEN1", "GEN2"], typing.Any]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes